Jaki język wybrać oraz jak zacząć przygodę z Pythonem

Gdy mój brat po raz pierwszy pokazał mi grę Quake III Arena nie wiedziałem jak bardzo wciągnie mnie dzieło studia id Software. Po wielu godzinach oglądania jak z wirtualnymi przeciwnikami rozprawiają się inni mogłem wreszcie usiąść do gry i spróbować swoich sił na tytułowej arenie. Jednak zamiast wejść w wir walki i cieszyć się świetną rozgrywką ja przypadkowo odkryłem menu wyboru postaci, w którym spędziłem najwięcej czasu. Przesiedziałem długie godziny wybierając postać, której w trakcie gry nie dało się nawet zobaczyć. Podobnie sytuacja wyglądała w innej świetnej grze – Diablo 2. Fascynowałem się animacjami postaci i zastanawiałem, z pomocą którego bohatera powinienem stawić czoła złu.

Niestety początek programistycznej przygody wielu śmiałków wygląda właśnie tak. Spędzamy godziny wybierając język, framework i IDE (do którego oczywiście trzeba dobrać odpowiednią paletę kolorów), zamiast po prostu zacząć programować. Mnogość wyboru bywa przytłaczająca, a pytanie „jaki język wybrać na początek?” jest chyba jednym z popularniejszych jakie pojawia się na blogach i kanałach związanych z programowaniem ;) Dla wszystkich, którzy są znudzeni odpowiedziami „obojętnie” mogę polecić stronę, którą kiedyś podlinkowano na jednej z programistycznych grup, która może pomóc Wam dokonać wyboru – https://jaki-jezyk-programowania.pl

Ja nie miałem problemów z wyborem, gdyż początek mojej drogi programistycznej był nadzorowany przez mojego o 10 lat starszego brata, któremu jestem bardzo wdzięczny za wprowadzenie mnie w ten świat ;) Tematem zainteresowałem się już w gimnazjum. Brat był wtedy studentem informatyki, więc poprosiłem go o nauczenie mnie czegoś fajnego. Zaczęliśmy od HTMLa, po czym płynnie przeszliśmy do nauki PHP. Już na początku liceum zacząłem myśleć o maturze z informatyki, dlatego też porzuciłem PHP aby lepiej skupić się na programowaniu w C++. W drugiej klasie brat pokazał mi Pythona, który od razu mnie zainteresował. Po przerobieniu poradnika CodeAcademy chciałem od razu przeskoczyć na wyższy poziom i zacząłem oglądać poradnik o robieniu strony przypominającej Kickstarter. Gdy zobaczyłem niezrozumiałe dla mnie polecenia wykonywane w CMD przeraziłem się i stwierdziłem, że jest to za trudny język na dany moment. Jak pewnie wiecie, byłem w dużym błędzie, gdyż Python jest jednym z bardziej przystępnych języków ze względu na jego składnię najbardziej zbliżoną do języka angielskiego. Przez większość liceum uczyłem się więc jednocześnie Pythona i C++. Z perspektywy czasu tego nie żałuję, gdyż Python był po prostu przyjemną odskocznią od zadań maturalnych pisanych w Cpp.

Jeżeli jako pierwszy język do nauki wybierzecie Pythona to chciałbym podzielić się z Wami źródłami, które znalazłem i zweryfikowałem podczas własnej nauki.

Materiały w formie wideo:

  • https://pythonprogramming.net/ – znajdują się tutaj poradniki zarówno w formie wideo jak i tekstowej. Świetne tutoriale, które obejmują zagadnienia od podstaw języka, poprzez tworzenie gier, stron internetowych, robotykę czy wreszcie analizę danych i tematy związane z szeroko rozumianą sztuczną inteligencją,
  • https://www.youtube.com/user/thenewboston – Znajdują się tu poradniki zarówno dotyczące Pythona jak i innych języków. Prowadzący ma dość specyficzny styl, jednak można z nich wyciągnąć wiele merytorycznej wiedzy :)
  • https://www.youtube.com/user/derekbanas – tutaj twórca również stworzył wiele poradników o wielu różnych technologiach. Dużą zaletą tych filmów są propnowane „prace domowe”,
  • https://www.youtube.com/user/CodingEntrepreneurs – świetne poradniki szczególnie jeżeli chodzi o Django,

