19 marca 2014

O sbt dla SilesiaScala zdalnie (via Hangouts on Air)

Prace nad odpaleniem zdalnej prezentacji o sbt (narzędziu do zarządzania budowaniem projektu z użyciem języka Scala) trwały od 18 stycznia, kilka dni po tym, kiedy +Silesia Scala oznajmiła na twitterze, że przyjmuje zgłoszenia tematów związanych ze Scalą.


Od kilku miesięcy siedzę przy sbt i szukam różnych miejsc sprawdzenia się w boju z moją znajomością tematu. Chciałbym móc pochwalić się wieloma projektami, ale poza jednym produkcyjnym projektem w mojej firmie z użyciem sbt, moim głównym źródłem wiedzy są pytania na StackOverflow pod szyldem sbt. Właśnie wczoraj otrzymałem odznakę sbt za uzyskanie 100 punktów za 20 odpowiedzi, co jest dla mnie istotnym osobistym osiągnięciem.

Moją aktywność na SO traktuję jako swego rodzaju projekt, w którym dotykam problemów, z którymi mógłbym nawet nie mieć styczności podczas swoich (projektów). Zrozumienie opisów przedstawionych problemów jest dla mnie samo w sobie wyzwaniem, a co tu mówić o znajomości sbt na poziomie umożliwiającym podanie rozwiązania. Doszło już do tego, że nierzadko zaglądam do kodów źródłowych narzędzia, aby zrozumieć jego zachowanie, a że znajomość Scali wciąż u mnie na poziomie podstawowym, więc nie jest lekko.

Wszystko to sprawiło, że pomyślałem, że mógłbym spróbować swoich sił w roli prelegenta na +Silesia Scala i przedstawić (swoje rozumienie) sbt. Chwyciło!

I tak się zaczęło, a wczoraj zrealizowało.

Zawsze byłem i jeszcze długo będę orędownikiem takich aktywności zdobywania wiedzy, a że nigdy tego za mało, przypomnę się ponownie. Zachęcam do takich inicjatyw każdego, komu leży na sercu dzielenie się wiedzą pro publico bono (z oczywistym zyskiem podniesienia swojego rozpoznania danego tematu). Warto potraktować publiczne wystąpienie jako inny rodzaj projektu, w którym wiedzy z pewnością nigdy za wiele. Zawsze znajdzie się pytanie, na które odpowiedź będzie przyczynkiem do przekroczenia bariery swojej znajomości tematu. I to jest dobre!

Osoby, które mają ze mną bliższy kontakt doświadczyły niejednokrotnie realizacji mojego motto, które brzmi:

"Każdy ma wystarczająco dużo wiedzy, aby móc się nią podzielić z innymi"

Innymi słowy, nie trzeba być ekspertem w wybranym obszarze, aby móc podzielić się już pozyskaną wiedzą.

Niestety, doświadczyłem niejednokrotnie na własnej skórze, że oczekiwanie jest zwykle, że prelegent wie więcej niż wszyscy słuchacze lub co najmniej od większości na sali. To niestety ma tę wadę, że nie zachęca do prezentacji swojej wiedzy, którą zwykle (zawsze?) uważamy za niewystarczającą do publicznej ekspozycji. Z drugiej strony słabe przygotowanie tematyczne może spotkać się z dezaprobatą i brakiem zainteresowania kolejnymi prezentacjami tej osoby w przyszłości, do której przylgnie nalepka "nauczyć się od niej raczej niemożliwe". Trzeba znaleźć balans między doskonałością a przeciętnością. Przykre to o tyle, że tworzy się impas i trzeba dużej odwagi i samooceny, aby w końcu zechcieć wystąpić publicznie. Nie wspominając, że Ci, którzy mają wiedzę, zwykle nie mają czasu lub ochoty lub po prostu nie widzą sensu dla takich praktyk. I to też jest problemem, bo nie ma wielu do wzięcia na siebie brzemienia krzewienia wiedzy i pracy u podstaw. "Wszystkich nie zadowolisz" jak mawiają.

Dla mnie wczorajsze spotkanie było niezwykłym sprawdzianem swojej wiedzy z sbt. Starałem się zachować umiar w moich ochach i echach odnośnie sbt oraz zachować ogólny spokój w sposobie przedstawiania tematu. Mam tendencję do przedobrzania i zbytniego entuzjazmu w podejmowaniu się wyzwań podczas prezentacji, głównie w postaci podejmowania się rozwiązywania problemów, z którymi nie miałem do czynienia wcześniej podczas publicznych wystąpień, co ma tę wadę, że nierzadko prowadzi do wpadek, które źle poprowadzone kończą się niższymi ocenami uczestników. Trzeba być ostrożnym. Wpadłem bodaj trzykrotnie, aczkolwiek odpuściłem wyłącznie, aby nie zajmować uczestników rozwiązaniami, których wartość merytoryczna była znikoma, a czas poświęcony ogromny. Lubię stąpać po obrzeżach swojej wiedzy, ale zbytnia frywolność związana z czasem "antenowym" jest niewskazana.

Co uważam za największe osiągnięcie wirtualnej prezentacji sbt, to panowanie nad czasem poszczególnych kawałków prezentacji, między którymi pozwoliłem sobie na angażowanie publiczności do zadawania pytań, czy po prostu zajmowania stanowiska. Było ciekawie i pytania publiczności pozwoliły mi uzupełnić prezentację sbt o elementy, których nie miałem w planach i nie uważałem za istotne.


Pełne nagranie spotkania znajduje się na kanale YouTube grupy Silesia Scala. Zachęcam do obejrzenia i przesłaniu swoich uwag, które wykorzystam do uzupełnienia swoich braków prezentacyjnych oraz w sbt. Bardzo, bardzo proszę o przesłanie uwag, bo moje ego nie pozwala mi dostrzec wad, nad którymi powinienem popracować. Bez Twojej pomocy będzie mi ciężko, jeśli w ogóle możliwe.

Dziękuję grupie +Silesia Scala, a w szczególności panom +Henryk Konsek, Pawłowi Sołtyskowi za organizację spotkania i umożliwienie poprowadzenia sesji na temat sbt. Dodatkowe podziękowania należą się Andrzejowi za pytania dotyczące sbt 0.13.0 oraz Marcinowi Kubale za zdalny udział w spotkaniu i zadawanie pytań. Dziękuję pozostałym uczestnikom za wytrwanie do końca, co pozwala mi sądzić, że prezentacja mogła być wartościowa chociaż dla części. Dziękuję!

Więcej informacji, w tym zdjęcia ze spotkania, znajdują się na stronie spotkania na meetupie grupy Silesia Scala User Group. Wierzę, że to nie jest moje ostatnie wystąpienie na deskach SSUGa i chętnie wystąpię u innych grup scalowych i javowych w Polsce.