Jak wygląda rynek pracy w naszej branży – wiemy wszyscy. “Kandydat nasz pan”. Firmy często prześcigają się w “dogadzaniu” złowionym już programistom, kusząc różnymi dogodnościami kolejną zwierzynę. Widać to po wielu ogłoszeniach i komunikacji wychodzącej od rekruterów. A to piłkarzyki w biurze, a to konsole, a to zjeżdżalnia (sic!), a to jeszcze nie wiadomo co. Zwykłe [...]
Apache Tomcat – kontener aplikacji webowych, który obecnie jest rozwijany przez fundację Apache. Umożliwia uruchamianie aplikacji internetowych w technologiach Java Servlets oraz Java Server Pages. Hosty wirtualne (virtual hosts) to podstawowa jednostka reprezentująca stronę lub domenę. Odpowiednie utworzenie hostów pozwala na uruchomienie więcej niż jednej aplikacji w ramach tego samego kontenera. Wyobraźmy sobie sytuację, w której mamy […]
Podczas zabaw z Dependency Injection można się trochę zapędzić używając kontenerów, uzależniając od nich cały kod naszej aplikacji. A to źle. Na dobra sprawę logika aplikacji nie powinna nawet wiedzieć z jakiego kontenera korzystamy. Do kontenera nie powinniśmy się przyzwyczajać – jeśli wykorzystujemy go poprawnie, to jego podmiana na inną bibliotekę nie będzie nastręczać żadnych [...]
Tworzy się wszystko po angielsku, a przez to nie ma problemów ze znakami „zażółć gęślą jaźń”. Ja popełniłem ostatnio małą aplikację, gdzie postanowiłem że cały UI będzie po polsku, ponieważ do takich odbiorców kieruje swój projekt. Skoro jedno języczne to będzie to proste. HTML i opisy po polsku, atrybuty i informacje po polsku. Nic nie […]
Do internetów informacje wrzucamy nieustannie, czasem bez zastanowienia. Czasami jednak zastanowić się wypada, coby potem nie żałować… prawda? Dlatego może warto na dzikich imprezach ograniczyć “connectivity”, rutery poodłączać, zagłuszacze komunikacji postawić, żeby potem wstydu nie było. Bo: Trying to remove information from the internet is like fishing piss out of the swimming pool Źródło: internet, [...]
Zerkałem dzisiaj na lewy ekran mojego Nexusa, żeby zobaczyć, czy Google Now wyłapał jakieś ciekawe artykuły z sieci. Zauważyłem tam nową informację: Użyteczne? Jak najbardziej, faktycznie poszukiwałem tego przedmiotu. Tylko, <a href="https://www.michalgellert.pl/blog/google-now-coraz-lepsze-czyli-zegnaj-prywatnosci/" rel="nofollow">[…]</a>
Drogi pamiętniku. Pamiętam gdy mówili: konfiguracja w środowisku, nie wrzucaj sekretów do repozytorium, bądź mądry, nie czyń zła. Nie pamiętam tylko, żeby tłumaczyli jak to zrobić. Ja zrobiłem to tak na początku: I fajnie, myślę sobie, u siebie ustawie wartość na 1 a na produkcji ustawie na 2 i będzie cacy. Tak jak mówili, wszyscy […]
Antypattern zwany „God object” albo także „God class” powstaje w naszym kodzie, gdy obiekt danej klasy zawiera zbyt dużo informacji lub ma zbyt dużo odpowiedzialności. Jest to złamanie jednej z podstawowych zasad programowania obiektowego, która mówi o tym, by klasa posiadała dokładnie jedną odpowiedzialność. Co możemy zrobić, by zapobiec tego typu antypatternom? Otóż konstruowane klasy …
Czas szybko mija. Niedawno składałem CV do paru zachodnich firm, a tu już stuknęło 2,5 roku na emigracji w Hamburgu. ? Czas na małe podsumowanie tego czasu. Krótko o tym dlaczego właśnie emigracja Ciekawość. Pieniądze niby też lepsze (chociaż zdecydowałem się na pracę w małym startupie i zarabiałem zdecydowanie mniej niż w korporacji na podobnym […]
Pierwszy pracujący dzień Nowego Roku. Czyli: pierwszy dzień świadomego bezrobocia. Pierwszy dzień… nowego życia. Miało być słodko i super. Miałem odprowadzić Córkę do przedszkola, a po powrocie wziąć książkę i nie wychodzić z wyra przez kolejne 6 godzin. Wiecie, relaks i regeneracja, tak jak sobie obiecałem. Tymczasem zestresowany siedzę i nie wiem w co ręce [...]
Odpowiedź brzmi – nie. Oczywiście możemy zdefiniować różne bloki catch, ale po to by wyłapać różne rodzaje wyjątków. Jak na przykład tutaj: Mamy możliwość wyłapania wyjątku typu MyException, jak również ogólnego Exception. Jednak w momencie, gdy złapany zostanie MyException wykonywanie kodu przechodzi do bloku finally (jeśli takowy istnieje). W przypadku definiowania kilku rodzajów wyjątków musimy …
Wchodzę dzisiaj na bloga i okazuje się, że ostatni wpis popełniłem ponad 2 miesiące temu. Ależ ten czas leci, w między czasie zdążył przewinąć się licznik oznaczający lata, w związku <a href="https://www.michalgellert.pl/blog/cardboard-i-cale-to-3d/" rel="nofollow">[…]</a>
Tuple to typ generyczny, który możemy określić jako strukturę bądź sekwencję elementów różnych typów. Możemy za jego pomocą przechowywać do 8 elementów. Przykładowo wygląda to tak: Mamy tutaj Tuple z trzema elementami – dwoma typu string i jednym typu int. Jak możemy pobrać wartości tych elementów? Otóż, tutaj ważną rolę odgrywa kolejność, co niestety nie …
Najważniejsza różnica pomiędzy metodami Convert.ToString a ToString polega na tym jak działają, gdy pojawia się null. Weźmy przykładowy kod: Tutaj, gdy wartością zmiennej name będzie null metoda Convert.ToString(null) po prostu zwróci nam null. Z kolei, gdy użyjemy ToString jak poniżej: Wystąpi wyjątek, gdyż metoda ToString() nie radzi sobie w tym przypadku. Generalnie dotyczy to wszystkich …
Wszystkiego dobrego w 2016! Chce ktoś wstępnego pdf-a ebooka, który szykuję? Wystarczy podesłać mi pustego maila (albo maila z życzeniami noworocznymi, jeśli nie lubicie pustych maili ;)) na matt (at) javadevmatt.pl. Można się też dodać na listę mailingową po prawej stronie na tym blogu. Tam gdzie jest “Chcesz dostawać bonusy jako subskrybent? ? “. Osobom, […]