Daj się poznać – podsumowanie

Blog konkursowy (łącznie 24 wpisy w kategorii “Daj się poznać!”)

summary
W ciągu ostatnich 3 miesięcy udało mi się napisać 24 posty konkursowe. Posty przygotowywałem w dwóch językach – polskim oraz angielskim. Wpisy w języku angielskim dotyczyły postępu w pracy nad projektem, natomiast te w języku polskim moich przemyśleń i doświadczeń związanych z samodzielną nauką programowania. Wpisy w języku polskim pojawiały się w niedzielę, a wpisy w języku angielskim – w środy.
activityDo promowania wpisów konkursowych starałem się wykorzystać portal wykop.pl. Podczas trwania konkursu, Java Dev Matt na swoim blogu (http://www.javadevmatt.pl/) opublikował post o osobach zmieniających branżę, gdzie również postanowiłem zgłosić krótką notatkę i zaprosić czytelników do odwiedzenia mojego bloga.

refereers

W marcu oraz w kwietniu wszystkie wpisy konkursowe udostępniałem na portalu wykop.pl. W maju postanowiłem ograniczyć promowanie bloga, aby móc ocenić jak promocja w poprzednich miesiącach wpłynie na odwiedziny strony.

views months

views weekly

Miesiącem w którym blog uzyskał najwięcej odwiedzin był kwiecień. Myślę, że udało się to osiągnąć dzięki materiałowi Java Dev Matta o zmianie branży. W tygodniu, w którym ukazał się ten wpis, liczba odsłon bloga wyraźnie zwiększyła się i zdecydowanie wyróżnia się na tle całego okresu konkursowego.

most popular day
Ze względu na promowanie niedzielnych wpisów w języku polskim, blog najczęściej odwiedzany był w poniedziałki. W pozostałe dni ruch był dużo niższy, ale nie wygasał całkowicie.

visitorsapril

Statystyczny czytelnik mojego bloga odwiedził stronę około 3 krotnie! Jest to dla mnie bardzo duże wyróżnienie, ponieważ oznacza to, że użytkownicy po przeczytaniu jednego posta wracali przeczytać kolejne posty w innym terminie.

Projekt konkursowy

Jako temat projektu konkursowego wybrałem napisanie aplikacji wspomagającej oglądanie streamów z meczów piłkarskich na platformę android. Projekt składał się z dwóch części – strony internetowej (web serivce) i aplikacji mobilnej.

landingpage.png

Do wykonania obu części projektu zdecydowałem się wybrać technologie skoncentrowane wokół języka Java. Strona internetowa została zrealizowana z wykorzystaniem frameworków Spring i Hibernate. Za część wizualną odpowiada HTML, CSS oraz Bootstrap. W celu przechowywania informacji o użytkownikach oraz ich ustawień wybrałem bazę danych PostgreSQL. Do budowy restowego Web Service-u wykorzystałem framwork Jersey. Narzędziem do budowania projektu był maven.

dashboard1

Oprócz Javy, do restowej komunikacji z zewnętrzną bazą statystyk piłkarskich, wykorzystałem język Groovy. Wykorzystane w projekcie API piłkarskie posiada informację o aktualnych wynikach spotkań, statystykach zespołów oraz tabelach ligowych.

dashboard2

Aplikacja mobilna została zbudowana w całości przy użyciu Android Studio. Narzędziem do budowania projektu był Gradle. Aplikacja mobilna obecnie pozwala na oglądanie streamów, sprawdzanie dzisiejszego harmonogramu rozgrywek, oraz przeglądanie historii aktywności użytkownika.

pv.png

Postęp prac projektowych oceniam na 80% w przypadku webservice-u oraz 60% dla aplikacji mobilnej. Głównym brakiem aplikacji mobilnej jest połączenie “na sztywno” i brak autoryzacji (w planach wykorzystanie tokenów OAuth). Pozostało jeszcze trochę pracy do końca projektu, ale ze względu na zakończenie konkursu postanowiłem podzielić się obecnym stanem zaawansowania.

stream

Jeśli jesteś zainteresowany obejrzeniem części webowej w akcji, jest on dostępny pod adresem http://streamplayer.herokuapp.com/
Uwaga: zalecam nie podawać prawdziwego hasła oraz adresu e-mail podczas rejestracji. Jeżeli strona nie ładuje się proszę spróbować ją odświeżyć – strona wykorzystuje darmową chmurę heroku i jeśli przez 30 minut nie było żadnego zapytania, strona przechodzi w stan uśpienia.

Podsumowanie

Chciałbym bardzo podziękować wszystkim, którzy odwiedzili mojego konkursowego bloga. Bardzo dziękuję wszystkim użytkownikom portalu wykop.pl, zarówno za krytykę, jak i za miłe słowa. Było to dla mnie coś na prawdę dużego, bo dzięki temu mogłem pracować nad jakością publikowanych materiałów, chociaż z pewnością nie zawsze mi się to udawało. Podczas trwania konkursu dostałem od was bardzo dużo wiadomości prywatnych z prośbą o porady i wskazówki, albo tak po prostu, żeby pogadać. Bardzo wam wszystkim dziękuję za dużą aktywność, bo to z pewnością dzięki temu w dużej mierze udało mi się jakoś przez te 3 miesiące regularnie blogować, bo miałem dla kogo!

Projekt, mimo iż nie udało mi się go jeszcze dokończyć, uznaję za udany. Na początku marca nie znałem żadnej wykorzystanej w projekcie technologii. Podczas trwania projektu nauczyłem się bardzo bardzo dużo i dzięki konkursowi wiem jak dużo pracy jeszcze przede mną. To była dla mnie wspaniała lekcja i polecam każdemu uczestnictwo w podobnych przedsięwzięciach. Mam nadzieję, że chociaż trochę dałem wam się poznać 🙂

Na koniec podrzucam krótki filmik promujący projekt

Advertisements

So far so good

Hi!

Short update. I made big progress on web service. Code looks really bad for now and it surely needs refactoring. There are still few things left to be implemented (remove and edit stream on the list, edit user details, password reminder, few rest methods for android ui). I would like to have all web-things finished by 20.05.

You can log in and see the web service here:

http://streamplayer.herokuapp.com/

screen_streamplayer.png

It is up and running!

Hello 🙂
As I have promised in my previous entry, I have some big updates today 🙂

First of all, I have managed to run web project in the cloud!  If you want to take a look at the progress, you can find it below 🙂 It is still under development at this moment and not everything works as it is supposed to do when the project is finished, but I’m working on it everyday in order to bring some improvements.

http://streamplayer.herokuapp.com/

WARNING: I am using free heroku account, so if you are having troubles connecting to the website please be patient and refresh page after few minutes! It goes to “sleep mode” if there are no request in period of 30 minutes, so if you are first guest after 30 minutes of inactivity you will proably need to wait few seconds for the website to start.

Feel free to leave feedback in the comments if you have any suggestions how to improve the web service 🙂

Second of all, the android development is going really really well. I have managed to run the test stream on my device! At this moment I’m having troubles with battery consumption by my application, but I think I will leave the rest of android development for the last days of competition and I will focus now on finishing web app. You can find screenshot of main menu layout below:

menu.png

Słowo na do widzenia!

Jeżeli już uda Ci się zmienić pracę i znajdziesz nową, wymarzoną, to chciałbym żebyś pamiętał, że szczęście nie jest dane raz na zawsze. Należy o nie dbać i pielęgnować je każdego dnia.

Czysta karta

To czym się zajmowałeś w poprzedniej pracy nie ma już znaczenia. Czeka na Ciebie czysta karta. Nieważne jak wielkie sukcesy odnosiłeś w poprzedniej pracy, jak szło Ci na uczelni, jak wielkich obowiązków nie miałeś, to już nie ma znaczenia, zapomnij o tym, oto nowy początek.

Ludzie chodzący do kasyna albo obstawiający wyniki wydarzeń sportowych często wpadają w mentalność “odrabiania strat”. Gdybym tylko mógł wrócić do początku! Ja już nawet nie chcę nic wygrać, ja chcę tylko odzyskać to co przegrałem! Nie ważne czy byłeś kierownikiem zmiany czy innym mega wymiataczem, a może napotykałeś na wiele przeciwności. Teraz zaczynasz od zera. Każda gra to zaczynanie od nowa, nie ma odrabiania strat. To kim byłeś w poprzedniej pracy jest już za Tobą, tutaj zaczynasz od zera.

Słowo na do widzenia!

Grałeś kiedyś w totolotka? Czy znasz to uczucie kiedy tego jednego dnia, do momentu losowania, jesteś milionerem? Kiedy myślisz o tym co mógłbyś zrobić gdybyś tylko wygrał główną nagrodę?

A jak to fajnie musi być programistą, mieć wspaniałą pracę, jeździć na konferencje i występować przed wielką publicznością! Fajnie jest czytać o tych wszystkich szczęśliwych, młodych i bogatych ludziach, którzy realizują się w pracy!

…a później jak co poniedziałek czas wstać do pracy, wrócić do rzeczywistości. Bo na koniec dnia to tylko czytanie o uczeniu się, czytanie o podejmowaniu ryzyka, czytanie o odwadze i czytaniu o tej drugiej stronie. Ten jeden raz zrób coś dla siebie. Po prostu to zrób. Nie myśl o nauce, po prostu się ucz. Nie myśl o pisaniu kodu, po prostu to rób. Nie myśl o zmianie pracy.

Po prostu to zrób!

A week with JEE, Java 8 and Maven

Hello!
This week I have been mostly learning some JEE, Maven and finally Java 8.

All this things I have learned this week made me like “wow”. I seem to look at the code of my project from diffrent perspective, it looks to me like it was so simple. I seem to understand software architecture much much better than I used to few weeks ago. As I have been mostly learning lately, all i can share with you today is some important materials about JEE, Java8 and Maven.

  1. Maven: The Complete Reference
    http://books.sonatype.com/mvnref-book/reference/index.html
  2. Java 8 and JEE video tutorials
    https://www.youtube.com/user/koushks/playlists

I think my next entry will be some code-related, as I am planning to get back to coding this weekend! So stay tuned 🙂

Rekordy zostawmy olimpijczykom

Wiesz co jest najgorsze w życiu? Nie, to nie odnieść porażkę. Najgorzej jest odnieść sukces, zasmakować wygranej,  zachłysnąć zwycięskim powietrzem, a później musieć wrócić do bycia nikim.

Zwolnij – rekordy zostawmy olimpijczykom

W zmianie pracy absolutnie nie chodzi o śrubowanie rekordu “kto szybciej się nauczy, ostatni rekord to 3 miesiące, a ten gość zrobił to w 2 miesiące i 3 tygodnie, mamy nowego lidera!”. W zależności od wybranych technologii, w zależności od firmy w pracy czeka na Ciebie wiele wyzwań. Kiedy podejmujesz decyzję, że jesteś gotów, że “to już”, musisz być tego pewien. Musisz być pewien, że sobie poradzisz, bez względu na okoliczności. W przeciwnym razie moim zdaniem może czekać na Ciebie wiele niebezpieczeństw.

Syndrom podrabiańca

Syndrom podrabiańca (ang. Imposter syndrome) przytrafia się również osobom, które są programistami “z wykształcenia”. Ba, przytrafia się nawet gwiazdom estrady, aktorom i wielu osobom publicznym! Warto wspomnieć np. o piłkarzach – wyobrażasz sobie, jak bardzo odpornym psychicznie trzeba być, aby wytrzymywać transfer za grube miliony euro, wytrzymać presję związaną z oczekiwaniami mediów i kibiców? Na koniec dnia piłkarze, tak jak my, są tylko ludźmi. Mają wady i zalety. Strony silne i słabości.

O syndromie oszusta na swoim blogu wspominał również Java Dev Matt, jeśli jesteś zainteresowany i chciałbyś poczytać o tym więcej, zachęcam do lektury: http://www.javadevmatt.pl/impostor-syndrome-u-programisty-i-nie-tylko/

Desperacja

Nie wiem, jaka jest Twoja sytuacja życiowa i dlaczego chcesz zmienić zawód. Chciałbym, żebyś przed podjęciem decyzji wiedział jedno. Jeśli nie potrafisz być szczęśliwym w miejscu w którym jesteś teraz, jeśli nie potrafisz cieszyć się życiem ze wszystkimi jego wadami i zaletami już teraz, to zmiana pracy nie odmieni Twojego losu jak za dotknięciem czarodziejskiej różdżki. Dalej będziesz smutny, dalej będziesz miał problemy, tylko że trochę inne.

Stres

Co jeśli po jakimś czasie się okaże że się nie nadajesz? Może tak na prawdę miałeś tylko farta i gdyby coś poszło nie tak to już nie znalazłbyś kolejnej pracy? Co wtedy?

Zarządzanie kapitałem

Moim zdaniem to jedna z najważniejszych rzeczy w życiu zawodowym. Pozwala zachować komfort psychiczny, nawet wtedy kiedy nie wszystko idzie po naszej myśli. Zarządzanie kapitałem jest rzeczą, której nie uczą w szkole, której nie nauczysz się na uczelni. Kiedy zmieniasz zawód nie polecam stawiać się w sytuacji, w której nie masz żadnych oszczędności. Posiadanie “poduszki finansowej” jest moim zdaniem bardzo istotne, buduje komfort psychiczny, pozwala skupić się na swoich zadaniach, a nie na liczeniu złotówek. Moim zdaniem powinieneś być przygotowany na kilka miesięcy ewentualnego bezrobocia. Będziesz mógł podejmować optymalne decyzje bez panikowania.

Czas wracać do pracy

Warto pamiętać o tym, że nauka programowania wymaga koncentracji. Stres może wpływać bardzo destruktywnie na Twoją zdolność uczenia się. Chciałbym, żebyś dbał o swoje emocje, to z pewnością pozwoli Ci wycisnąć więcej z notatek, z książek czy kursów, nad którymi obecnie pracujesz. Pamiętaj też, że od czytania tego nie zostaniesz programistą, konieczny jest też Twój wkład, Twój wysiłek. Wracaj do pracy.

Przerwa świąteczna :)

Dziś, z okazji świąt wielkanocnych, na blogu nie będzie wpisu w tradycyjnej formie :).

Chciałbym jednak podzielić się z Wami ciekawym materiałem dotyczącym perspektywy drugiej strony podczas rekrutacji – czyli osoby przeprowadzającej rozmowy kwalifikacyjne. Prezentacja miała miejsce podczas spotkania warszawskiej grupy JUG, a jej autorem jest Tomasz Dziurko.