Programowanie w analogiach – część 2 – Czym różni się programowanie od kodowania?

Czy wiedziałeś/-aś, że kodowanie i programowanie to nie synonimy? Postaram się na prostych analogiach wyjaśnić, czym się od siebie różnią.

W dzisiejszym artykule znajdziesz 3 analogie, które przedstawią:

1) Różnice między programowaniem a kodowaniem, gdzie porównuję te dwa terminy w analogiach do:

  • wbijania gwoździ młotkiem;
  • wykuwania broni dla rycerzy i nauki kowalstwa.

2) Czym jest umiejętność programowania w życiu, porównując ten skill do posiadania samochodu i GPS-a;

3) Zarys tego, czym jest umiejętność programowania w biznesie, porównując ten skill do posiadania czołgu. Coś muszę zostawić sobie na kolejny artykuł 😉 

Skup się, bo wszystkie porównania są trafne, ale  na początku mogą wydawać się głupie, dziwne lub zbyt uogólnione.

No to zaczynamy 🙂

Jeśli jesteś na bieżąco z moimi blogiem, to wiesz, że w poprzednim artykule już raz użyłem porównania wbijania gwoździ młotkiem (patrz poprzedni artykuł). Dzisiaj, porównując programowanie i kodowanie do tego, można powiedzieć, że:

Jeśli NIE umiesz programować, to krzywo wbijasz gwoździe.

Jeśli NIE umiesz kodować, to tłuczesz się młotkiem po palcach zamiast wbijać gwoździe.

Te porównania mają Ci uświadomić, że aby stać się programistą, najpierw trzeba stać się koderem 🙂 To tak, jakbyś musiał nauczyć się mówić w języku komputera, aby móc wydać mu odpowiednie polecenia.

Mimo tego, znam przypadki, w których osoby nietechniczne można było spokojnie nazwać „programistami”, bo potrafiły rozwiązywać problemy za pomocą narzędzi low-code albo no-code i wychodziło im to na tyle, że byli w stanie ogarnąć to, czego potrzebowali.

Takich zwykle określam mianem „tooler-ów”, aby odróżnić ich od programistów, którzy piszą kod.

Jeśli porównać programowanie i kodowanie do wykuwania broni dla rycerzy to:

„Kowal programista” – będzie chciał wykonać oręż najbardziej dopasowany do potrzeb rycerza (czyli Twojego klienta).
Dla takiego kowala jest istotne, czy rycerz potrzebuje rapiera do przebijania się przez kolczugę, czy też długiej szabli, aby przedzierać się konno przez zastępy wrogów.

A rycerz, gdy go zapytasz o to, po co mu miecz i co planuje zabijać, zazwyczaj wie tylko tyle, że idzie gdzieś walczyć…

„Kowal koder” – wykona broń wg najlepszych znanych praktyk i skupi się na stopach metali, konstrukcji i jej właściwościach zabijania.

 A gdyby tak porównać w 3 krokach naukę kowalstwa do tego, jak zazwyczaj wygląda przejście od kodera do programisty?

  1. Najpierw musisz stać się koderem – by wiedzieć jak działa wykuwanie broni, kowadło, młotek.
  2. Stajesz się programistą, kiedy opanujesz już te podstawy i dopasowujesz swój kod do wymagań i potrzeb klienta. Bronie, które wytwarzasz zaczynają pasować rycerzom i niektórzy nawet lubią z tych broni korzystać. Dodatkowo nieustannie  kształcisz się w kodowaniu.
  3. Finalnie możesz się wyspecjalizować w wytwarzaniu konkretnego typu broni – np. stajesz się najlepszym kowalem od maczet, jeśli chodzi o krakowski rynek 😉 Albo stajesz się lepszy w dopasowaniu broni do potrzeb konkretnych rycerzy.

Dobra, ale wracamy do rzeczywistości i bardziej realnych czasów. Aby pokazać sytuację z zupełnie innej strony – co daje programowanie?

Po pierwsze, umiejętności programowania i kodowania we współczesnym, zdigitalizowanym świecie są jak posiadanie samochodu, kiedy wszyscy inni  poruszają się pieszo.

Szukasz informacji szybciej, poświęcasz na to coraz mniej energii i czasu, a dojechać możesz znacznie dalej niż reszta. Samochód pozwala także na dogonienie dynamicznie zmieniających się trendów i technologii.

Dodatkowo wśród znajomych i rodziny pełnisz rolę społeczną – taksówki 🙂

Samochód umożliwia Ci „podwiezienie innych” – kiedy jesteś techniczną osobą, Twoja świadomość wzrasta. W związku z tym, dzięki posiadanej wiedzy, możesz pozwolić sobie na edukację techniczną otoczenia i podniesienie świadomości technologii, higieny przebywania w internecie. Albo po prostu możesz zaoferować pomoc mniej zaawansowanym osobom.

Po drugie, programowanie jest trochę jak posiadanie GPSa 

Dlaczego GPS? Bo gdy uczysz się coraz więcej o programowaniu, to przygotowując rozwiązania często wiesz, gdzie musisz dotrzeć, albo przynajmniej kojarzysz okolicę, w której chciałbyś się znaleźć. O trasę pytasz najlepszego kolegę – wyszukiwarkę Google, lub przeszukujesz swoje “sprawdzone” miejsca. Niestety – nawet google nie pomoże, jeśli źle wpiszesz zapytanie. I wywiezie Cię w pole. 

A przez miesiące kopania w informacjach, uczysz się również, że na niektóre strony nie warto wchodzić, co bardzo podnosi higienę pracy i korzystania z sieci 🙂

A gdyby tak w analogiach spróbować pokazać czym jest ten skill w biznesie?

Skoro już zaczęliśmy porównywać programowanie do pojazdów, trzymajmy się tego. Bycie programistą fullstackowym ze świadomością biznesową i nawet nikłymi kontaktami w biznesie możemy porównać to do posiadania czołgu lub samolotu, kiedy wszyscy inni jadą samochodem, rowerem lub idą pieszo 🙂 

Dzięki tym umiejętnościom, potrafisz szybciej niż inni:

  • Sprawdzić swój pomysł na apkę;
  • Postawić sklep dropshippingowy na wordpressie;
  • Stworzyć integrację do automatyzacji jakiegoś procesu;
  • Pomóc komuś z jego oprogramowaniem.

To tylko od Ciebie zależy czy wykorzystasz swoje umiejki 🙂

Ale ten temat – wykorzystanie umiejętności programowania w biznesie – zostawię już sobie na inny artykuł.

Podsumowanie:

  1. Najpierw musisz się stać koderem, a potem programistą.
  2. Koder – zna dobrze swój młotek i wie jak używać go do tworzenia większych rzeczy, ale nie potrafi jeszcze dopasowywać rozwiązań do potrzeb klienta.
  3. Programista potrafi przygotować rozwiązanie dopasowując go do potrzeb klienta. Jako programista masz swoje konkretne specjalizacje i ciągle się uczysz i rozwijasz.

Do następnego commita!

contact

Wahasz się? Podaj nam swojego maila i umów się z naszym mentorem na niezobowiązującą konsultację.