Kiedy byłem małym chłopcem

Mój pierwszy własny komputer dostałem we wczesnych latach szkoły podstawowej. Był to komputer marki Compaq z procesorem 386SX i 8MB pamięci RAM, dyskiem twardym o pojemności 130MB i stacjami dyskietek 5,25″ i 3,5″. Pamiętam doskonale tą konfigurację, bo wyciskałem z niego siódme poty montując kolejne karty rozszerzeń – karty graficzne, muzyczne, kontrolery dysków i portów szeregowych i seryjnych a nawet.. radio FM. Ta niesamowita przygoda pozwalała mi eksperymentować z DOS-em i Linuxem w czasach Windows-a 3.11. Ulubiona gra tamtych czasów? Było ich kilka, ale Lemingi, Flight Simulator i Grand Prix Circuit chyba najbardziej zapadły mi w pamięci. Ta ostatnia zapoczątkowała też pasję do dwóch innych światów – szybkich samochodów i szeroko pojętej muzyki elektronicznej.

Będąc jeszcze w szkole podstawowej stworzyłem swoją pierwszą publiczną stronę internetową traktującą o Linuxie. ActivLinux, bo tak się nazywał mój serwis, był jednym z pierwszych serwisów dla polskiej społeczności pingwiniarzy, gdzie dzieliłem się swoimi doświadczeniami i radami dla innych użytkowników. Przy okazji wydawałem cotygodniowy biuletyn e-mailowy LeOS zawierający aktualności i porady, trafiające wprost na skrzynki subskrybentów, których w szczytowym momencie było blisko tysiąc!

Najważniejszą częścią open source’u jest to, że ludziom pozwala się się robić to, w czym są dobrzy.

Linus Torvalds

Ta przygoda rozpoczęła się pod koniec lat dziewięćdziesiątych i trwała dobrych kilka lat. Idea wolnego oprogramowania była dla mnie wtedy idyllą, a możliwość komunikacji z innymi ludźmi ukrywając się pod pseudonimem za monitorem dawała poczucie niesamowitej wolności. I prawdopodobnie niewielu, jeśli ktokolwiek, wiedziało, że komunikuje się z małolatem. A ja mogłem czuć się dojrzalej. I może właśnie dlatego mając zaledwie trzynaście lat otrzymałem… propozycję pracy jako administrator środowisk linuxowych w jednej z pierwszych polskich firm hostingowych.

Więcej niż Poznań…

ePoznan.net

Liceum to intensywny czas prac nad portal informacyjny Poznania – ePoznań. Tworząc to miejsce nie sądziłem ilu wspaniałych ludzi poznam i ile drzwi dzięki niemu zostanie otwartych. Choć ePoznań powstał na gotowym frameworku, jednak bardzo szybko stał się moim pierwszym, pełnowymiarowym, prawdziwym projektem programistycznym na którym szlifowałem wszystkie aspekty świata IT – od architektury, przez bazę kodu, kwestie graficzne aż po… pisanie newsów, artykułów i fotografowanie lokalnych wydarzeń.

Portal współtworzyłem ze wspaniałymi ludźmi, głęboko zaangażowanymi w życie miasta, chcących dzielić się informacjami. I co najciekawsze, całe przedsięwzięcie pozostało od początku do końca niekomercyjnym działaniem pro publico bono. Udało nam się zorganizować dziesiątki konkursów, rozdać tysiące biletów na wydarzenia kulturalne naszych partnerów. W szczytowym czasie mieliśmy blisko tysiąc unikalnych odwiedzin każdego dnia. Niestety kurcząca się ilość czasu, chęć pozostawienia działalności niekomercyjną i nowe projekty spowodowały, że ePoznań powoli zmniejszał swoją aktywność i pozostał jedynie mglistym wspomnieniem.

Obecnie działający serwis jednej z poznańskich telewizji nie ma nic wspólnego z naszą działalnością – powstał później wykorzystując naszą nazwę i formułę działania. Jego twórca był przez chwilę zaangażowany w redakcję ePoznan.net wynosząc z niej całą kulturę organizacyjną i komercjalizując ją.

pocity.pl miało być próbą powrotu do projektu po latach, jednak dalsze wydarzenia nie pozostawiły przestrzeni dla tego przedsięwzięcia.

Studia były czasem wielu wzlotów i upadków, projektów udanych i mniej udanych. Do dziś pamiętam, jak po całej nocy przygotowywania projektu zaliczeniowego implementującego szereg algorytmów szyfrujących usłyszałem „pan tego nie napisał”. Takie oceny były jak kubeł zimnej wody, a cały wysiłek i sumienność wkładana w wykonywanie zadań szły w piach. Nie mówię tu o niedocenianiu, ale o pewnej powtarzalności systemowej – wszyscy realizujący te same projekty, rok w rok… tego nie da się rzetelnie i sprawiedliwie oceniać. Ale to nie wina studentów, tylko całego systemu – rutyna, powtarzalność, brak kreatywności, brak wolności edukacyjnej, zniechęcenie kadry do poszukiwania alternatywnych rozwiązań.

W międzyczasie piastowałem funkcję przewodniczącą w dwóch grupach zrzeszających studentów, którzy naprawdę chcieli (z)robić coś ciekawego. W kole naukowym Atena i działającej przy kole Atena Grupie DotNet. Nazwa tej drugiej była nieprzypadkowa, bo było to formalnie koło naukowe wielbicieli platformy .NET, zakładane i stymulowane przez sam Microsoft. W praktyce Microsoft dawał narzędzia i zapraszał na eventy studentów, a Ci „głosili dobrą nowinę” o rozwijającym się nowym (w tamtych czasach!) frameworku. Jak się później okazało, z .NET-em związałem się na lata, a w obu grupach poznałem wspaniałych ludzi, z którymi postanowiliśmy zrobić coś więcej…

Imagine a world where technology
enables a sustainable environment

Microsoft Imagine Cup 2008

Rok 2008 był rokiem udziału w konkursie Imagine Cup organizowanym przez Microsoft. Miałem przyjemność stanąć na czele grupy outPUT biorącej udział w kategorii, a jakże, Software Design. Projekt który tworzyliśmy operował w konkretnym haśle przewodnim, które co roku było inne. W roku 2008 dotyczyło ono zrównoważonego środowiska. Nie były to jeszcze czasy, kiedy pod przykrywką ekologii można było zamknąć wszystko. Niektóre rozwiązania, które zostały zgłoszone, naprawdę miały szansę zrewolucjonizować świat.

Nasz projekt wyprzedzał swoją epokę. Stworzyliśmy hybrydę carpoolingu i zarabiania na przejazdach, co w dzisiejszej nomenklaturze należałoby nazwać skrzyżowaniem BlaBlaCar-a i Uber-a. Tak jak w chwili powstawania naszego projektu nie było ani jednej ani drugiej platformy, tak dzisiaj nikt takiej hybrydy również nie stworzył. Problem auto-stopa jest jednak problemem psychologicznym i są kraje, w których jest to wręcz niemiło widziane – np. kraje skandynawskie. Rozwiązanie w swoich założeniach było dobre, ale w tamtych czasach dość karkołomne do realizacji.

Powodów karkołomności było kilka. Po pierwsze, w roku 2008 smartfony raczkowały. W zasadzie większość używała tradycyjnych telefonów, co bardziej ekstrawaganccy używali PDA z modułami GSM, posiadających fatalny system Windows Mobile. Pierwszy iPhone został zaprezentowany co prawda rok wcześniej, ale nie było jeszcze AppStore, a instalowanie aplikacji mobilnych zwyczajnie nie było proste ani powszechne. Po drugie dostęp do usługi, a raczej model marketingowy, byłby złożony do realizacji szczególnie, że grupa odbiorców byłaby bardzo ograniczona. Możliwość komunikacji mobilnej była ograniczona do rozmów i SMS-ów i choć stworzyliśmy wysyłanie na żywo lokalizacji urządzenia, to był to wyłącznie prototyp trudny do dystrybucji na szerszą skalę. Dekadę później? Dwie? Kilka linii kodu i działa. Wtedy? Bardzo skomplikowane.

Rok 2008 był również rokiem, w którym rozwiązania z których korzystaliśmy, były ekstremalnie świeże i eksperymentalne. Wykorzystanie typów danych w bazie Microsoft SQL Server uwzględniającego krzywiznę ziemii, pozwalającego implementować algorytmy komiwojażera z uwzględnieniem siatki ulic, priorytetów komunikacyjnych, natężenia ruchu… to wszystko było zupełnie nowe, szczególnie dla grupki studentów bez żadnego zaplecza technologicznego. Do wizualizacji korzystaliśmy z Virtual Earth (również twór Microsfotu), a za warstwę UI/UX odpowiedzialna była technologia, która tak szybko jak na scenę weszła, tak szybko z niej zeszła – Windows Presentation Foundation.

Stworzyliśmy wielowarstwową architekturę z modułami odpowiedzialnymi za logikę biznesową (backend), aplikację kliencką (desktop) i aplikację mobilną. Udało nam się dotrzeć do finałów i… konkurować z kilkoma innymi projektami traktującymi o carpoolingu. Różnica polegała na tym, że tylko w naszym projekcie pojawił się model biznesowy zachęcający do współdzielenia przejazdów, ale nasza prezentacja i marketingowa warstwa zawiodła. Mieliśmy więc dopracowany prototyp, ale niedopracowaną prezentację. Przegraliśmy z dopracowaną prezentacją, ale niedziałającym prototypem. Jednak patrząc z perspektywy czasu to była świetna lekcja, jeszcze lepsze doświadczenie i niesamowita przygoda!