Materiały w formie tekstowej:

  • https://realpython.com/ – Rewelacyjne poradniki obejmujące różne zagadnienia związne z środowiskiem i językiem w obszernych postach wypełnionych po brzegi merytoryczną wiedzą. Ostatnio pojawiają się tam opisujące od A do Z mechanizmy języka i struktury danych. Aktualnie według mnie jest to najlepszy blog w Pythonowym świecie.
  • https://dbader.org/ – Blog autora strony wymienionej wyżej. W przypadku tego jak i poprzedniego bloga szczególnie polecam zapisać się na newsletter, który co jakiś czas przesyła przydatne tricki i ciekawe historie innych pythonistów :)
  • https://www.codecademy.com – Osobiście kurs przerabiałem jakiś czas temu, teraz jedynie go przejrzałem, więc nie jestem pewien czy nadal utrzymał poziom. Dla osób, które dopiero zaczynają przygodę z jakimkolwiek językiem prograwowania może to być dobra opcja na start. Kurs prowadzi użytkownika za rączkę przez składnię Pythona nierzadko wspominając o wbudowanych funkcjach, które rzadko pojawiają się w innych poradnikach.
  • Writing your first Django app – oficjalny tutorial Django. Jest to naprawdę dobry poradnik i zachęcam przerobienie go przed zabraniem się za naukę tego frameworka.
  • https://simpleisbetterthancomplex.com/ – świetny blog, z którego przede wszystkim możemy nauczyć się wiele o Django. Idealnie dopełnia pewne braki w dokumentacji tego frameworka

Książki:

Sam nie jestem fanem nauki prograwmowania z książek, dlatego też nie jestem w stanie polecić ich zbyt wiele.

  • „Python dla każdego. Podstawy programowania.” Michael Dawson – książka przeprowadzi Was od podstaw języka jak i ogólnych zasad programowania aż do tworzeniu prostych, grywalnych gier z wykorzystaniem paradygmatu obietkowego.
  • „Python Notes for Professionals” dostępna za darmo na https://books.goalkicker.com/. Ebook może być raczej traktowany jako ściągawka, jednak jest pełen merytorycznej wiedzy.

Podcasty:

  • https://talkpython.fm/ – podcast szczególnie polecam osobom, które już orientują się w pythonowym środowisku.
  • https://devtalk.pl/ – co prawda o Pythonie pojawił się dopiero jeden odcinek to jest według mnie najlepszy polski podcast programistyczny i z czystym sumieniem go polecam!

Materiały materiałami, nie wolno jednak zapominać, że programowania najlepiej uczymy się… programując! Obejrzyjcie więc kilka poradników a następnie bez strachu i z wiarą w siebie „wskoczcie” w kod i spróbujcie stworzyć coś sami. Gdy napotkacie problem, którego nie dacie rady pokonać sami – googlujcie! Ważną umiejętnością programistyczną jest zadawanie dobrych pytań, które przybliżają do rozwiązania. Wykorzystajmy dobra technologiczne które mamy, cały czas podziwiając programistów Google czy stackoverflow, którzy tak łatwo nie mieli ;)

Dajcie znać z jakich źródeł Wy uczyliście się programowania oraz od jakiego języka zaczynaliście swoją przygodę ;)

3 komentarze

  1. Mega fajny artykuł i zdecydowanie najtrudniejszy bo pierwszy:) Cieszę się, że udało mi się wprowadzić Cię w ten świetny świat IT i programowania i liczę że niebawem zdziałamy coś fajnego :)
    I z niecierpliwością czekam na kolejne artykuły

Leave a Reply

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *