sobota, maja 11, 2013

Nowe królestwo programistów

From Evernote:

Nowe królestwo programistów

Z programowaniem zetknąłem się dosyć późno. Chyba na trzecim roku studiów mieliśmy taki przedmiot "Elektroniczna technika obliczeniowa". Nauka odbywała się wtedy bardzo klasycznie, a więc najpierw wykłady, a potem ćwiczenia. Na wykładach profesor opowiadał o syntaksie języka Algol i wypisywał kredą na tablicy (!) jakieś tam przykłady programowania, których nikt z nas w tym momencie chyba nie rozumiał. Zapewne większość z nas do momentu rozpoczęcia ćwiczeń - a niektórzy może nawet do dzisiaj - nie miała zielonego pojęcia o co tu chodzi. Jednak byliśmy przyzwyczajeni to tego dalekiego od ideału sposobu nauczania i czekaliśmy spokojnie na rozwianie tajemnicy.

Na początku ćwiczeń każdy z nas dostał prosty techniczny problem do rozwiązania. Naszym zadaniem było sformułowanie sposobu rozwiązania i zaprogramowanie w języku Algol. W tamtych czasach komputer to było coś bardzo wyjątkowego. Było ich bardzo mało, dostęp do nich mieli tylko bardzo nieliczni, wtajemniczeni. Ci kapłani w komputerowej świątyni przyjmowali od nas raz w tygodniu karty perforowane - bo program należało napisać na specjalnie do tego przystosowanych formularzach i bardzo miła pani przepisywała program z formularza na maszynie przypominającej maszynę do pisania i ta maszyna wytwarzała te karty perforowane - i po jakieś chwili oddawali nam absolutnie niezrozumiały wydruk z komputera. Pamiętamdo dzisiaj, że na początku było tam napisane "run by George". Potem była to lista błędów syntaktycznych w programie. Jak ktoś od razu potrafił je poprawić mógł puścić ten program jeszcze raz. A jak nie to następna okazja była dopiero za tydzień. 

Mnie od razu to programowanie spodobało się. Ta atmosfera światyni wiedzy, atmosfera czegoś szczególnego, dostępnego tylko dla wybranych zafascynowała mnie. Bardzo szybko usunąłem błędy z mojego programu i dostałem wyniki obliczeń. Chętnie pomagałem innym poprawić ich błędy. Chyba prawie wszystkie programy mojej grupy wyszły spod mojej ręki.

Od tego czasu zacząłem marzyć o programowaniu. Chciałem w przyszłości pracować przy komputerach. Nie od razu mi się to udało. Krótko po studiach wyjechałem do Austrii i podstawowa walka o byt wypełniła w pełni me życie. Dopiero po kilku latach nabyłem jeden z pierwszych domowych komputerów, które właśnie ukazały się na rynku. Scheider 128 to była moja prywatna szkoła programowania. Nauczyłem się kilku języków programowania i programowałem również w asemblerze. To było moje hobby, ale ja nadal chciałem aby to był również mój zawód.

Po kilkudziesięciu nieudanych próbach uzyskania pracy programisty już prawie zrezygnowałem. Firmy przede wszystkim patrzyły na doświadczenie. A tym nie mogłem się wykazać. Poza tym zawsze szukały trochę innych umiejętności niż te które teoretycznie miałem. Pamiętam, że w sobotę czytałem ogłoszenia w gazetach i patrzyłem jakich programistów szukają. W poniedziałek szedłem do uniwersyteckiej biblioteki i wypożyczałem książki na te tematy, a w środę pisałem podania o pracę.

Jak to często w życiu jest dostałem pracę jako programista całkiem niespodziewanie. Byłem zachwycony. Do późnego wieczora pisałem programy, już teraz w C. Bardzo lubiłem to zajęcie i nieustannie udoskonalałem moje umiejętności. Miałem wtedy duże poczucie spełnienia i może też trochę i wyższości. Potrafiłem coś czego inni nie umieli i nie rozumieli. Tworzyłem coś z niczego.

W tym czasie, pod koniec lat osiemdziesiątych, pojawiły się pierwsze programy, które tworzyły inne programy. Tak zwane programy 4 generacji, które z bazy danych generowały proste programmy, ale również generatory codu, które z dosyć abstrakcyjengo opisu procesu businessowego automatycznie wytwarzały program. Te generatory kodu nie były doskonałe, ale wielu twierdziło, że to tylko kwestia czasu. Za kilka lat te generatory będą tak doskonałe, że nikt już nie będzie potrzebował programistów. Moi zleceniodawcy zaczeli mówić z lekceważeniem o programistach.

Widać przekonali mnie, bo postanowiłem uciec od programowania i spróbować moich sił w administracji systemów. Też fajne zajęcie, ale na pewno nie tak twórcze jak programowanie. Ciągle jeszcze pisywałem małe programiki. To nie była jednak lwia część moich zajęć. Po kilku latach ucichło o generatorach programów, a programiści wrócili do łask. Moja kariera potoczyła się jednak już innymi torami. Do programowania już nigdy nie wrócilem. Czy wybrałem lepiej czy gorzej tego nie wiem. Do dzisiaj mam jednak duży sentyment do programowania, chociaż już nie potrafię programować.

Nic więc dziwnego, że takie książki jak "Nowi twórcy królów. Jak programiści podbili świat" Steve O'Brady od razu wpadają mi w ręce. O'Brady podkreśla jak ważni są programiści dla digitalnej gospodarki. Aktualnie zapotrzebowanie na dobrych programistów znacznie przekracza ich dostępną ilość na rynku. Firmy szukają coraz to nowych metod aby zwerbować i utrzymać najlepszych programistów. Ostatnio jedną z takich metod jest wykupywanie mniejszych firm nie po to aby przejąć produkty czy klientów, lecz aby przejąć programistów. O'Brady opisuje również jak dzięki powstaniu ruchu open source - z tak ważnymi produktami jak Linux, Apache czy MYSQL aby wymienić tylko kilka - i oszałamiającym rozwoju servisów dla prywatnych konsumentów wolni programiści zaczęli decydować o i narzucać standarty programowania. To oni decydowali o tym co należy używać - na przyklad PHP - i odrzucali drogie i skomplikowane standarty największych komercyjnych firm. Nagle okazało się, że to rzesze niezliczonych programistów hobbystów, czy z małych firm decydują o tym co dobre, a co należy odrzucić. Wyzwolili się oni spod kurateli takich firm jak Microsoft, które przez lata decydowały o nowych kierunkach w programowaniu poprzez swoje produkty. Wolni programiści stworzyli własne narzędzia do programowania i ignorują kompletnie produkty komercyjnych firm. Wiele firm zorientowało się w sile programistów i stara się ją wykorzystać do swoich celów. Otóż firmy - jak naprzykład Amazon czy Netflix - otwierają swoje serwisy dla programistów publikując interfejsy, które można używać z zewnątrz firmy, z internetu. Każdy może stworzyć wlasną aplikację i połączyć ją z interfejsem danej firmy. Firmy mają nadzieję, że w ten sposób używanie ich serwisu wzrasta, a na dodatek wolni programiści znajdą zupełnie nowe zastosowania dla tego serwisu. Firmy te w ten sposób rozszerzają swoje wydziały rozwoju o tych wolnych programistów, bez konieczności bezpośredniego zatrudniania ich.

Tak, ja niestety już nie jestem programistą i nie mogę skorzystać z tych nowych możliwości. Zazdroszczę więc trochę dzisiejszym programistom, bo dla nich ta sytuacja to chyba raj na ziemi! ;)

Brak komentarzy: