Najlepsze darmowe kursy programowania podczas lockdownu

Chcesz nauczyć się programować, ale nie możesz wyjść z domu. Nie bój się. Możesz wziąć udział w kursach online, które nauczą Cię zasad tworzenia oprogramowania oraz Twojego pierwszego języka programowania. Z mojego doświadczenia wynika, że ​​tak naprawdę nie ma znaczenia, jakiego języka się nauczysz jako pierwszy, więc nie martw się tym. Ważnym krokiem jest nauczenie się myśleć jak programista.

W Internecie dostępnych jest wiele dobrych kursów programowania, ale nie wszystkie są bezpłatne. Na przykład LinkedIn Learning (dawniej Lynda.com) ma kilka dobrych kursów, ale za LinkedIn trzeba zapłacić (po jednym bezpłatnym miesiącu). 

Skupiłem się tutaj na Codecademy i Coursera, ponieważ obie oferują wysokiej jakości kursy z różnych języków programowania, z których można skorzystać bezpłatnie. Jednak są różne. Codecademy uczy koncepcji programowania, przeprowadzając Cię przez interaktywne ćwiczenia. Kursy Coursera, które są oferowane we współpracy z partnerską szkołą wyższą, uniwersytetem lub firmą technologiczną, mają bardziej tradycyjne podejście.

Nie polecam jednego nad drugim. Proponuję wypróbować Codecademy i Coursera i sprawdzić, która z nich działa najlepiej. Możesz bardzo dobrze stwierdzić, że są one komplementarne. 

Codecademy

Codecademy ma poziomy darmowe i pro. Poruszanie się po bezpłatnych kursach bez konieczności przechodzenia na miesięczną lub roczną subskrypcję pro może być trudne, ale jest możliwe, chyba że chcesz podążać ścieżką umiejętności obejmującą wiele kursów, wziąć udział w kursie zaawansowanym lub potrzebujesz dodatkowych zasobów i projektów oferowanych subskrybentom profesjonalnym .

Wprowadzenie do JavaScript

//www.codecademy.com/learn/introduction-to-javascript

JavaScript to język programowania sieci. Możesz go użyć do dodania dynamicznego zachowania, przechowywania informacji oraz obsługi żądań i odpowiedzi w witrynie internetowej. Ta sekwencja kursów obejmuje typy danych i struktury, funkcje i programowanie obiektowe z klasycznym dziedziczeniem w składni ES6. Ten kurs nauczy Cię podstaw JavaScript, których będziesz potrzebować do programowania front-end lub back-end.

Dowiedz się ReactJS: część I i część II

//www.codecademy.com/learn/react-101

//www.codecademy.com/learn/react-102

React to biblioteka JavaScript typu open source do tworzenia interfejsów użytkownika, często do aplikacji jednostronicowych lub do dodawania interaktywnych widoków do istniejących aplikacji internetowych zbudowanych w różnych architekturach. Stworzony i utrzymywany przez Facebooka, jest jednym z najpopularniejszych zestawów narzędzi JavaScript do programowania front-end. Ta para kursów nauczy Cię, jak tworzyć szybkie i wydajne interaktywne aplikacje internetowe za pomocą React. Uwaga dotycząca wymagań wstępnych: Powinieneś już znać JavaScript i podstawowy HTML. 

Naucz się Pythona 2

//www.codecademy.com/learn/learn-python

Python to wszechstronny i nowoczesny język programowania ogólnego przeznaczenia. Świetnie nadaje się jako pierwszy język, ponieważ jest zwięzły i łatwy do odczytania. Możesz go używać do wszystkiego, od tworzenia stron internetowych po aplikacje naukowe. Learn Python 2 nauczy Cię podstaw najszybciej rozwijającego się i najpopularniejszego języka programowania używanego przez inżynierów oprogramowania, analityków, analityków danych i inżynierów uczenia maszynowego. (Python 3 to kurs „Pro”, który wymaga subskrypcji).

Learn Go

//www.codecademy.com/learn/learn-go

Otwarty język programowania Google, Go (Golang), przyciągał coraz więcej uwagi, gdy programiści odkrywają, jak bogaty w funkcje, prosty i szybki jest ten język. Oprócz Google Go jest używane przez Medium, Pinterest, Slack, Twitch i wiele innych firm, a także przez projekty open source, takie jak Docker i Kubernetes. 

Learn Swift

//www.codecademy.com/learn/learn-swift

Swift to potężny i intuicyjny, skompilowany język programowania ogólnego przeznaczenia opracowany przez firmę Apple dla systemów iOS, macOS, tvOS i watchOS. Łącząc szybkość i nowoczesne funkcje, takie jak bezpieczeństwo z założenia, Swift staje się coraz bardziej popularny do tworzenia aplikacji serwerowych w systemie Linux, a nawet jest używany do uczenia maszynowego. Ten kurs rozpoczyna się od podstawowych koncepcji programowania, a następnie zagłębia się w bardziej zaawansowane funkcje języka Swift. 

