Jak być dobrym programistą

Uaktualnienie: Dodano listę świetnych podcastów programistycznych do nauki w podróży.

Teraz, lepiej niż kiedykolwiek, technologia stała się jedną z najbardziej podstawowych części innowacji we wszystkich branżach. Spowodowało to ogromne zapotrzebowanie na programistów i deweloperów na całym świecie. Piękno technologii polega na tym, że jest ona bardzo dostępna, więc…

NIE MUSISZ BYĆ NAUKOWCEM ROCKET, ABY ZOSTAĆ DOBRYM PROGRAMISTĄ.

Może się to wydawać trudne, ale prawda jest taka… Może być łatwiejsze niż myślisz. musisz tylko czytać, ćwiczyć i włożyć trochę wysiłku. Ale… Czy to nie jest to, co robisz na co dzień?

Pierwsza rzecz. Zanim w ogóle zaczniesz zaprzątać sobie głowę średnikiem (Może teraz tego nie zrozumiesz, ale uwierz mi, zrozumiesz to później 😂 ) będziesz potrzebował dobrego zasobu podstaw informatyki i dobrego edytora tekstu. Even tho there’s quite a lot of them out there, I’ll give you the most trendy ones.

Teach Yourself Computer Science

Ta strona daje ci całkiem dobry punkt wyjścia do nauki o informatyce i programowaniu. Obejmuje ona wiele ważnych, podstawowych tematów i pomaga uzyskać dobre tło w CS.

Git

Git jest systemem kontroli wersji do…Cóż, utrzymywania wersji twojego kodu. Pozwala ci wrócić do innej wersji, jeśli kiedykolwiek coś zmienisz i coś pójdzie nie tak na nowej wersji. Ta strona jest dobrym miejscem do rozpoczęcia nauki git.

Github

Jest to bardzo ważny zasób. Prawie każda firma programistyczna prosi cię o doświadczenie z jakimś systemem kontroli wersji. GitHub to internetowa usługa hostingowa do kontroli wersji przy użyciu git. Jest on najczęściej używany dla kodu komputerowego. Oferuje wszystkie funkcje rozproszonej kontroli wersji i zarządzania kodem źródłowym Git, a także dodaje własne funkcje. Pozwala również na współpracę z innymi programistami. Możesz również użyć go jako statycznego hostingu HTML do przechowywania plików Twojego osobistego projektu. Możesz w rzeczywistości obsługiwać stronę internetową z poziomu Githuba.

Bitbucket

Bitbucket jest taki sam jak Github, minus platforma społecznościowa. Kolejną dużą różnicą między nimi jest to, że Bitbucket pozwala na tworzenie prywatnych repozytoriów, a w Githubie musisz za to zapłacić. Możesz również użyć go jako statycznego hostingu HTML do przechowywania plików osobistego projektu. Możesz w rzeczywistości obsługiwać stronę internetową z Bitbucket.

Naucz się komend

Linia komend jest miejscem, gdzie dzieje się większość magii. Więc to naprawdę ważne, aby zdobyć trochę umiejętności obsługi linii poleceń.

Edytory tekstu:

Słodki stary Sublime. Moim zdaniem, ten edytor jest jednym z najlepszych. Ma mnóstwo wtyczek i snippetów kodu. Jest też naprawdę niezawodny, jeśli chodzi o wydajność i produktywność. Nadal go używam, ale uwielbiam próbować nowych rzeczy, więc ostatnio przesiadłem się na Visual Studio Code. Obsługiwany na: Windows, Mac OS i Linux

Visual Studio Code

Visual Studio Code został opracowany przez Microsoft, mimo że jest dość nowy, trafił do topowych edytorów tekstu 2017 roku. Tak dobrze, że skończyło się przełączanie z Sublime text i muszę powiedzieć, że jest to dość niesamowity edytor tekstu. Do tej pory nie miałem żadnych żalów. Obsługiwany na: Windows, Mac OS i Linux

Atom

Ten edytor tekstu przez Github był moim preferowanym wyborem. Jest naprawdę wspaniały i bardzo łatwy do skonfigurowania. Jedyną rzeczą, która skłoniła mnie do powrotu do Sublime’a jest fakt, że czasami bywa dość powolny i zawieszał się za każdym razem, gdy otwierałem zminifikowany plik. Ale ogólnie jest to przyzwoity edytor tekstu. Obsługiwany na: Windows, Mac OS i Linux

Notepad++

Notepad++ jest podstawowym edytorem tekstu z funkcjami potrzebnymi do napisania przyzwoitego programu. Niektórzy ludzie wolą go z powodu jego prostoty. Osobiście uważam, że jestem bardziej produktywny na odważniejszych edytorach tekstu, takich jak VS code czy Sublime. Obsługiwany na: Windows

VIM

Hakerze, ten jest dla Ciebie. Ten edytor tekstu jest bardziej techniczny i wymaga więcej konfiguracji. Jest on domyślnie zainstalowany na Mac OS i większości systemów opartych na UNIX. Obsługiwany na: Mac OS, Linux i ostatnio na Windows

Pamiętaj: Zawsze możesz użyć edytora tekstu, który wybierzesz. Są to po prostu najlepsze z nich oparte na trendach i moim doświadczeniu.

Z tym, co zostało powiedziane, oto kilka zasobów edukacyjnych, które pomogą Ci rozwinąć umiejętności programowania:

Free Code Camp to darmowa ścieżka nauki programowania dla programistów internetowych i programistów pełnego stosu. Jest to jeden z pierwszych zasobów, których użyłem, aby rozpocząć moją karierę w rozwoju sieci. I naprawdę mi się to podobało. Dostarczają one nawet prawdziwe projekty non-profit, aby wypolerować swoje umiejętności.

Code Academy

Code academy jest właściwie jednym z najlepszych zasobów do rozpoczęcia. Oferuje ona ogólne podstawowe doświadczenie w programowaniu. Posiada również edytor tekstu na żywo bezpośrednio na stronie lekcji, więc możesz ćwiczyć podczas nauki.

Ruby Monk

Ruby Monk jest bardzo dobrym samouczkiem do nauki Rubiego. Oferuje on prosty, bezpośredni kurs dla początkujących i jest naprawdę łatwy do naśladowania.

CodeWars

Code Wars jest naprawdę fajnym sposobem na naukę kodowania. Oferuje Ci możliwość wyostrzenia swoich umiejętności poprzez interakcję z innymi ludźmi w prawdziwych wyzwaniach kodowych.

Railsforzombies.org

Jest to kolejny fajny sposób na naukę programowania, chociaż polecam posiadanie podstawowej wiedzy na temat Rubiego przed wypróbowaniem tej strony. Ta strona pozwala na naukę Rubiego za pomocą interaktywnej gry.

CodeSchool

CodeSchool oferuje bogatą gamę kursów ze ścieżką nauki, która pozwala ci określić, którą ścieżką programowania podążać w oparciu o twoje zainteresowania.

Egghead.io

Ten zasób jest jednym z moich ulubionych. Skupia się bardziej na technologiach tworzenia stron internetowych. Oferuje naprawdę wysokiej jakości tutoriale i kursy kodowania, aby lepiej rozwinąć te umiejętności Javascript.

Udacity

Użyłem Udacity tylko kilka razy, ale dużo o nim czytałem i jest całkiem niezły. Oferują darmowe kursy dla początkujących i to, co nazywają „Nanodegrees”. Nanodegrees wyglądają całkiem obiecująco, są to w zasadzie kuratorskie listy kursów od początkujących do zaawansowanych na konkretny temat. Na przykład, Full Stack Web Developer Nanodegree obejmuje wszystko od, front-end web development do back-end web development. Muszę zaznaczyć, że te Nanodegrees są tworzone we współpracy z dużymi firmami, takimi jak Google, Amazon, IBM i więcej. Teraz, nie wiem, czy te kursy są rzeczywiście warte pieniędzy (ponieważ są drogie), ale planuję wziąć jeden, więc kiedy się do niego dostanę, upewnię się, że napiszę o tym artykuł.

Udemy

Niemal zapomniałem o tym. Udemy jest chyba jedną z najpopularniejszych platform edukacyjnych. Mają ponad 15,000 kursów i są one zazwyczaj dość tanie. Ten zasób jest całkiem dobry, gdy jesteś w pośpiechu i trzeba nauczyć się pewnych umiejętności szybko. Używałem tego zasobu dużo, kiedy byłem w college’u (obecnie mają ponad 80 kursów). Chociaż muszę przyznać, że nie skończyłem każdego z nich 😂.

Devslopes

Devslopes rozpoczął się jako kampania na Kickstarterze i od razu się w nim zakochałem. Oferuje wiele wysokiej jakości kursów programowania z projektami do wykorzystania na swoim portfolio. Jako early backer dostałem szansę przyczynić się do ich projektu i w zamian mam dożywotni dostęp do wszystkich kursów i wersji, które wydają, za darmo. Teraz, jeśli chcesz mieć ten atut, możesz być w stanie go mieć, ponieważ mają zamiar uruchomić Devslopes 2.0 i mieli promocję na to. Nie jestem pewien, czy to nadal dostępne choć. Ale jest to jedna z najlepszych ofert, jakie mam. After all Wiedza jest bezcenna.

Treehouse

Szczerze mówiąc, nigdy nie rozważałem tego wcześniej, ale po sugestii Tomáša Vorela i tygodniach pokazywania się na Facebooku & Reklamy Youtube, postanowiłem spróbować. Muszę powiedzieć, że ten zasób wiedzy jest bardzo dobrze zorganizowany i absolutnie kocham metody nauczania. Oni zawsze mają jakąś wizualną reprezentację dla tematów i ja naprawdę kocham wizualne treści.

BrainFood

Tak, nadal trzeba czytać, jeśli chcesz dostać naprawdę dobry w tym. Jest to najbardziej tradycyjny i czasami najbardziej skuteczny sposób uczenia się nowych umiejętności.

To jest lista książek, które uznałem za przydatne:

Ta książka może być trochę „Nudna”, ale obejmuje podstawy informatyki i algorytmów. Ta książka jest koniecznością, jeśli naprawdę chcesz zrozumieć, jak działa kod i algorytmy.

Cracking the Coding Interview

Ta książka obejmuje ogólny przegląd pytań programistycznych, które mogą być zadane na rozmowie kwalifikacyjnej. I jak do nich podejść.

Innowatorzy: How a group of Hackers, Geniuses, and Geeks Created the Digital Revolution

Ta książka jest bardziej o historii innowacji i technologii. W zasadzie obejmuje ona wszystkich ludzi, którzy w taki czy inny sposób przyczynili się do powstania technologii, dzięki której dzisiejsze innowacje stały się rzeczywistością.

Learn Python the Hard Way

Ta książka jest w zasadzie podręcznikiem. Uczysz się, ćwicząc. Daje Ci wyzwania, które musisz codziennie ćwiczyć. Obejmuje ona bardzo podstawowe tematy dotyczące pythona.

Umiejętności miękkie: Podręcznik życia programisty

Podręcznik życia programisty to wyjątkowy przewodnik, oferujący techniki i praktyki pozwalające na bardziej satysfakcjonujące życie jako profesjonalny programista. Autor porusza w nim szeroki zakres ważnych „miękkich” tematów, od kariery i produktywności do finansów osobistych i inwestowania, a nawet fitnessu i związków, a wszystko to z punktu widzenia programisty.

Zaangażuj się w społeczność

Jest to jedna z najważniejszych części stawania się dobrym programistą. Większość ludzi pomija tę część, ponieważ myślą, że jest bezużyteczna, ale prawda jest taka, że to bardzo pomaga. Będziesz zaskoczony, jak wiele możesz się nauczyć z godziny lub dwóch rozmowy z innymi programistami. Wystarczy podać przykład, w moim pierwszym meetup miałem okazję spotkać się z jednym z deweloperów Advanced Custom Fields (A globaly uznany WordPress plugin dla deweloperów) I rzeczywiście korzystać z tej wtyczki dużo. I udało mi się również zostać członkiem personelu na konferencję Wordcamp Miami 2018 WordPress Conference.

Z tym, co zostało powiedziane, oto niektóre z platform, których używam do meetupów i konferencji:

Ta aplikacja pozwala ci szukać konferencji kodowania w pobliżu.

Meetup

Ta aplikacja pozwala ci szukać konferencji kodowania w pobliżu.

Przestrzenie co-workingowe

Możesz łatwo znaleźć pobliską przestrzeń co-workingową po prostu wyszukując „Co-working space <YourCity>” . Co-working spaces pozwalają na dzielenie się wiedzą z innymi programistami i uzyskanie prawdziwej informacji zwrotnej na temat swojej bazy kodowej.

Playgrounds

Playgrounds to w zasadzie wirtualne edytory do ćwiczeń w podróży, bez potrzeby przeciążania laptopa lub komputera. To pomaga zaoszczędzić czas i stać się lepszym w każdym języku programowania. Najlepszą częścią tych wirtualnych placów zabaw jest to, że możesz mieć do nich dostęp z każdego miejsca.

Cloud9

Ten wirtualny plac zabaw jest w rzeczywistości w pełni funkcjonalnym IDE opartym na Linuksie. co to oznacza? Oznacza to, że możesz robić wszystko co robisz na maszynie linuksowej przez terminal, nawet instalować biblioteki. Ten program bardzo mi pomógł na studiach.

Codepen

Bardzo często go używam. Codepen to Święty Graal dla programistów internetowych. Jest to bardziej społeczność online do testowania i pokazywania stworzonych przez użytkowników fragmentów kodu HTML, CSS i JavaScript.

Glitch

Glitch to prawie taka sama koncepcja jak Codepen. Z wyjątkiem tego, że jest trochę bardziej „przyjazny”. To jest dość potężny, jak również. I still like more Codepen tho.

Orion

Orion jest IDE online do zabawy z Java.

Python Fiddle

Python zyskał dużą popularność w ostatnich latach. Jest to środowisko kodowania dla tych z was, którzy chcieliby dodać pythona do swojego zestawu umiejętności (powinieneś nauczyć się przynajmniej podstaw).

Codeanywhere

Codeanywhere jest wieloplatformowym IDE w chmurze. Umożliwia użytkownikom natychmiastowe pisanie, edytowanie, współpracę i uruchamianie projektów tworzenia stron internetowych z poziomu przeglądarki internetowej i dowolnego urządzenia mobilnego.

Reply.it

Ten został zasugerowany przez Vic A. i muszę przyznać, że wygląda całkiem obiecująco. Ta wirtualna platforma programistyczna pozwala na tworzenie wirtualnych placów zabaw, aby rozwijać, testować, a nawet wdrażać aplikacje. Zawiera również całkiem niesamowitą 🔥 funkcję platformy nauczania z własnym systemem oceniania.

Codesandbox.io

Wpadłem na ten zgrabny zasób, gdy uczestniczyłem w 10 Miami Wordcamp. Jeden z prelegentów użył do demo kodowania na żywo i zakochałem się w nim. Jest to kolejne szybkie i niezawodne rozwiązanie oparte na chmurze do tworzenia prototypów aplikacji w ruchu.

Got Stuck? Zapytaj kogoś

Piękno bycia deweloperem żyjącym w 2018 roku, jest to, że jest wielu ludzi, którzy już przeszli przez większość zmagań, które będziesz miał. Istnieje duża szansa, że ktoś inny miał ten sam problem, który masz z kawałkiem kodu. Chyba, że pracujesz nad kodem zastrzeżonym. A nawet jeśli tak, to powinieneś być w stanie znaleźć wskazówki, jak poradzić sobie z tymi paskudnymi błędami. Teraz, to wszystko jest oparte na moim doświadczeniu.

Tutaj jest lista stron i zasobów, aby pomóc w walce, więc nie skończysz z kryzysem egzystencjalnym, płacząc w kącie. (Nigdy tego nie robiłem 😅🤣):

Stack Overflow

Znany również jako biblia programisty. Stack Overflow jest jedną, jeśli nie, największą społecznością online dla programistów, aby uczyć się, pytać, dzielić się, a nawet znaleźć pracę. Więc upewnij się, że masz ten jeden na swojej ulubionej karcie.

Stack Exchange

Stack Exchange jest prostą stroną z pytaniami i odpowiedziami. Rodzaj forum, aby pomóc ci wyjaśnić te wątpliwości związane z kodowaniem.

Quora

Widzę Quorę bardziej jak pro wersję Stack Exchange. Quora to miejsce do zdobywania i dzielenia się wiedzą. Jest to platforma do zadawania pytań i łączenia się z ludźmi, którzy wnoszą unikalne spostrzeżenia i wysokiej jakości odpowiedzi. To daje ludziom możliwość uczenia się od siebie nawzajem i lepszego zrozumienia świata.

Github

Ponownie, Github jest jedną z najczęściej używanych społeczności internetowych. Korzystaj z niego, ucz się go, dziel się nim i wnoś do niego swój wkład.

Twitter

Założę się, że już o nim słyszałeś. Ale czy myślałeś o użyciu jest jako zasób do nauki i odpowiedzi na pytania? Cóż, pozwól mi powiedzieć, że Twitter, z jego dużą ilością użytkowników, ma dobrą ilość ekspertów w tej sprawie. Wystarczy tweet swoje pytanie i hash tag tag ### to

Reddit

Nie, to nie jest tylko dla Meme’s i gifs. Reddit może być również potężnym zasobem do znajdowania rozwiązań lub nauki nowych technologii. Posiada system wątków, aby lepiej organizować tematy.

Hacker News

Ten zasób jest bardzo prostym źródłem ważnych aktualizacji i wiadomości na temat przemysłu technologicznego. Naprawdę przydatne.

Producthunt

Now, Producthunt… Nie potrafię wyrazić jak bardzo kocham tę stronę. Dosłownie używam jej na co dzień. Nieustannie publikuje listę nowych narzędzi, aplikacji, frameworków, stron internetowych, a nawet gadżetów, których warto poszukać. W przeważającej części jest to wszystko związane z techniką! Więc zawsze masz szansę spróbować i nauczyć się nowych rzeczy. Posiada również sekcję poszukiwania pracy oraz sekcję pytań i odpowiedzi.

Podcasty

Zacząłem słuchać podcastów prawie dwa lata od teraz i jest to jeden z najlepszych zasobów jakie miałem. Dużo jeżdżę i słuchanie podcastów pozwala mi uczyć się w podróży, więc nigdy nie tracę czasu.

Syntaxfm

To mój osobisty faworyt. Prowadzony przez Full Stack Developers, Wes Bos i Scott Tolinski, Syntaxfm jest podcastem „smacznych zabiegów internetowych” z wieloma przydatnymi zasobami i wskazówkami dla programistów internetowych. Obejmują one od frameworków JavaScript takich jak React, do najnowszych osiągnięć w CSS do uproszczenia narzędzi internetowych.

Shop Talk Show

ShopTalk jest podcastem o projektowaniu stron internetowych, rozwoju i UX. Każdego tygodnia do Chrisa Coyiera i Dave’a Ruperta dołącza gość specjalny, aby porozmawiać i odpowiedzieć na pytania słuchaczy.

The Web Ahead

Dość dobre źródło informacji, aby być na bieżąco z najnowszymi trendami w sieci. Rozmowy z ekspertami światowymi na temat zmieniających się technologii i przyszłości sieci. Prowadzony przez Jen Simmons.

Code Pen Radio

Chris Chris Coyier, Alex Vazquez i Tim Sabat, współzałożyciele CodePen opowiadają o tajnikach prowadzenia firmy zajmującej się oprogramowaniem internetowym. Ten podcast to must-have.

Learn to Code with Me

Podcast Learn to Code With Me, stworzony przez Laurence’a Bradforda, jest dla aspirujących techników i samouków kodowania, którzy chcą przejść do branży technologicznej.

Zakończenie

Czytaj, ćwicz, dziel się, pytaj…powtarzaj

To wszystko jest ścieżką nauki. Po prostu zaangażuj się w nią i miej dużo cierpliwości. Nikt nie urodził się ekspertem w tym, co robi. Ja też muszę się jeszcze wiele nauczyć. Pamiętaj, że jedną z najważniejszych części stawania się dobrym programistą, jest faktyczne stanie się częścią społeczności. Więc daj sobie szansę na spróbowanie czegoś innego, idź na spotkanie, poznaj nowych ludzi, zdobądź trochę informacji zwrotnych, skrytykuj trochę kodu i baw się dobrze.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.