Co się robi na kółkach zainteresowań?
Właśniem wrócił z jeszczejednego polibudowego kółka zainteresowań - tego najgłówniejszego, zwącego się kółkiem informatycznym InFormat (kojarzy mi się z lnMonitorem na linuxnewsie :). Charakterystyczny już styl dyskusji w którym nikt właściwie nie ma nic do powiedzenia (znaczy ma - tylko tego mania jest na jakieś 5 minut max, a nie na godzinę), co chwila jest cisza, a żeby za długo nie trwała, to ktoś przeważnie powtarza to, co już zostało powiedziane, tylko w trochę innej formie (ciekawym, czy oni też to zauważają, czy też się już tak przyzwyczaili, że nie). Wyszło na to, że się z uczelnianych pieniędzy zakupi parę książek i się będą chętni przygotowywać do zdawania różnych egzaminów microsoftowych, żeby mieć certyfikat.
O ile nie mam nic przeciwko nauczeniu się administracji windowsem (a właściwie jestem jak najbardziej za), to mam bardzo dziwne przeczucie, że w tej formie będzie to zajęcie potwornie nudne. Tak samo jak próby przygotowywania się do różnych certyfikatów z oracla (też prowadzone na polibudzie). Oczywiście jak ktoś chce certa, to musi to wszystko wyryć, ale...
Dla mnie grupy tematyczne to coś, na czym ludzie uczą/dowiadują się różnych ciekawych rzeczy. No bo jak tam przyszli z własnej woli, to nie po to, żeby się nudzić, albo męczyć. Znaczy - jeśli są na tyle zdeterminowani, że chcą tego certyfikata, to oczywiście muszą się pomęczyć. Ale to nie może całe tak wyglądać. Czemu? Ano z prostej przyczyny - gdybym ja nie lubił tego, co robię, to obecnie moja wiedza komputerowa nie odstawałaby specjalnie od średniej krajowej. Studenci rycie mają zapewnione przez same studia - grupy tematyczne powinny raczej zapewnić im taki sposób nauki, który ich zaciekawi sam z siebie. Oczywiście nie mówię, że nie powinno być kursów na certy - jak jest wystarczająca ilość chętnych twardzieli, to proszę bardzo. Ale dla tych, którzy nie mają ochoty na takie spędzanie czasu, powinno być coś ciekawego. Kurs C# - to jest imho całkiem ciekawe - nie trzeba ryć wszystkiego od deski do deski, można spokojnie stopniować kurs podając na początek tylko najbardziej niezbędne informacje (co nie zmienia faktu, że i tak imho to nie jest sposób na naukę czegokolwiek - jak się potrzebuję nauczyć, to biorę książkę, czytam całą, po czym piszę jakiś kawałek oprogramowania - wtedy mogę powiedzieć, że umiem). Grupa .NET sama z siebie - no tu niespecjalnie wiem co oni tam właściwie robią. Jeden człek prezentował to, przy czym akurat dłubał w .necie (i nie miał z tym nic wspólnego fakt, że, o ile mi wiadomo, od opiekunki grupy .netowej zależą jego studia :). Dłubał sam, potrzebował pomocy - nie widziałem, żeby wzbudził specjalne zainteresowanie. Ktośtam jeszcze jest, kto coś innego dłubie, ale też afaik wszyscy współpracownicy mu się wykruszyli. Do tego dochodzi ów dyskietkowy projekt do którego zabrało się kilka osób (mówiłem o tym jakiś miesiąc temu), a który mi osobiście jawi się jako mało ciekawy i taki strasznie na odwal się (w sensie założeń - "zróbcie coś w ten deseń, to się zobaczy, czy może coś z tego będzie"). Czyli ogólnie rzecz biorąc nic ciekawego.
A weźmy tu takiego malekitha i jego nemerle. Projekt akademicki? Tak. Ma paru aktywnych uczestników? O ile mi wiadomo tak. Każdy może się w dowolnym momencie projektem zainteresować/przyłączyć? Tak. I może właśnie w tym tkwi sedno - każdy może się zainteresować.
Możliwe, że to tylko moje wrażenie, ale imho odpowiednio prowadzony projekt nie powinien mieć większych problemów z wessaniem jakiejś konkretniejszej ilości potencjalnie zainteresowanych polistudentów. Byle by było spełnione kilka warunków.
Będzie chyba trzeba skombinować jakiś w miarę sensowny projekt i go poprowadzić (tzn. projekt, który będę robił tak, czy siak, a wessanie ewentualnych pomocników będzie miłym dodatkiem (i dowodem, że mam rację), a nie niezbędnikiem, czy celem samym w sobie). No i teraz pytanie - co to takiego miało by być? I jak przełamać typowe bariery: (a) jaki język, (b) jak nauczyć ludzi obsługi cvsa/svna (czy choćby generowania patchy) i (c) jak przełamać tę typową barierę psychologiczną pod tytułem 'to jest jakieś takie skomplikowane'. Podpunkt drugi nabiera szczególnego znaczenia biorąc pod uwagę, że większość owych chętnych używa windowsów - nie wiem jak się ma wygoda korzystania z tychże narzędzi do windowsa. Ostatnio podpunkt natomiast to jest dopiero problem - "trudne, ja się za to nie biorę" - a g. prawda, prawie nic nie jest trudne. Wgryzienie się w kod tego programu nie jest trudne, tylko czasochłonne i jeśli chcesz być programistą, to musisz się tego nauczyć. Nauczenie się nowego języka programowania też nie jest trudne (brainfuck anyone? :), tylko czasochłonne. I właściwie każdy z obecnych na grupie .netowej mógłby się przyłączyć, gdyby tylko mu tę podstawową prawdę wbić do głowy i zmusić go w jakiś sposób do spróbowania. Ale to by wymagało jakiegoś porządnie przygotowanego planu działania z dużym akcentem na indoktrynację i propagandę. Trza by pomyśleć.
Hmm. Chaotyczny ten tekst, ale za dużo go, żeby mi się chciało poprawiać.
O ile nie mam nic przeciwko nauczeniu się administracji windowsem (a właściwie jestem jak najbardziej za), to mam bardzo dziwne przeczucie, że w tej formie będzie to zajęcie potwornie nudne. Tak samo jak próby przygotowywania się do różnych certyfikatów z oracla (też prowadzone na polibudzie). Oczywiście jak ktoś chce certa, to musi to wszystko wyryć, ale...
Dla mnie grupy tematyczne to coś, na czym ludzie uczą/dowiadują się różnych ciekawych rzeczy. No bo jak tam przyszli z własnej woli, to nie po to, żeby się nudzić, albo męczyć. Znaczy - jeśli są na tyle zdeterminowani, że chcą tego certyfikata, to oczywiście muszą się pomęczyć. Ale to nie może całe tak wyglądać. Czemu? Ano z prostej przyczyny - gdybym ja nie lubił tego, co robię, to obecnie moja wiedza komputerowa nie odstawałaby specjalnie od średniej krajowej. Studenci rycie mają zapewnione przez same studia - grupy tematyczne powinny raczej zapewnić im taki sposób nauki, który ich zaciekawi sam z siebie. Oczywiście nie mówię, że nie powinno być kursów na certy - jak jest wystarczająca ilość chętnych twardzieli, to proszę bardzo. Ale dla tych, którzy nie mają ochoty na takie spędzanie czasu, powinno być coś ciekawego. Kurs C# - to jest imho całkiem ciekawe - nie trzeba ryć wszystkiego od deski do deski, można spokojnie stopniować kurs podając na początek tylko najbardziej niezbędne informacje (co nie zmienia faktu, że i tak imho to nie jest sposób na naukę czegokolwiek - jak się potrzebuję nauczyć, to biorę książkę, czytam całą, po czym piszę jakiś kawałek oprogramowania - wtedy mogę powiedzieć, że umiem). Grupa .NET sama z siebie - no tu niespecjalnie wiem co oni tam właściwie robią. Jeden człek prezentował to, przy czym akurat dłubał w .necie (i nie miał z tym nic wspólnego fakt, że, o ile mi wiadomo, od opiekunki grupy .netowej zależą jego studia :). Dłubał sam, potrzebował pomocy - nie widziałem, żeby wzbudził specjalne zainteresowanie. Ktośtam jeszcze jest, kto coś innego dłubie, ale też afaik wszyscy współpracownicy mu się wykruszyli. Do tego dochodzi ów dyskietkowy projekt do którego zabrało się kilka osób (mówiłem o tym jakiś miesiąc temu), a który mi osobiście jawi się jako mało ciekawy i taki strasznie na odwal się (w sensie założeń - "zróbcie coś w ten deseń, to się zobaczy, czy może coś z tego będzie"). Czyli ogólnie rzecz biorąc nic ciekawego.
A weźmy tu takiego malekitha i jego nemerle. Projekt akademicki? Tak. Ma paru aktywnych uczestników? O ile mi wiadomo tak. Każdy może się w dowolnym momencie projektem zainteresować/przyłączyć? Tak. I może właśnie w tym tkwi sedno - każdy może się zainteresować.
Możliwe, że to tylko moje wrażenie, ale imho odpowiednio prowadzony projekt nie powinien mieć większych problemów z wessaniem jakiejś konkretniejszej ilości potencjalnie zainteresowanych polistudentów. Byle by było spełnione kilka warunków.
Będzie chyba trzeba skombinować jakiś w miarę sensowny projekt i go poprowadzić (tzn. projekt, który będę robił tak, czy siak, a wessanie ewentualnych pomocników będzie miłym dodatkiem (i dowodem, że mam rację), a nie niezbędnikiem, czy celem samym w sobie). No i teraz pytanie - co to takiego miało by być? I jak przełamać typowe bariery: (a) jaki język, (b) jak nauczyć ludzi obsługi cvsa/svna (czy choćby generowania patchy) i (c) jak przełamać tę typową barierę psychologiczną pod tytułem 'to jest jakieś takie skomplikowane'. Podpunkt drugi nabiera szczególnego znaczenia biorąc pod uwagę, że większość owych chętnych używa windowsów - nie wiem jak się ma wygoda korzystania z tychże narzędzi do windowsa. Ostatnio podpunkt natomiast to jest dopiero problem - "trudne, ja się za to nie biorę" - a g. prawda, prawie nic nie jest trudne. Wgryzienie się w kod tego programu nie jest trudne, tylko czasochłonne i jeśli chcesz być programistą, to musisz się tego nauczyć. Nauczenie się nowego języka programowania też nie jest trudne (brainfuck anyone? :), tylko czasochłonne. I właściwie każdy z obecnych na grupie .netowej mógłby się przyłączyć, gdyby tylko mu tę podstawową prawdę wbić do głowy i zmusić go w jakiś sposób do spróbowania. Ale to by wymagało jakiegoś porządnie przygotowanego planu działania z dużym akcentem na indoktrynację i propagandę. Trza by pomyśleć.
Hmm. Chaotyczny ten tekst, ale za dużo go, żeby mi się chciało poprawiać.

