Klasyczna klawiatura Thinkpada X220 w Thinkpadzie X230

Thinkpad X230

Jakiś czas temu po wymianie swojego prywatnego laptopa Thinkpad X270 na Thinkpada P52, brakowało mi jakiegoś małego lekkiego laptopa do używania na kanapie i w formie przenośnej. Tak trafiłem na X230T, a chwilę później na X230 w standardowej wersji bez dotykowego ekranu. I to właśnie na X230 postanowiłem zrobić modyfikacje z zastosowaniem klasycznej thinkpadowskiej 7 rzędowej klawiatury. Przebieg poniżej

Czytaj dalej „Klasyczna klawiatura Thinkpada X220 w Thinkpadzie X230”

Value Object czym jest i dlaczego powinieneś się nim zainteresować

Geneza Value Objectu

VO (Value Object) swoją popularność zdobyły przy okazji Domain Driven Design gdzie definiują standard obiektów z których składa się logika biznesowa. Pozwalają na prostą walidację wszystkich wartości wchodzących do naszego systemu, dzięki czemu ułatwia rozwijanie aplikacji przy zmieniających się wymagań, oraz zabezpiecza bazę danych przed niechcianymi wartościami.

Czytaj dalej „Value Object czym jest i dlaczego powinieneś się nim zainteresować”

PHPers Summit 2018, czyżby najlepsza konferencja roku?

Pewnie już wszyscy wrócili z PHPers Summit 2018 z dodatkową ilością motywacji i nowych spojrzeń na programowanie w PHP, zanim jednak usiądziecie i zaczniecie przepisywać cały system na nowo, przypomnijmy sobie jak wyglądała cała sobota. Czytaj dalej „PHPers Summit 2018, czyżby najlepsza konferencja roku?”

Poznaj swoje IDE – PHPStorm #2: Integracja Gita

Wstęp

PHPStorm, jako zintegrowane środowisko programistyczne, posiada sporo wbudowanych narzędzi, o których często nie słyszały nawet osoby o sporym doświadczeniu. Wśród nich jest wbudowany klient REST, czy integracja z systemem kontroli, o której będzie ten wpis. Skupię się na opisaniu integracji z Gitem, ponieważ najwięcej osób z niego korzysta. Oprócz Gita, PHPStorm obsługuje SVN, Mercurial, CVS, SVN oraz Perforce.

Czytaj dalej „Poznaj swoje IDE – PHPStorm #2: Integracja Gita”

Dlaczego Twoja firma potrzebuje architekta i Ty o tym nie wiesz

Architecture

Czy w twoim zespole istnieje osoba na stanowisku Software Architect? Być może architekturą zajmuje się developer z największym doświadczeniem? Czy większość decyzji podejmowana jest w losowym gronie developerów gdzie każdy zgłasza swój pomysł i wspólnie podejmuje się decyzje? A może masz do czynienia ze zjawiskiem Hype Driven Development, w którym koncept zmienia się co wypad na konferencję? A co, jeśli aplikacja, która miała być łatwa w utrzymaniu znowu zaczyna przypominać monolit? Przy odrobinie szczęścia przychodzi czas, kiedy ktoś odważny stwierdza, że czas zakopać tę „kupę”  Legacy Code i napisać wszystko od nowa…

Czytaj dalej „Dlaczego Twoja firma potrzebuje architekta i Ty o tym nie wiesz”

Poznaj swoje IDE – PHPStorm #1: Rest Client

Poznaj swoje IDE – PHPStorm #1: Rest Client

Chciałbym zapoczątkować cykl krótszych wpisów opisujących pewne funkcje IDE o których nie wszyscy wiedzą, a przydają się w codziennej pracy programisty. W większości będą opierały się o PHPStorm, ponieważ w nim spędzam większość swojego dnia. Nie przedłużając, przejdźmy do konkretów. Czytaj dalej „Poznaj swoje IDE – PHPStorm #1: Rest Client”

Allegro Tech Days Poznań – Hackathon 24h

Jako prawdziwy programista z krwi i kości w końcu uczestniczyłem w swoim pierwszym hackathonie. Organizowany był przez firmę Allegro i na celu miał wykonanie aplikacji MVP pomagających rowerzystom w codziennych problemach.

Nigdy wcześniej nie miałem okazji uczestnictwa w takiej „imprezie” gdzie głównym celem jest programowanie. Jednak w tym momencie wiem, że przeżycie było warte zarwania nocki i wykorzystania całego weekendu na ślęczenie nad kodem.

Organizacja imprezy przebiegła bardzo sprawnie, nie zaobserwowałem większych opóźnień w programie co przy takiej ilości osób często występuje na różnych eventach.

Przez organizatorów tydzień wcześniej zapewnione mieliśmy przykładowe zadania i problemy do rozwiązania wraz z paczką danych z aplikacji kręć kilometry w formacie GeoJSON.

W raz z kolegami z pracy wybraliśmy zadanie polegające na zidentyfikowaniu przejazdu rowerem i odrzuceniu tych które były pokonane przez np samochód bądź skuter. Do rozwiązania problemu wykorzystaliśmy ostatnio popularny temat Machine Learning.

Mówiąc szczerze niecałe 24h na developing aplikacji to nie jest długo, szczególnie w max 4 osobowym zespole. Dodatkowo technologia w której na codzień nie programowaliśmy oraz temat nie do końca zgłębiony przed hackathonem dał się we znaki. Jednak pomimo tych małych problemów udało nam się ukończyć aplikację, zaprezentować ją publiczności zyskać poklaski i tyle.

Wszystko działało w aplikacji, mieliśmy frontend, backend udało się nawet uczyć model, nie zawsze sukcesywnie. Niestety mieliśmy bardzo mało próbek danych dla nie rowerów przez co ciężko było wyuczyć model charakterystyk innych pojazdów, co objawiło się później dość niską skutecznością rozpoznawania rowerzystów która wynosiła ok 50-60%. Co według mnie jak na dostępne dane i ilość czasu było wielkim sukcesem.

Ogólne wrażenia z hackathonu mam bardzo pozytywne, wiem już na czym to polega i, że nie wygląda jak na filmach gdzie wszyscy imprezują i programują. A bardziej wygląda, że… Tylko programują. 😀  Wielki plus za organizację allegro i udostępnienie mentorów którzy dostępni byli 24h i mogliśmy poprosić o dodatkowe próbki wykonane samochodem. Co prawda obyło się bez afterparty, ale wydaje mi się, że nikt by nie miał na to sił. Jeśli będzie jakiś nowy hackathon z ciekawym tematem to jak będę miał siły pewnie znowu wezmę udział, przeżycie jest ciekawe, i można się czegoś nauczyć w 24h.

Laravel Valet – dlaczego porzuciłem Vagranta na rzecz Valet

Od jakiegoś czasu programuję większości w Laravelu, od czasu do czasu usiądę do jakiegoś WordPressa po pracy, jednak przeważnie cały czas Laravel, czy to w pracy czy prywatnie. Środowisk developerskich na rynku mamy od groma, zaczynając od MAMPa, dockera czy Vagranta. Z tego ostatniego sporo korzystałem, lubiłem jego „łatwość” w konfigurowaniu oraz to, że mogłem rozdzielać sobie różne projekty na różne maszyny. Żyć nie umierać…

Czytaj dalej „Laravel Valet – dlaczego porzuciłem Vagranta na rzecz Valet”