Nauka programowania 2019

Ten rok spędzam na nauce różnych rzeczy.

Najpierw był blockchain, a dokładniej Ethereum. Trochę hello worldów zrobiłem. W ogóle dziwnie - bo wcześniej oglądałem różne teoretyczne wprowadzenia o blockchain i byłem pewny, że wiem mniej więcej, o co tam chodzi. Tutorial do Ethereum też wydawał się łatwy, prosty kodzik, bez problemu.

Okazało się jednak, że o ile koncepcyjnie ogarniam, to zakodować i uruchomić prawdziwy program w blockchain to już nie jest takie proste. Nie umiałem odpalić apki czy zdeployować kontraktu. Chociaż jakoś to potem oczywiście odpaliłem, ale chyba tylko dlatego, że wystarczająco długo próbowałem ;) Ale nic to, myślę, że do tego jeszcze wrócę.

Jednak i tak mimo wszystko oceniam blockchain za coś łatwiejszego od np. machine learning (tam to dopiero masakra. Więcej teorii trzeba zakumać).

Potem zacząłem powracać do Three.js i robić grę (którą dalej robię i zamierzam ją jeszcze długo robić, aż zrobię do końca, czyli pewnie z rok albo i więcej), przy okazji powróciłem do nauki Blendera, nawet dzika zrobiłem:




Poza tym muszę dużo myśleć i kombinować, jak to wszystko zaprojektować, całą grę (nie będzie ona o dzikach, tylko o studentach, ten dzik jest z okazji tego, że właśnie się zaczął chiński Rok Świni i chciałem to jakoś uczcić). Może wreszcie zrobię jakąś porządną dużą grę do końca. Mam wrażenie, że jakoś lepiej mi się pisze tę grę, niż kiedyś. Że moje umiejętności są większe, mimo, że też jeszcze nie idealne, dużo nauki przede mną.

A teraz od kilku dni bawię się hakami(hooks) w React. Bawiłem, bo sama nauka samych haków to chwila, patrzysz w dokumentacji, czytasz przykładowy kod i wiesz, na czym to polega, a reszta przychodzi z doświadczeniem, tzn. po prostu siadasz i sobie dłubiesz. A ja już kilka godzin się już bawiłem tymi hakami, więc już powoli zaczynam być obcykany. Za kilka dni to będę już niczym Captain Hook, taki Haker Majster.

Swoją drogą ludzie z czegoś, co jest łatwe robią jakieś mega zamieszanie, powstają nawet kursy do haków, z łatwej rzeczy robią coś godnego kursu... ale... może to jest potrzebne?
  • wiele osób dopiero zaczyna przygodę z Reactem, a czasem nawet z JS czy z programowaniem ogólnie. Ci ludzie niekoniecznie przeczytają coś, poćwiczą parę godzin i będą wiedzieć. Oni muszą mieć wytłumaczone jak na talerzu wszystko. 
  • nauka haków jest łatwa, ale stosowanie ich niekoniecznie. Ja sam dopiero eksperymentuję i dopiero sam dochodzę do tego, w jaki sposób ich używać, żeby nie zrobić sobie kuku, a żeby kod był utrzymywalny (a widziałem na GH już projekty na hakach, w których komponenty były brzydkie, napakowane tymi hakami i domknięciami bez sensu. Ludzie robią taki sam burdel, co robili w klasach, tyle że na hakach). Być może więc na takich kursach są przemycane "dobre praktyki" (cokolwiek to znaczy). Może sam bym mógł skorzystać z takiego kursu i nauczyć się tych "dobrych praktyk", zamiast eksperymentować w ciemno?
  • no i wreszcie - twórcy kursów chcą zarobić/dokonać promocji/mieć satysfakcję, że stworzyli kurs, z którego ktoś korzysta. Nie oceniam, ba, nawet sam rozważam, czy nie stworzę takiego kursu, dot. haków albo innej rzeczy około-reactowej czy około-programistycznej. Chociaż to za dużo roboty by było, żeby cały kurs zrobić. Może bardziej jakieś artykuły na Medium popiszę, na których będę pisał o tym, jak się powinno robić apki.

Odchodząc od Reacta, a idąc ogólnie w techniki programistyczne - to ostatni czas to również okres, w którym dużo kombinuję i dużo udoskonalam własne techniki. Uczę się tego w jaki sposób komponenty powinny ze sobą współpracować, komunikować się (chociaż z hakami to będzie i tak o wiele prostsze), przekazywać sobie dane, trzymać stan (i znowu: z hakami będzie to prostsze).

Uczę się tworzyć formularze i ogólnie widżety. Może wypuszczę jakąś bibliotekę pomocniczą do Reacta, która będzie pomagała w tworzeniu formularzy właśnie, bo zauważyłem, że istniejące biblioteki są dość niewygodne. BTW może w ogóle nie powinniśmy słowa "form" tłumaczyć na "formularz", a po prostu na "formę" - bo o ile zacząłem z myślą o formularzach, to dochodzę do wniosku, że pisanie formularzy nie różni się wiele od pisania rzeczy, które nie są formularzami, a są innymi "formami", tzn. elementami GUI, widżetami. Brak jakiegoś spójnego zarządzania tym w React).


Komentarze

  1. Na pewno trzeba mieć do tego tzw. "dryg". Nie każdy może nauczyć się programowania i robić to dobrze, z przyjemnością.

    OdpowiedzUsuń
    Odpowiedzi
    1. Ja mam wrażenie, że ludzi najbardziej stopuje w nauce programowania ograniczony umysł (zwykle przez szkołę - ludzie mają taki szkolny schemat myślenia - gdzie jest jedna prawidłowa odpowiedź albo że coś jest dobre albo złe - a programowanie to raczej rzemiosło, pewna sztuka, i żeby być w niej dobrym trzeba po prostu dużo ćwiczyć ale też eksperymentować.

      Usuń

Prześlij komentarz

Popularne posty z tego bloga

Ściemy z ogłoszeń o pracę

Zostać programistą (2) - czy się nadajesz?

Czego się nauczyłem w 2021?