Znajdziesz tutaj informacje dla osób chcących zacząć przygodę z programowaniem.
Informacje te zebrane zostały dla uczestników bezpłatnego webinara Python zorganizowanego przez infoShare Academy.
Najnowsza wersja Python to 3.6.4.
Instalatory znajdują się na stronie https://www.python.org/downloads/.
Oficjalna dokumentacja: https://docs.python.org/3/.
- Tutorial
zawiera krótkie omówienia poszczególnych zagadnień języka - Language reference
opis składni oraz semantyki jezyka - Library reference
opisy funkcjonalności i modułów dostępnych w ramach biblioteki standardowej
Zawiera funkcjonalności udostępnione przez społeczność, jeśli chcesz coś zrobić, to najprawdopodobniej jest do tego napisana w Python biblioteka ;)
pip jest instalatorem pakietów - jeśli znalazła(e)ś coś w PyPI i chcesz to zainstalować, to skorzystaj z pip. pip najprawdopodobniej masz już zainstalowany razem z Pythonem.
Dokumentacja: https://pip.pypa.io/en/stable/.
virtualenv lub venv służą do izolowania różnych "zestawów" Pythona. Pozwala to na istnienie obok siebie różnych wersji tych samych bibliotek.
venv jest dostępny od razu z Pythonem, virtualenv trzeba doinstalować za pomocą pip
- venv
dokumentacja: https://docs.python.org/3/library/venv.html - virtualenv
dokumentacja: https://virtualenv.pypa.io/en/stable/
- infoShare Academy
kursy w Gdańsku, Warszawie, Lublinie, Krakowie, Szczecinie
- Microsoft - Introduction to Python: Absolute Beginner
- Microsoft - Introduction to Python for Data Science
- Automate the boring stuff with Python
- wersja angielska, darmowa online: automatetheboringstuff.com/
- wersja polska, papierowa do kupienia w sklepach n.p.: Helion - 89 zł
- Python. Wprowadzenie. Mark Lutz wyd. O'Reilly: Helion - 149 zł
- jest to książka raczej dla osób, które już trochę rozumieją Pythona
- Full Stack Python - online
- darmowa, j. angielskihttps://www.fullstackpython.com/
- PyCharm Community - bezpłatny
- Visual Studio Code
- Thony
- stworzony na Uniwersytecie w Tartu (Estonia) z myślą o początkujących
- CodeSculptor
- IDE online, pozwala również na tworzenie apliakcji graficznych!
- dokumentacja: http://py3.codeskulptor.org/docs.html
- Python Tutor
- wizualizacja tego co się dzieje w pamięci podczas wykonywania instrukcji
Instalator: https://git-scm.com/
- GitHub - bezpłatne tylko publiczne repozytoria
- GitLab - bezpłatne prywatne repozytoria
- Bitbucket - bezpłatne prywatne repozytoria
- https://try.github.io/levels/1/challenges/1
- https://git-scm.com/videos
- https://backlog.com/git-tutorial/
- https://www.tutorialspoint.com/git/index.htm
Ze względu na swoją uniwersalnośc oraz szybkość developmentu Python jest używany do wielu zadań. Duża i aktywna społeczność wokół Pythona, która tworzy nowe pakiety sprawia, że w większości Twoich potrzeb wystarczy zainstalować pip-em i zaimportować odpowiedni moduł.
Czy wiesz, że w Pythonie jest nawet moduł antygrawitacji?
Wystarczy go zaimportować - wpisz poniższą komendę w interpreterze Python, tylko uważaj!
import antigravity
Żarty żartami, ale czy wiesz że Instagram działa na Python'ie?
Przeczytaj ten ciekawy artykuł, w którym opisano przejście Instagrama z Pythona 2 na Pythona 3:
Instagram Makes a Smooth Move to Python 3
Tworzenie aplikacji webowych.
- Django
- tutorial: https://docs.djangoproject.com/en/2.0/intro/tutorial01/
- tutorial Django Girls: https://tutorial.djangogirls.org/pl/django/
- Flask
Analiza danych, uczenie maszynowe.
- Anaconda - zestaw ponad 150 bibliotek do przetwarzania i analizy danych, analizy predykcyjnej, obliczeń naukowych, wizualizacji.
- dokumentacja: https://docs.anaconda.com/
Analiza zdjęć oraz ruchomych obrazów.
Tworzenie aplikacji okienkowych.
Roboty - pająki, zbierające informacje z internetu, n. adresy email, zdjęcia, artykuły itp.
- Beautiful Soup - wymaga instalacji przez pip
- dokumentacja: https://www.crummy.com/software/BeautifulSoup/bs4/doc/
- tutorial 1: https://automatetheboringstuff.com/chapter11/
- tutorial 2: https://www.dataquest.io/blog/web-scraping-tutorial-python/
Tworzenie inteligentnych kontraktów w jednym z największych blockchain'ów - NEO.
Obecność w sieci jest dzisiaj kluczowa, dobry profil na LinkedIn, czy własny blog sprawi, że rekruterzy sami bedą do Ciebie sie odzywać.
- stwórz swój profil na LinkedIn
- uzupełnij wszystkie informacje
- nie zapomnij o zdjęciu
- dodaj znajome osoby do Twojej sieci - im więcej tym większa jest Twoja widoczność
- załóż bloga, lub własną stronę - wizytówkę
- jeśli decydujesz się na bloga - pamiętaj aby regularnie publikować
- weź udział w konkursie daj się poznać
- forum 4programmers.pl - w tym wątku programiści piszą ile zarabiają
- wynagrodzenia.pl - zarobki programistów Python - mediana 6828 PLN
- wynagrodzenia.pl - ranking zarobków w USA wg. języka programowania - Python na 3 miejscu, roczne zarobki seniora ok 100.000 USD
Najprostsza odpowiedź: pisz kod, dużo kodu.
Ale co?
Najprościej - to co się Tobie przyda:
- szukasz mieszkania - napisz scrappera, który będzie codziennie sprawdzać ogłoszenia, i jeśli znajdzie odpowiednie to powiadomi Cię mailem
- chcesz prowadzić bloga - utwórz aplikację Django
- naucz się korzystać z API - np. wypróbuj API Microsoft Cognitive Services i analizuj obrazy, rozpoznawaj twarze i emocje, rozpoznawaj mowę.
Strony z pomysłami:
- 1000 pomysłow - reddit
- reddit daily programmer - codzienne zadania programistyczne
- karan mega project - lista zadań w różnym stopniu trudności
- Invent with Python Blog - pomysł na wykonanie 49 klonów gier
- Google Code Jam - coroczny konkurs algorytmiczny, na stronie są dostępne zadania z poprzednich edycji, możesz więc sprawdzić się w dowolnej chwili.
- Practice Python - zadania
- w3resource - zadania
-
devstyle.pl - Największy blog w polskim, programistycznym świecie. Maciej Aniserowicz bardzo ciekawie opowiada o dobrych i złych stronach pracy programisty. Sporo uwagi poświęca początkującym programistom. Oprócz bloga, Maciej robi również: