jak zostać programistą

Jak zostać programistą to temat bardzo obszerny i warty opisania. Tym razem zajmiemy się tym co mnie akurat pasjonuje, czyli jak zacząć swoją programistyczną przygodę w backendem!

Utrzymujemy Państwa dane w tajemnicy. Więcej informacji można znaleźć w naszej Polityce Prywatności.

Backend to praca bardzo niewdzięczna, bo często nie widać rezultatów tak ładnie jak w przypadku frontu. Wielu moich klientów uważało, że nic się nie zmieniło, bo prace prowadziłem głównie od strony niewidocznej dla użytkownika. Front gdzie były tylko guziki był bardziej widocznym efektem prac niż fakt – że backend nic nie zrobił, tylko wyświetlał w kółko dane demo (mockup).

Wybierając tą drogę będziemy zajmować się problemami i zagadkami. Będą one wymagały od nas bardzo dobrej znajomości nie tylko swojego języka, ale również innych narzędzi.

Jak zostać programistą, więc jaki język programowania wybrać?

Skoro wybraliśmy już swoją ścieżkę to czas wybrać swój język programowania od którego zaczniemy naszą przygodę z programowaniem.

Języki programowania możemy podzielić na kilka rodzajów, np.: języki obiektowe i języki funkcyjne lub języki skryptowe i języki kompilowane.

W ramach języków skryptowych mamy przykładowo: Python, PHP, czy Node.js (+ TypeScript). W językach funkcyjnych mamy np.: Elixic, czy Erlang. Obiektowe języki działające “w wirtualce” to np.: cała platforma .NET (C#, czy Visual Basic), albo Java. Są jeszcze języki bardziej niskopoziomowe jak Golang, Rust, czy C/C++.

Wyborów mamy sporo, ale pamiętajmy o najważniejszej zasadzie! Język to tylko narzędzie i wykorzystujmy je zgodnie z potrzebami. Nie wyobrażam sobie pisania na szybko skryptów w Rust – lepszą opcją będzie Python. Tak samo proste strony dla klienta lepiej napisać w PHP niż w Scala.

Dla początkujących polecę wybór języka skryptowego. Będzie wygodniejszy i łatwiejszy na start, gdyż można szybko uruchomić środowisko, nie trzeba ciągle kompilować i większość opiera się na zasadach podobnych jak jest utrzymywana w konwencji języków C/C++. Golang, czy Rust to też fajne pomysły, jednak ich sposób podejścia do tematu może być na start trudniejszy, bo jednak materiałów dla języków C-podobnych jest więcej, a kompilowanie to kolejna warstwa nauki, która nie jest nam do szczęścia potrzebna.

Jak zostać programistą, gdy wybrałem język? Co dalej?

Praktyka czyni mistrza mówił pewien człowiek o nieznanym mi imieniu. Wymyślmy problem i postarajmy się go rozwiązać. Swoje pierwsze kroki postawiłem w języku PHP i napisanie prostej aplikacji, która będzie pobierała dane z bazy, a następnie je wyświetlała. Świetna opcja na sam początek, by stworzyć swoją stronę internetową – do tego PHP był najłatwiejszą, najtańszą i najwygodniejszą opcją. Innym pomysłem będzie np.: przepisanie narzędzi Unixowych takich jak listowanie katalogu, czy operacje na plikach tekstowych i stworzyć takie narzędzia samodzielnie. W ten sposób poznamy całą gamę podstawowych operacji na plikach, poznamy pętle i warunki. Możemy również np.: dane zrzucić zamiast do ekranu, to do pliku JSON/XML i potem te dane obrabiać w kolejnych krokach. Jest wiele pomysłów, kiedyś postaram się napisać taką listę przydatnych projektów, które możemy zrobić w celach edukacyjnych. Ewentualnie pozostańmy przy ukochanym ToDoList.

Warto również (i nawet nazwałbym to obowiązkowym etapem) zapoznać się z menedżerami pakietów. Nie warto odkrywać koła na nowo i tworzyć przy każdym projekcie te same narzędzia od nowa. Skoro już ktoś stworzył narzędzie, które zmieni nam plik JSON w obiekt – to skorzystajmy z niego. Poza korzystaniem z gotowych pakietów i rozwiązań to polecę zobaczyć jak został napisany. Popularne pakiety są napisane zgodnie z wieloma standardami i pozwolą nam poznać lepiej danych język bez potrzeby uczenia się na swoich własnych błędach, a dobre praktyki wejdą nam w krew poprzez poznanie ich z praktycznej strony, a nie z wertowania wielostronicowych poradników.

Tworzenie paczek samodzielnie również pozwoli nam zaistnieć w świecie open source, poznać opinie o kodzie, może ktoś nam pomoże w rozwoju naszej aplikacji. Programiści to piękna społeczność, która chętnie pomaga innym.

Skoro już wspomniałem o standardach. To podstawa i bez tego nie uda nam się pracować z innymi. Każdy ma swój pomysł na rozwiązanie identycznego problemu i każdy ma swoją wizję projektu. Warto utrzymywać pewien sposób standardu. Takimi standardami są np.: PSR w przypadku języka PHP, a bardziej ogólnymi standardami są np.: KISS, czy SOLID. Planuję o nich przygotować większy artykuł, więc aktualnie pozostawię ten temat niedopowiedziany.

Róbmy oprogramowanie – tylko róbmy to z głową

Skoro już wiemy od czego zacząć, możemy przystąpić do tworzenia prostych aplikacji, skryptów, automatyzować monotonne zadania. W kolejnej części omówimy dalszy etap nauki programowania.

Zapraszamy również do innych materiałów: Jak zostać programistą?

Utrzymujemy Państwa dane w tajemnicy. Więcej informacji można znaleźć w naszej Polityce Prywatności.