Tytuł tego posta to jawne nawiązanie do wywiadu Luisa C.K., który udzielił w programie
The Night Show z Conanem O’Brainem. Jeśli nie widzieliście tego wywiadu jeszcze zachęcam do poświęcenia chwili i zapoznania się z nim:

Niedawno naszło mnie na przemyślenia, że także w naszym dev-świecie także sporo narzekania i ogólnego defetyzmu 😉 jest a przecież nigdy dotąd tworzenie oprogramowania nie było takie przyjemne.
Czemu zatem tak się dzieje? Zobaczmy…

Język programowania/frameworki

Nie wiem jak wy, ale ja pamiętam czasy gdy metodę sort trzeba było pisać samemu.
Ba pisałem nawet wprowadzając opcode’y assemblera do notatnika (choć to raczej
z chęci nauczenia/zrozumienia jak to działa niż potrzeby).

Dzisiejsze języki programowania to nie tylko super składnia (np. lamby w C#, czy w Java), która jest prosta i czytelna – to także frameworki, które stoją za nimi a które sprawiają, że większość czasu spędzamy na rozwiązywaniu faktycznych problemów a nie pisaniu naszej implementacji metody sort. Ilość metod w .NET Framework idzie w dziesiątki tysięcy – taka liczba metod/funkcji, które tylko czekają aby ich użyć bez potrzeby myślenia jak ja zaimplementować. Cud miód…i orzeszki a tu dalej słychać głosy, że frameworki to zło.

Systemy kontroli wersji

Tak, tak zdaję sobie sprawę, że TFS to zło i mogłoby działać lepiej, ale nawet z nim jest lepiej niż było lata temu. Zawsze to jakaś kontrola wersji jest. Ba nawet będąc zmuszonym do używania TFSa można sobie osłodzić życie stosując dodatkowe narzędzia, które chowają przed nami TFuFSa (© Procent) Już żaden dev nie wyda z siebie okrzyku rozpaczy (Nooooo) po stracie długo tworzonego kodu. Oczywiście tylko jeśli z tych systemów kontroli wersji skorzysta. Jeśli jeszcze nie korzystacie to polecam. Ja stosuję je nawet do swoich projektów tworzonych w ramach nauki – historia zmian to potężna pomoc która zaręczam jeszcze wiele razy uratuje wam skórę.

A jednak – mając takie opcje wyboru – wciąż narzekamy na nasze VCSy…

Edytory

Visual Studio to mega edytor! Sublime Text też wymiata. Vim też…jest (jak ktoś lubi :)). W zasadzie nie powinienem pisać już więcej bo opcji jest od groma, ale napiszę kilka słów. Pamiętam wersje 6.0 gdzie, UI trzeba było tworzyć bardzo topornie. Ktoś nawet na jednym z for napisał dlaczego Visual Studio ma w nazwie Visual bo przecież tam nic wizualnego nie było – hehe 🙂 Przynajmniej jeśli porównać istniejące w tamtym czasie Delphi czy C++ Builder.

Mimo tego ogromu dostępnych tooli słychać co chwila gromy np. na powolność VS (tak, tak – ja sam narzekałem).

Narzędzia wspomagające pracę

Kiedyś jedynym narzędziem programisty był edytor i kompilator (ew. linker). Proces kompilacji był żmudny (patrząc według dzisiejszych standardów) i np. wymagał pisania długiego pliku make gdzie konieczne było znanie tysiąca przełączników i miliona flag bo inaczej dostawaliśmy po oczach błędem.

Dzisiaj mamy potężny zestaw narzędzi wspomagających naszą pracę. R#, CodeRush, nCrunch, nDepend … to tylko kilka bez których dzisiejsza praca byłaby nie taka przyjemna jak z nimi. Ale nadal słychać głosy….ale nie… tu w sumie jedyne narzekanie to chyba tylko na ceny 😉 – toole mega usprawniają pracę 🙂

Zdobywanie wiedzy

Kiedyś zdobywanie wiedzy wyglądało tak:

Autor: Marcin Szeliga

Stosik książek na biurku, porozkładane magazyny techniczne oraz stos wydruków kodów źródłowych. Dzisiaj mamy stackoverflow/devpytania gdzie odpowiedź pojawia się jeszcze zanim padnie pytanie ;). gist pozwala na przechowywanie fragmentów kodu i dostęp do nich z każdego miejsca na Ziemi! To się nazywa globalna kolaboracja. A gdzie tutaj narzekanie? Nie będę linkował – wpiszcie sobie w google ‘stackoverflow sucks’ i zaopatrzcie się w pieluchę na czas czytania 🙂

Komputery

Ah..komputery – można by je przyrównać do oręża dawnych rycerzy. To dzięki nim możemy pokazać nasz błysk i kodować z prędkością światła 🙂

lz7hOlC

via Wykop.pl

Ja pamiętam swój pierwszy PC – 486 DX 2 66 (turbo mode on!!!) MHz z 512 MB dyskiem twardym. Wydawało się, że takiej przestrzeni nigdy nie zapełnię. To “nigdy” zostało dość szybko zweryfikowane i z ulgą odetchnąłem gdy w obudowanie pojawił się drugi ogromny 3,2 GB twardziak!

tumblr_n2fei7mVtM1qj2t7oo1_1280

© http://goodnewdays.tumblr.com/

Dzisiaj wszystkim mało…i za wolno mimo dysków SSD i procesorów i7.

Podsumowanie

Wyszedł mi taki luźny post. Ale nie ma co narzekać na niego :). Także w naszym dev-świecie znajdzie się trochę miejsca na negatywne myślenie. Nie twierdzę, że nie ma powodów. Nie mówię też, aby tego nie robić. Warto jednak aby szło za tym także działanie a wtedy wszyscy będą happy. Jeśli coś cię boli w dzisiejszym dev-świecie? Nie narzekaj – zacznij działać. Enter.