Dlaczego warto uczyć się programować – życiowa decyzja

Jakiś czas temu na Slacku rozmawialiśmy sobie o kursach z programowania. Pojawiło się pytanie, kto co poleca, więc ja podesłałem ten zrobiony przeze mnie. I od słowa do słowa, zgadałem się z Kubą. Okazało się, że korzystał z tego kursu, do zrobienia bardzo ciekawej aplikacji. Chyba w życiu nie wpadł bym na taki pomysł, jak on. Projekt był nie tyle trudny technicznie, co wymagał nie lada odwagi, pomysłowości i.. Sami zobaczcie czego jeszcze 😉

Kuba był programistą już kilka ładnych lat, ale nigdy nie tworzył nic na Androida. Miał w głowie pewien plan, który jednak wymagał chociaż podstawowej znajomości tej technologii. Stąd przeszukiwanie kursów i tą drogą trafił właśnie na ten przygotowany przeze mnie. Jak mówi – spędził niecałą godzinę i stworzył aplikację której potrzebował. Nadszedł wieczór, był akurat umówiony z Dominiką. Tego dnia miała urodziny, więc postanowili po imprezie wybrać na wspólny spacer, na świeżym powietrzu, ciepło, romantycznie planowali, żeby wejść na szczyt Równicy – zresztą, robili to już wielokrotnie, ale widok stamtąd zawsze jest piękny. Kuba wspomniał mimochodem, że dzisiaj uczył się trochę programować na Androida, więc Dominika chciała zobaczyć, co takiego udało mu się zrobić. Włączyła aplikację, pojawiło się jej imię i przycisk. Po kliknięciu, wyraz po wyrazie, wyświetliło się pytanie. Kuba w tym momencie wyciągnął pierścionek i uklęknął. I w ten sposób się zaręczyli 😉

Fajna, bardzo fajna historia – tworząc ten kurs nigdy w życiu bym się nie spodziewał, że ktoś wykorzysta przekazywaną przeze mnie wiedzę, aby się… zaręczyć 😉 Tym bardziej miło mi, kiedy ją przeczytałem. Zwłaszcza, że nie wpadł bym na to, żeby klepanie kodu wykorzystać w tak romantyczny sposób. Kolejny punkt za tym, aby uczyć się programować.

Tym radosnym akcentem chciałem życzyć wszystkim wesołych, spokojnych i rodzinnych świąt bożonarodzeniowych, oraz szampańskiego sylwestra 😉 Teraz jest idealny czas, aby wyłączyć telewizor, komputer i spędzić kilka miłych chwil w gronie najbliższych. I cóż, do przeczytania w przyszłym roku!

dlaczego warto uczyć się programować

Pozdrawiam!

Month review #11_2016 – pierwszy z serii

Początek grudnia, a za mną najdłuższy od kilku miesięcy okres posuchy na blogu. Napisałem w ostatnim week review, że celem tych regularnych, cotygodniowych wpisów było to, żeby na blogu pojawiał się chociaż jeden nowy na 7 dni. Uznałem, że bez problemu będę dalej realizował ten cel, skoro i tak pojawiały się 2, lub 3 tygodniowo. Niestety „życie bezlitośnie zweryfikowało” i absolutnie odebrało mi czas/chęci na tworzenie czegokolwiek nowego. Z rozmów z chłopakami na devspl-slacku wychodzi, że nie tylko mi listopad odebrał moce, ale im również. Chociaż jak od każdej reguły od tej również są wyjątki: Gutek, oraz Maciek. Przyznaję, że opcja pisania codziennie jest bardzo kusząca. Chociaż pewnie musiałbym przygotować się mentalnie, zaplanować tematy, itd.. Czyli pomysł póki co trafia do skrzynki oznaczonej jako „kiedyś, na pewno” 😉 A wracając do tematu serii, czyli przeglądu miesiąca, oto co ciekawego udało mi się zanotować w trakcie jego trwania.

Któregoś dnia wrzuciłem na devspl-slacka kod (z jakiegoś programistycznego zadania) do review, dostałem kilka odpowiedzi, w tym po kilku dniach prywatną z całkiem głęboką analizą. Zerknąłem na zdjęcie osoby ukrytej pod nickiem ags. Twarz jak by znajoma. Dopiero po chwili dociera do mnie, że review mojego kodu zrobił świeżo upieczony, drugi w Polsce java champion, Andrzej Grzesik. Także po pierwsze gratulacje dla niego, tytuł zgodnie z wymogami na java championa bardzo do niego pasuje jak widać, a po drugie – czasem się zapomina, że w czasach łącz everywhere jesteśmy naprawdę globalną wioską. Nigdy nie wiesz czy osoba z którą się komunikujesz nie jest np java championem 😉

Dodatkowo zostałem poproszony o poprowadzenie dodatkowej porcji zajęć w ramach projektu WowSchool. Zajęcia dotyczą Kodu i są skierowane do dzieciaków młodszych niż 12 lat. Ale czym jest Kodu? Jest to prosty system umożliwiający tworzenie gier, w największym skrócie tworzymy planszę, umieszczamy na niej obiekty (np rower, kamień, tytułowego robota Kodu) i je oprogramowujemy korzystając z prostych bloczków. Uruchamiamy i voila, może cieszyć się grą. Tutaj znajduje się dużo więcej informacji, przykładowe kody źródłowe, oraz aplikacja do pobrania. Z kolei YouTube pełen jest filmów jak można wykorzystać potencjał Kodu. Dodam tylko, że autorem systemu jest Microsoft.

Któregoś dnia udało mi się również znaleźć ciekawą stronę z przykładami machine learning. Dzieciakom oczywiście od razu pokazałem Quick Draw z wytłumaczeniem jak działa i dlaczego każdego dnia jest coraz lepszy. Nie miałem jeszcze czasu zajrzeć do kodów źródłowych, ale z pewnością to zrobię 😉

To by było na tyle jeśli chodzi o ten miesiąc. Pisząc posta przeglądam Toggl pod względem odpowiednich projektów, ale tam jest naprawdę mało czasu zalogowane na wykonywanie ich. O tak np mam nagrany nowy odcinek programistyHumanisty, ale nie został jeszcze zmontowany. Podobnie mam rozpoczęte kilka postów, ale nie dokończone. Mam za to sporo rzeczy, których nie zaplanowałem w tym mcu, a wydarzyły się, takich jak np różnego rodzaju usterki w domu. O tak, to mi zajęło lwią część tego miesiąca, ale cóż, niestety, zdarza się 😉 Człowiek nie ma wpływu na to kiedy np zmywarka w domu postanowi się zepsuć, albo rura w ścianie stwierdzi, że pora się rozszczelnić – a tak właśnie było. Dobra, ale nie usprawiedliwiam się, tylko obiecuję poprawę i wkrótce nowe treści na blogu. A przynajmniej takie mam plany 😉 Stay tuned!

Pozdrawiam!

 

Week review #23 – ostatni z serii

Minął bardzo krótki tydzień numer 44. Bardzo fajnie tak iść w poniedziałek do pracy – a tu środa 😉 Udało mi się stworzyć kilka nowych materiałów, wreszcie opublikować nowego pH i zebrałem trochę feedbacku – następny odcinek będzie jeszcze lepszy 😉 Po za tym finalnie zdecydowałem się zakończyć cotygodniową serię.. Ale po kolei.

W tym tygodniu pojawił się wpis o feedbacku. Pierwszy raz też odważyłem się wrzucić go na wykop 😉 A właściwe, wrzucił go Mirek na moją prośbę, bo chyba nie do końca wiem jak działa wykop i gdzie tam dodaje się treści 😉 Spodziewałem się hejtu, bądź co bądź wrzucanie posta o pozytywnym feedbacku na wykop, to pomysł interesujący sam z siebie. Nie mniej, nie dostałem komentarzy, muszę bardziej się postarać 🙂

Po za tym pojawił się nowy programistaHumanista, długo nad nim pracowałem, między innymi nad nowym intro, dobrym montażem, itd.. Zebrałem trochę opinii i następny odcinek będzie jeszcze lepszy 😉 Spróbuję też wyrobić sobie jakąś stałą formułę, np jeden odcinek na tydzień, ale co z tego wyjdzie zobaczymy. Sumarycznie przygotowanie zajęło mi (razem z intro) blisko.. 14 godzin 😉 Trochę dużo, ale spróbuję to wszystko zoptymalizować. Zobaczymy jak to wyjdzie 😉 Noo i kanał ma już ponad 100 subskrybentów, wypada podziękować Mirkowi i Mateuszowi, którzy podzielili się na facebooku.

Po 5 miesiącach (pierwszy week review pojawił się 04.06) postanowiłem zakończyć tą serię. Z kilku powodów. Jeden z nich jest taki, że w ciągu tygodnia i tak pojawia się minimum jeden wpis (a to było moim celem). Po za tym podsumowania miesiąca, które chcę pisać zamiast tej serii będą po prostu ciekawsze 😉 A przynajmniej tak mi się zdaje. Jeśli nie, wrócę to podsumowań co tydzień. Zwłaszcza, że od pierwszego wpisu z tej serii poziom wydaje mi się, że wzrósł.. Tymczasem, spodziewajcie się nowej serii „month review” już na koniec listopada. Umarł król – niech żyje król!

Najważniejszą jednak wiadomością jest to, że mój znajomy bardzo potrzebuje pomocy. Z tego też powodu proszę – kto może – o wsparcie dla niego. Szczegóły znajdują się tutaj.

To tyle jeśli chodzi o ten krótki tydzień, nadchodzący aż tak krótki nie będzie, ale zawsze to cztery dni zamiast pięciu. Do wkrótce 😉 Stay tuned!

Pozdrawiam!

Mój znajomy potrzebuje pomocy..

Bez owijania w bawełnę, mam znajomego, nazywa się Krzysztof Nowak. Znamy się już sporo lat i to na tyle dobrze, że jestem chrzestnym jego córki, Nadii. Ostatnio okazało się, że ma raka mózgu, najbardziej złośliwego z możliwych, glejaka wielopostaciowego IV stopnia. Jego rodzina organizuje pieniądze na terapię, jeśli możesz, wpłać proszę. Wszyscy będziemy bardzo wdzięczni. Szczegóły znajdują się poniżej.

Krzychu odszedł od nas 15 maj 2017 r.

Powiedz mi wreszcie o co Ci chodzi – feedback u programisty, analiza przypadku

Feedback, czyli mówiąc najprościej informacja zwrotna. Coś robimy, mówimy, organizujemy, wygłaszamy i ktoś to ocenia. Na tej podstawie następna wersja, następne zachowanie jest lepsze, ponieważ poparte jakąś oceną z zewnątrz. Proste, prawda? Żeby to było takie proste 🙂

Swego czasu brałem udział w wydarzeniu Devoxx4kids, jako organizator i prelegent. Opowiadałem tam o AppInventorze, czyli sposobie na budowę aplikacje mobilnych z klocków, bardzo podobnych do tych w scratchu. Miałem akurat zajęcia dla dziesięciolatków i wiecie co jeden z nich powiedział mi na koniec? „Poprzednie zajęcia były ciekawsze”. Proste, prawda? W żadnym razie nie mogę uznać tego za hejt, bo chłopak nie chciał powiedzieć mi niczego złego, po prostu, powiedział to co myśli. Dało mi to trochę do myślenia i chyba faktycznie, w wieku 10 lat AppInventor może być trochę za trudny, zwłaszcza, że zdążyłem zrobić tylko podstawowe elementy 😉 Ale nie wnioski z opinii są tutaj ważne, tylko sama opinia. Czysta, bez zbędnego kolorowania. Mówi się, że dzieci są najbardziej szczere, mówią co widzą i co czują, ale w którym momencie ta umiejętność z nas ulatuje? Dawania czystego feedbacku, bez swoich emocji, po prostu informacja o tym jak jest? Zwłaszcza, że emocje mogą być różne, w związku z tym ocena naszego działania również może mieć różny wydźwięk.

Pochwały, czyli nasze ulubione. Ktoś mówi, że robimy coś dobrze, to i nam jest lepiej. Najważniejsze to nie zapomnieć, że należy się rozwijać, a nie rozleniwiać, pod wpływem tej całej słodyczy 😉

Zdarza się feedback absolutnie przeładowany złymi emocjami. Czasem nie da się nawet nic sensownego z niego wyciągnąć, można go nazwać po prostu hejtem. Jeśli jest to hejt pod naszymi wpisami, to najlepszym sposobem jest usunięcie go. Bez tracenia czasu na wciąganie się w emocjonalne dyskusje. Zwłaszcza, jeśli przyłączają się do tego nasi inni czytelnicy, to tracimy również ich czas. Gorzej, jeśli nie mamy możliwości usunięcia go, wtedy jeśli już zdecydujemy wdawać się w polemikę, zamiast po prostu ignorować, należy pamiętać, że nie trzeba niczego udowadniać. To hejter ma problem, nie Ty. Nie należy też dać się ponieść emocjom. Przychodzą mi w tym momencie do głowy dwa cytaty: „Hejt to VAT od sukcesu” Marii Peszek, oraz „Rób wszystko najlepiej jak potrafisz, a potem rozłóż parasol i pozwól się opluwać.” – autor podobno nieznany. Poznałem też kilka osób, które bardzo dużo hejtują w sieci, a na żywo – zupełnie inni ludzie. Jak mawia klasyk: „Dobry mąż, ojciec i sąsiad, kto by się spodziewał, że w domu takie rzeczy”.

ktos-nie-ma-racji-gif

source: https://xkcd.com/386/

Najlepszy jednak jest feedback inteligentny. W moim wyobrażeniu staramy się na początku napisać coś dobrego, potem dodajemy łącznik „i” (nie „ale”, bo on nastawia nas tak, jakby wszystko przed było kłamstwem), a potem informujemy co mogło by być lepiej. Jestem sobie w stanie też wyobrazić specyficzną sytuację, kiedy nie jesteśmy w stanie nic dobrego napisać. Wtedy najlepiej zacząć prosto z mostu, np: „Nie zgadzam się absolutnie z tym co napisałeś, ponieważ .. moje doświadczenia, doświadczenia znajomych są zupełnie odwrotne .. to wyrażenie działa zupełnie inaczej niż opisujesz ..” – tego typu zwroty. W ten sposób nie atakujemy osoby, tylko informujemy, że nasze poglądy są inne. Czasem w naszej ocenie wszystko jest ok, warto też o tym napisać, ale najlepsze komentarze to te mówiące o tym, co można zrobić lepiej.

Napisałem o tym jaki feedback może do nas trafić, więc nie łatwo się domyślić, że takie same zasady panują przy dawaniu go. Skupiamy się na pracy, nie autorze, staramy się opisać co jest ok i to co nie do końca nam się podoba. Nie ubierajmy informacji w emocje, po co? Autor ma swoje zdanie, my mamy swoje. Nie wszyscy noszą ten sam rozmiar, prawda? 😉 Zwłaszcza, że pomimo szczerych chęci, błąd może być po naszej stronie. Podobnie sytuacja ma się wśród współpracowników: tester, który kpi z programisty podczas zgłaszania błędu raczej nie przyczyni się do owocnej współpracy. Podobnie programista, który obraża się za zgłoszenie błędu.

A co robić z feedbackiem? Pewne jest jedno, należy go rozważyć. Osoba która go pisze wcale nie musi być mądrzejsza w danym temacie od nas, ale.. może. Systemy komentarzy to aktualnie małe portale społecznościowe, zawsze można odpowiedzieć, dopytać, podziękować za radę. Podobnie sytuacja ma się w pracy, dopytać naprawdę nie boli, a poprawka w miejscu innym niż ktoś miał na myśli, bo nie dopytaliśmy, to strata konkretnych pieniędzy.

Ale wracając do pytania zadanego wcześniej, co się stało, że nie umiemy dawać feedbacku jak dzieci? W którym momencie ta umiejętność przekazania tego co myślimy wprost bez zbędnych emocji z nas ulatuje? Innymi słowy które – „nie wolno tak mówić” w końcu zaczyna działać? 😉 Po jakimś czasie dojrzewamy, stajemy się wyczuleni na krytykę (dojrzewanie, akceptacja przez środowisko, te sprawy), wolimy nie mówić co myślimy. Noo i IT to przecież w większości introwertycy, osoby które wolą pracować samotnie, z maszynami, zamiast z ludźmi. Wiem, że ostatnim zdaniem sporo uprościłem, ale chodzi mi o pokazanie tego, że sytuacja jest ciężka. Na szczęście, można to ćwiczyć. Umiejętność dawanie feedbacku to umiejętność, jak każda inna. Słyszałem o praktykach, że jeśli coś ci się podoba w pracy programisty, to idź, zanieś mu słodkiego cukierka, jeśli nie, to kwaśnego.. Litości, nie traktujmy siebie jak?.. Małpki? Gorzej? Które nie potrafią znieść krytyki, czy pochwały wprost 😉 Uczmy się rozmawiać, albo chociaż opisywać o co nam chodzi.. Trochę praktyki? Przeczytaj coś, oceń co o tym myślisz, zapisz sobie tą ocenę, zanalizuj pod kątem, czy nie krzywdzi nikogo i opublikuj 😉 Przeczytałeś następny materiał, zrób to samo. Proste, prawda? Z programistami w firmie też da się w ten sposób, gwarantuję 😉 W firmach zdarzają się takie rzeczy jak „code review”, czyli ludzie się spotykają i nawzajem oceniają swoją pracę, konkretnie swój kod. Warto być tutaj otwartym, żeby nie doprowadzić do sytuacji: „on mi pokazał w tamtym tygodniu, to ja mu teraz wytknę – nazwy zmiennych”.

A kiedy warto zostawić po sobie opinie? Cóż, częściej lepiej niż rzadziej 😉 Naturalnym odruchem jest wyrzucenie swojego żalu wtedy kiedy nie zgadzamy się z artykułem, ale jeśli się zgadzamy, również warto to zaznaczyć. Nie twierdzę, że każdy napotkany artykuł w internecie nie przetrwa bez wyrażenia przez nas opinii 😉 Ale warto zwłaszcza wtedy, kiedy uznajemy go za naprawdę wartościowy 😉

Informacja zwrotna niesie ze sobą naprawdę wielką siłę, mnie do napisania tego artykułu i przyjrzeniu się zjawisku zainspirowały komentarze pod postem o tym jak dzisiaj szukał bym pierwszej pracy, nie tylko te tutaj, ale również na facebooku. Bardzo mnie ucieszyło, że jestem w stanie pomóc chociaż kilku osobom. Mam też w głowie kilka pomysłów na artykuły o podobnej tematyce, pewnie nigdy bym się nimi nie zajął, gdyby nie komentarze 😉 Reasumując, umiejętność przekazania swojej oceny jest naprawdę ważna i dobrze ją ćwiczyć, bądź co bądź lepiej usłyszeć wprost o tym co się komuś nie podoba, jak dostać kwaśnego cukierka 😉

Pozdrawiam!

programistaHumanista#3 – prawa robotyki, moralność robotów

Wyobraźcie sobie przyszłość, do waszego pięknego, inteligentnego domu sztuczna inteligencja postanawia zaprosić wszystkich bezdomnych z okolicy. Niemożliwe? 😉 Zapraszam na odcinek:

credits:

muzyka: Quiet Music for Tiny Robots – You Wont Believe What Happens Next

film: „Ja, robot”: http://www.imdb.com/title/tt0343818/?ref_=fn_al_tt_2

film: „Terminator 1”: http://www.imdb.com/title/tt0088247/?ref_=nv_sr_3

test moralności: http://moralmachine.mit.edu/

I jak się podobało? 😉

Pozdrawiam!

Week review #22 – czasem nie da się skończyć

Skończył się naprawdę naprawdę pracowity tydzień, jednakże akurat teraz efektów tej pracy niestety nie widać. Czasem tak bywa, kilka projektów rozpoczętych, zrealizowanych w 60-80% ale jeszcze nie dopracowanych na tyle, żeby można było się nimi pochwalić 🙂 Innymi słowy efekt tego tygodnia to trzy posty jako wersje robocze i podobnie nowy odcinek pH na warsztacie. W związku z czym mogę zapewnić, że nadchodzący tydzień (zwłaszcza, że dwa dni wolnego przede mną) przyniesie wiele nowych treści. Zajmę się też uporządkowaniem tych comming-soon’ów na stronie 😉 A wracając do tego tygodnia..

Sporo czasu spędziłem nad nowym odcinkiem pH, długo trwało zwłaszcza zrobienie intro (pierwszy raz robiłem takie coś). Ale po skończeniu pracy nad nim wydaje mi się, że wyszło w porządku 🙂 Jak wam się podoba?

Dodatkowo blog się trochę zmienił, może jest to kosmetyczna zmiana, ale teraz dzielenie się treściami będzie łatwiejsze. Dodatkowo ten nowy fab (floating action button) świetnie pasuje do stylistyki bloga, polecam nań klikać i patrzeć jak działa 😉 Czyli jak łatwo podzielić się treścią z innymi 🙂

Na początku zeszłego miesiąca (września) przeprowadziłem się, tydzień zajęło mi uporządkowanie nowego miejsca, poprzestawianie mebli, rozstawienie się, etc.. Ale po tym tygodniu zostało jeszcze kilka drobnych prac, które trafiły na listę i czekały tam.. Blisko 2 miesiące na zrealizowanie 🙂 Czasem tak jest z niektórymi zadaniami, że kiedy trafią na listę to-do, bardzo im trudno się stamtąd wydostać, bo mają niski priorytet. Całkiem ciekawe zagadnienie, jak to jest, że z jednej strony ciągnie nas, żeby zamknąć jakiś projekt, móc go odwiesić na listę zrealizowane, a z drugiej odkładamy cały czas te zadania na później. Nie mniej bez filozofowania, to również zajęło mi trochę czasu w tym tygodniu, ale skończyłem ostatnie prace związane z wprowadzeniem się, jakieś drobne naprawy, dokręcenie uchwytów w szafkach, takie rzeczy. Po dwóch miesiącach fajnie zarchiwizować taki projekt 😉

Po za tym cały czas szukamy osób chętnych do działań przy d4k (pod linkiem opis poprzedniej edycji, ale założenia się nie zmieniły, w tym roku chcemy po prostu lepiej, mocniej, więcej 😉 Masz ochotę zrobić coś dobrego i jesteś z Wrocławia? Napisz na devoxx4kidspl.wroclaw@gmail.com, na pewno się przydasz 🙂 Pracy mamy mnóstwo.

To by było na tyle, jeśli chodzi o ten tydzień. Rozważam zmianę tej formy na month-review 😉 Ponieważ co jakiś czas zdarza się tydzień taki jak ten, kiedy pracy było sporo, a efektów nie widać 🙂 Ale muszę to na spokojnie przemyśleć, pisanie minimum jednego tekstu w tygodniu to bardzo dobry trening. Pozwala spojrzeć na to co się rzeczywiście robiło, a nie tylko zbieranie statystyk dla statystyk 😉 Zanalizować i wyciągnąć wnioski. Cóż, nie wiem jeszcze co zrobię 🙂 Na pewno nadchodzący tydzień będzie ciekawy 😉 Stay tuned!

Pozdrawiam!