Dzisiaj mamy już 96. odcinek DevTalk. To zobowiązuje do czegoś nieco specjalnego. Francja-elegancja, będzie o SZTUCE! Ale jak to… o sztuce?
Temat mamy trochę techniczny, trochę nietechniczny. Coś, co przez jednych uznawane jest za programowanie, przez innych za udawanie programowania, a przez kolejnych za sztukę właśnie. Tak, dzisiaj poważna rozmowa na temat frontendu.
Moim i waszym gościem jest Maciej Korsan. On uważa że frontend jest sztuką. Ukuł nawet piękny tagline swojej frontendowej działalności:
frontend in an art
Maciek jest frontendowcem z kilkunastoletnim doświadczeniem… i to tylko jedna z jego wielu twarzy. Fotografuje, kręci filmy (i teledyski!), fruwa dronami (z licencją!), posiada Sokoła Millenium (z Lego, ale zawsze). Współorganizuje konferencję Programistok i współtworzy fundację Hacklag. A oprócz tego szkoli, uczy i pomaga w zdobywaniu frontendowych szlifów wielu adeptom i adeptkom programistycznej sztuki, zarówno na uczelni jak i podczas autorskich szkoleń offline.
Mając takiego Gościa po drugiej stronie skorzystałem z okazji i wypytałem go o proces nauki frontendu. Ten odcinek może pokazać, że niestety wiele osób podchodzi do tematu po prostu… niewłaściwie.
Dodatkowo kilka tygodni temu ogłosiliśmy, że wspólnie pracujemy nad czymś extra-specjalnym. Chodzi o Program Skutecznej Nauki Podstaw Frontendu “WTF: Co Ten Frontend?“. Maciek tworzy go od strony merytorycznej, a ja go wydaję.
I…. PLAY!!
Montaż odcinka: Krzysztof Śmigiel.
Ważne adresy:
- zapisz się na newsletter
- zasubskrybuj w iTunes, Spotify lub przez RSS
- ściągnij odcinek w mp3
Linki:
- Program Skutecznej Nauki Frontendu “Co Ten Frontend”
- Roadmapa edukacji frontendowca
- DevTalk #92 – O błędach w tworzeniu WWW z Tomaszem “Comandeer” Jakutem
- Grupa dla początkujących we frontend
- Frameworki CSS
- Biblioteki i frameworki JS:
Muzyka wykorzystana w intro:
“Misuse” Kevin MacLeod (incompetech.com)
Licensed under Creative Commons: By Attribution 3.0
http://creativecommons.org/licenses/by/3.0/
Bardzo fajny odcinek!
Jako fan Linuksów pozwolę sobie wspomnieć, w kontekście JavaScriptu, o GJS. GJS to interpreter JS środowiska GNOME, dzięki któremu można korzystać ze wszystkich bibliotek i technologii GNOME w języku JavaScript. Istnieje trochę aplikacji desktopowych (używających natywnego UI środowiska GNOME) napisanych w JS — na przykład klient IRC, Polari (1) czy Pogoda GNOME (2). Oprócz tego sama powłoka środowiska — GNOME Shell (3) (odpowiednik explorer.exe w MS Windows) również jest napisany w JS z uzyciem GJS. Można pisać wtyczki do powłoki systemowej w JS.
Jeśli ktoś siedzi na jakimś sensownym Linuksie z GNOME, np. na Fedorze lub Ubuntu, może korzystać z GJS od razu. W innych dystrybucjach trzeba doinstalować pakiet `gjs`. Podobno da się używać GJS na Windows, jednak nie mam z tym doświadczenia. Istnieje wiele przykładów prostych aplikacji: https://github.com/optimisme/gjs-examples, https://github.com/GNOME/gjs/tree/master/examples
Niestety problemem jest dokumentacja. Nie ma oficjalnej strony z dokumentacją API bibliotek dostępnych w GJS, ponieważ serwer padł. ;( Społeczność GNOME szuka nowego domu dla dokumentacji. Obecnie, aby używać GJS, trzeba przeglądać oryginalną dokumentację poszczególnych bibliotek w C i „domyślać się” nazw funkcji. Np. jeśli mamy obiekt GtkWindow w GJS to możemy użyć metody set_title(), ponieważ w C mamy „metodę” gtk_window_set_title(), przyjmującą „instancję” „klasy” GObject jako pierwszy argument.
Zabawy w GJS raczej nie można wykorzystać do celów zawodowych i zarobkowych, ale warto pamiętać o dwoch sprawach: a) nie wszystko co robimy w IT musi być dla pieniędzy, b) GJS to interpreter normalnego JS (GJS używa silnika z Firefoksa), więc cała wiedza nt. składni i API samego języka może być potem wykorzystana w Nodzie i webie.
(1) https://gitlab.gnome.org/GNOME/polari/
(2) https://gitlab.gnome.org/GNOME/gnome-weather
(3) https://gitlab.gnome.org/GNOME/gnome-shell
Chociaż frontend mnie nie interesuje, to odcinek przesłuchałem z przyjemnością :) dzięki, panowie!