17 XI 2004 o 21:41:24
Drogi Mariuszu,
Jeżeli tylko zechcesz być naszym mentorem, pójdziemy za Tobą w ogień. Ja i paru moich kolegów, jesteśmy pełni podziwu dla Twej działalności. Uczyń tylko pierwszy krok, a ruszymy w ślad za Tobą.
Pozdrawiamy gorąco i czekamy ze zniecierpliwieniem
17 XI 2004 o 21:45:51
A tak na serio.
Pomijając formę, powyższe jest prawdziwe. Chciałbym (i nie tylko ja) się rozwijać, ale brakuje mi (nam) przywódcy/popychacza. Jakbyś naprawdę się nudził, to skleć jakieś założenia/program/wymagane_doświadczenia i voila.
BTW, nie chciałeś być RMem następcy Ac, Th?
P. S.:
obsługa cvs... passed
generowanie patchy... passed
środowisko niewindowsowe... passed
obawy przed skomplikowaniem... passed
język... failed!
Przemyśl to, to może być dużo łatwiejsze ;)
17 XI 2004 o 21:49:32
We wszystkich podpunktach masz rację. Zauważam, że znacznej większości "so called" programistów, się po prostu nie chce.
Najlepiej, by wszystko było dane na złotej tacy, a do tego dołączony rachunek. Najlepiej, by nie trzeba było przy tym myśleć i co więcej - by nie było się obciążonym ŻADNĄ odpowiedzialnością za projekt - co w sumie zamyka się w punkcie C.
Punkt A jest do rozwiązania w miarę łatwo, zdecydowanie łatwiej niż dwa pozostałe punkty.
Strach przed B pada, bo jak się okazuje, 90% oprogramowania (od pchełek po Visual Studia i Borland Buildery) z reguły ma wsparcie dla, co najmniej, CVS. Byle klikaczu powinien dać sobie radę. A jeśli dane narzędzie nie obsługuje CVS, to zawsze można wybrać inne, które obsługuje, prawda?
Od biedy można kazać opornemu napisać własny "CVS". W sumie metoda straszna, ale skuteczna (sam tak uczyłem się wiele lat temu C - gdy zacząłem rozwijać składnię, okazało się że 90% pomysłów to wypisz-wymaluj C ;).
17 XI 2004 o 21:51:30
"I właściwie każdy z obecnych na grupie
.netowej mógłby się przyłączyć, gdyby tylko mu tę
podstawową prawdę wbić do głowy i zmusić go w jakiś
sposób do spróbowania."
Ja się z tym nie zgodzę. Żeby ktoś się za taki projekt zabrał i miało coś z tego wyjść, to musi chcieć. Nie czekać aż ktoś go pouczy, zmotywuje itd. tylko samemu chcieć i robić, współpracując z resztą. Inaczej to kończy się to tak, że nik t nic nie robi, tylko ten "ktoś" to ciągnie na siłę...
No chyba, że jest jakiś "przymus", typu wynagrodzenie, czy widmo niezaliczenia przedmiotu. Ale jak już pisałeś, od takiej motywacji jest samo studiowanie, a potem praca, a nie "kółka".
Mam wrażenie, że u Was te "kółka" to sztuczne twory i IMHO jako takie nie mają wielkiego sensu. Co innego jak parę osób się po prostu zgada i zacznie coś robić (w praktyce jedna robi, reszta się dołącza), ale wtedy po co się ograniczać do jednej uczelni, jak to może robić cały świat?
17 XI 2004 o 22:00:19
Mialem nadzieje ze cos poprowadzisz. Napisalem nawet w ktoryms komentarzu, ze 'jak nie .NET to gdzie?' Nie znam za dobrze linuxa (moj rekord to 6 miesiecy na slack'u), nie liczac pisania prostych skryptow w php to programowac tez nie umiem. Ale chce sie wszystkiego nauczyc, tylko nie mam od kogo.
17 XI 2004 o 22:31:03
Masz racje mmazur, tylko widzisz, ludzie dziela sie na bezksztaltna mase i ludzi myslacych. Bezksztaltna masa potrzebuje kółek, zeby miec motywacje zeby zrobic cos poza studiami, z ktorych nie wynosza nic.
Wreszcie te masy musza byc zniewolone, na tym polega istota ich bledu, ze nie sa w stanie samodzielnie tworzyc, ktos musi im kierunek i sposob tworzenia narzucic.
17 XI 2004 o 22:32:59
Inna sprawa, ze albo cos prowadzi pasjonat albo nic z tego nie ma, to nie przedmiot porywa, tylko pasja, ktora przelewa wykladowca.
17 XI 2004 o 22:34:31
djurban: np. PLD i kloczek? ;) Mmazur musi odejść! ;)
17 XI 2004 o 22:35:42
Very funny jack :)
Jajcuś - chcieć to oni chcą - dlatego pojawiają się na grupie. Tyle tylko, że sami niespecjalnie wiedzą czego chcą, mają natomiast nadzieję, że na grupie się czegoś nauczą. Problem w tym, że te projekty są zorganizowane w taki sposób, że żeby się do jakiegokolwiek dołączyć, to trzeba się zadeklarować, że 'oto jestem ja i ja będę w tym dłubał'. Jest rzeczą oczywistą, że osób mogących złożyć taką 'deklarację' jest maksymalnie kilka (to ci najlepiej się znający) i oni często mają swoje własne projekty do zajmowania się nimi. A ludziom, którzy chcieli by się czegoś nauczyć, zostają kursy oracla, windowsa, czy też C#. Na ów dyskietkowy projekcik są za ciency (zważywszy sposób jego prowadzenia)... no i to by było na tyle - innych alternatyw nie ma.
Ja natomiast nie napisałem o zmuszaniu ich do uczestnictwa w projekcie - napisałem o zmuszaniu ich do spróbowania. Czyli powiedzmy, że postawiłbym całą wymaganą infrastrukturę, zrobił im szybki kurs svna i formatu patchy oraz krótki wstęp do 'hodowania' oprogramowania metodą opensourcową (projektowanie sobie darujmy). Teraz mówię: macie się zapisać na te dwie listy mailingowe (jakiśprojekt-devel i jakiśprojekt-commit). Za dzień-dwa rozpocznę dyskusję o kształcie projektu. Możecie w niej uczestniczyć - pomysły się liczą nawet, jeśli nie będziecie ich implementować. No i niech sobie trochę pooglądają jak wygląda taka dyskusja i spróbują się 'wczuć w atmosferę projektu'. Jak byłem młody i głupi, to się udzielałem na liście argante nie mając prawie żadnej wiedzy o czymkolwiek i znając jakieś kawałki C. Gadałem, gadałem, gadałem i nic nie robiłem. Aż pewnego dnia znalazłem buga - nieskończoną pętlę w kodzie debugującym. I wiesz co? Poprawiłem go. Nie wiem, czy zdajesz sobie sprawę z doniosłości tego faktu, ale ja *poprawiłem* buga w sporym kawałĸu kodu (toż to był wannabe system operacyjny i to jeszcze prowadzony przez samego lcamtufa!). To jest właśnie ta bariera psychologiczna. Teraz oni będą zapisani tak na listę dyskusyjną na której się mogą udzielać, jak i na commitlistę z patchami. Ja zawsze zaczynam od bylegówna, czyli praktycznie od kodu, który robi hello world. Teraz z każdym malutkim commitem, który bym robił, a który oni by analizowali zwiększała by się szansa, że któryś stwierdzi, że pozmienianie kilku linijek kodu i przysłanie mi patcha, to jest żaden problem. O - i wtedy będę takiego delikwenta miał - wysoce prawdopodobne, że sobie ten projekt daruje, ale także jest prawdopodobne, że sobie go nie daruje.
Żem się rozpisał.
17 XI 2004 o 22:38:59
mmazur, cholera. Mam ja stworzyć te listy dyskusyjne i postawić CVS?! ;)
P. S. Drugi mój komentarz, jak pisałem, był na serio! Ile można grać w Q2?! ;P~
17 XI 2004 o 22:40:15
Jeszcze odnośnie robienia projektu nie tylko akademickiego - po to wspominałem malekitha i dążę do cvsowania/mailinglistowania i czegotamjeszczeowania wszystkich tego typu projektów, żeby były otwarte na świat. Ja w ogóle mam zapędy do robienia za jakiegoś mentora, czy coś w tym stylu, a tutaj mam idealne świnki doświadczalne, które na dodatek są pod ręką :)
17 XI 2004 o 22:41:08
hrum hrum.
17 XI 2004 o 22:43:24
Weź mnie jack nie rozśmieszaj - ktoś cię uczył robienia specy? Nie? No to nie marudź, tylko się bierz za rzeczy, które są ci potrzebne, a na które masz czas. Ja na tej zasadzie mam swój udział w jajcusiowym transporcie gg i jestem z tego faktu wielce zadowolony, bo się na tym nauczyłem gliba. Ale już aż tak bardzo jak jajcuś w jabberze nie siedzę, bo po prostu mi to specjalnie nie potrzebne, a mogę grzebać w czymś innym. Każdy może znaleźć swoją niszę i roboty zawsze jest od cholery.
17 XI 2004 o 23:52:54
mmazur: z moich doświadczeń wynika, że wszędzie kluczowy jest lęk ludzi przed próbowaniem czegoś nowego; lęk, którego większość (wliczając w to swoją skromną osobę wannabe) hackerów (dowolnej profesji/zapatrywania) nie odczuwa i który pozwala im stworzyć coś, co wydaje się nie możliwe.
Wiesz o czym myślę ostatnio? O projekcie urządzenia embedded robiącego za X-terminal nie opartego na żadnej normalnej architekturze (czyt. opartego na Blackfinie).
Kto normalny by sobie czymś takim głowę w ogóle zaprzątał? A jednak lubię sobie snuć takie wizje, a każda okazja, by zaangażować się w coś, co pozwalało by mi się czegoś nowego nauczyć jest wręcz chorobliwie przezemnie wyłapywana.
The point is, że większość zachowuje się dokładnie odwrotnie.
18 XI 2004 o 00:06:55
Ano właśnie. "To jest za trudne i nawet nie mam co próbować". Mało rzeczy jest faktycznie trudnych (fizyka jest trudna! :).
19 XI 2004 o 17:33:02
Dla Ms programisci .net nie maja myslec, tylko wykonywac. Jakby mysleli, lub co gorsza byli madrzy w jakis sposob mogliby co gorsza wypatrzyc inne jezyki, lub co (jeszcze) gorsza wypatrzyc inna platforme ;)
20 XI 2004 o 11:39:12
Problem często bywa taki, że nawet jeśli ktoś chce coś robić, to nie ma na tyle siły i zdolności, żeby a) poprowadzić swój duży projekt b) przyciągnąć ludzi do niego. Ja próbowałem już
czegoś takiego, ale zawsze kończyło się fiaskiem. Dopiero jak przyłączyłem się do Nemerle, to jakoś sie udało, choć nadal nie rozumiem niektórych fragmentów kodu, a inne są tematem tabu dla moich rozważań możliwości ich zmiany.
Co do jednego się zgodzę na 100% - aby być dobrym programistą, trzeba umieć wgryzać się w istniejące, duże projekty - bo rzadko kiedy w pracy będzie się zaczynało swój
(najlepiej jednoosobowy ;)) projekt.
Aha, no i popieram sceptycyzm co do możliwości wciągnięcia do czegokolwiek ludzi, którzy nie mają wewnętrznej potrzeby robienia czegoś. Fakt, że przychodzą na kółko, nie musi jeszcze niczego znaczyć.