Coursera

W zależności od partnerskiej uczelni lub firmy, kursy Coursera mogą być całkowicie bezpłatne, mieć miesięczną opłatę po pierwszych siedmiu dniach lub mogą być bezpłatne do audytu, ale wymagają opłacenia czesnego, jeśli chcesz uzyskać zaliczenie. Wybrałem kilka wysoko ocenianych kursów wprowadzających, które możesz ukończyć za darmo. W niektórych przypadkach możesz nie mieć dostępu do ocenianych projektów, chyba że kupisz certyfikat. 

Podstawy Pythona, University of Michigan

//www.coursera.org/learn/python-basics

Ten kurs przedstawia podstawy języka Python 3, w tym warunkowe wykonywanie i iterację jako struktury sterujące oraz łańcuchy i listy jako struktury danych. Pierwszy z pięciu kursów ze specjalizacji programowania w Pythonie 3, Podstawy języka Python jest dla Ciebie, jeśli jesteś nowicjuszem w programowaniu w Pythonie, jeśli potrzebujesz odświeżenia wiedzy na temat podstaw języka Python lub jeśli masz doświadczenie w programowaniu w Pythonie, ale chcesz bardziej dogłębne omówienie i słownictwo do opisywania i rozumowania programów. Jeśli chcesz tylko czytać i przeglądać zawartość kursu, możesz bezpłatnie przeprowadzić audyt kursu.

Informatyka: Programowanie z celem, Princeton

//www.coursera.org/learn/cs-programming-java

Kurs rozpoczyna się od wprowadzenia podstawowych elementów programowania, takich jak zmienne, warunki warunkowe, pętle, tablice i wejścia / wyjścia, a następnie przechodzi do funkcji, kluczowych pojęć, takich jak rekursja, programowanie modułowe i ponowne wykorzystanie kodu, a na końcu programowanie obiektowe. Kurs wykorzystuje język programowania Java, ale uczy podstawowych umiejętności rozwiązywania problemów obliczeniowych, które mają zastosowanie w wielu nowoczesnych środowiskach komputerowych. Innymi słowy, biegłość w Javie jest celem, ale nacisk kładzie się na podstawowe pojęcia w programowaniu. Wszystkie funkcje tego kursu są dostępne za darmo, ale po ukończeniu nie jest oferowany certyfikat.

Wprowadzenie do programowania w MATLAB, Vanderbilt

//www.coursera.org/learn/matlab

Ten kurs uczy programowania komputerowego dla osób z niewielkim lub żadnym doświadczeniem. Wykorzystuje język programowania o nazwie MATLAB, ponieważ MATLAB jest łatwy do nauczenia, wszechstronny i bardzo przydatny dla inżynierów i innych profesjonalistów. MATLAB to język specjalnego przeznaczenia, który jest doskonałym wyborem do pisania programów o średniej wielkości, które rozwiązują problemy związane z manipulowaniem liczbami. (W rezultacie MATLAB jest szeroko stosowany w naukach przyrodniczych, inżynierii, finansach i przemyśle). Niemniej jednak ten kurs nie jest samouczkiem MATLAB, ale wprowadzającym kursem programowania, który wykorzystuje MATLAB do zilustrowania ogólnych pojęć z informatyki i programowania. Jeśli chcesz tylko czytać i przeglądać zawartość kursu, możesz bezpłatnie przeprowadzić audyt kursu.

Computational Thinking for Problem Solving, University of Pennsylvania

//www.coursera.org/learn/computational-thinking-problem-solving

Myślenie komputerowe to proces systemowego podejścia do problemu oraz tworzenia i wyrażania takiego rozwiązania, które może być wykonane przez komputer. Na tym kursie nauczysz się myślenia komputerowego - w jaki sposób informatycy opracowują i analizują algorytmy oraz w jaki sposób rozwiązania mogą być realizowane na komputerze z wykorzystaniem języka programowania Python. Pod koniec kursu będziesz potrafił opracować algorytm i przekazać go komputerowi, pisząc prosty program w języku Python. Jeśli chcesz tylko czytać i przeglądać zawartość kursu, możesz bezpłatnie przeprowadzić audyt kursu.

Przeczytaj więcej o tworzeniu oprogramowania:

  • Najlepsze darmowe kursy programowania podczas lockdownu
  • Co to jest CI / CD? Wyjaśnienie ciągłej integracji i ciągłego dostarczania
  • Co to jest metodologia zwinna? Wyjaśnienie nowoczesnego rozwoju oprogramowania
  • Co to jest API? Wyjaśnienie interfejsów programowania aplikacji
  • Najlepszy język programowania do nauki
  • Najcenniejsze umiejętności programisty w 2020 roku
  • 6 najlepszych języków programowania do rozwoju AI
  • 24 najlepiej płatne role programistów w 2020 roku
  • Pełnoprawny programista: co to jest i jak możesz nim zostać
  • 9 pułapek kariery, których każdy programista powinien unikać