Nie pracuj dla korporacji.

Powszechnie sądzi się, że praca programisty jest pracą twórczą. Pracą na miarę artysty-demiurga, z zamysłem, który oczami wyobraźni widzi i wskazuje palcem co i gdzie. Niestety jest to tylko poniekąd zgodne z prawdą. Programista pracujący na usługach korporacji - z działami analityków biznesowych, z ustalonymi wzorcami, ustabilizowaną platformą softwareową jest tylko wyrobnikiem.

Praca w środowiskach korporacyjnych ma coś z układania klocków z obrazkami. Dostaje się wielką listę klocków, z których można korzystać, obrazek jak nasza konstrukcja ma wyglądać, czas w którym mamy się zmieścić z zakończeniem prac i zaczyna się zabawę. Przy czym jest tu jeden problem. O ile każdy klocki odpowiadają rysunkowi który mamy, sprawa jest prosta - jeśli jednak nie to mamy dylemat. Można wówczas problem brakującego klocka rozwiązać na dwa sposoby. Zrobić sobie taki klocek, lub wziąć najbardziej podobny do tego z obrazka i tak przerobić aby pasował do całości.

O ile zrobienie nowego klocka, idealnie spełniającego nasze oczekiwania wydaje się rzeczą naturalną, o tyle w przypadku pracy korporacyjnej tak naturalną rzeczą już nie jest. Otóż zrobienie nowego klocka to praca czasochłonna - a tego korporacje nie lubią. Dla tego najczęściej wybiera się opcję drugą.

Przejdźmy do przykładów - otóż załóżmy, że potrzebujemy klocek z obrazkiem portowego nabrzeża. Tymczasem po kilkugodzinnym grzebaniu w pudełku znajdujemy jedynie taki z hawajską plażą. Zgodnie zatem z wytycznymi biznesu przerabiamy go. I tu pojawia się następny problem - otóż klocek z plażą używany jest w dwudziestu innych miejscach i nie może zmienić swojego charakteru. Stawiamy zatem na owej plaży, w sobie tylko znanym miejscu dźwigi portowe i skrupulatnie maskujemy je bambusem i palmami.

I tak oto stajemy się jednym z trybów korporacyjnej maszyny, skierowanej na odtwórczą pracę. Praca w korporacjach Proszę Państwa daje zarobki, praca w korporacjach daje uznanie w oczach innych bo nakierowana jest na interpersonalno-socjalne stosunki. Ale praca w korporacjach dla programisty chcącego się rozwijać nie da satysfakcji. Praca taka to niekończące się pasmo grzebania w pudle z klockami i nieustannego potykania się w najmniej oczekiwanych miejscach o jakieś cholerne żelastwo zamaskowane liśćmi palmowymi.

Nie dziwić się należy zatem, że najlepsi programiści inwestują swój czas w projekty open source które pozwalają się im właściwie rozwijać.

Drugim dnem tego postu jest sprawa architektury platformy w której przyszło nam pracować. Używanie frameworku (to słowo elektryzuje korporacyjnych managerów, gdyż od razu przed oczami mają ilość zaoszczędzonego czasu) ma sens tylko wtedy, jeśli jest on zaprojektowany w sposób na tyle elastyczny, że pozwala na zbudowanie własnej aplikacji bez konieczności modyfikacji samego kodu frameworka. No niestety rzadkość - bo tego typu rzeczy buduje się na zasadzie - co potrzebujemy to wkładamy.

Post a Comment

Security Code: