Python - Zagubiony wśród sieci.

0

Witam.
Temat taki a nie inny ponieważ jest bardzo "dokładny"
Może zacznę od początku: postanowiłem sobie że chcę być programistą, ot co. Wiadomo, burza mózgów pt "jak zacząć". Po przeczytaniu wielu stron pierwszy krok padł na Python ze względu na to że wielu go poleca na "pierwszy ogień".
Tutaj oczywiście się rodzi problem z którym nie mogę sobie poradzić, nawet po przeczytaniu artykułu "dla początkujących" na tym forum.
Pytanie dosyć proste: jak zacząć? Tyle tych stron sprawdziłem, tyle rzeczy ludzie polecają itd. ale prawde mówiąc nawet nie wiem gdzie się zaczepić. Dla jasności nigdy specjalnie nie miałem kontaktu ze światem programisty ,więc jestem totalnie zielony. Dosyć sumiennie sprawdziłem każdy post z "początkujących" i nie ukrywam, że po prostu nie wiem jak zacząć. Ktoś mówi o książkach, ktoś tam coś poleca, 40 różnych stron i w każdej innej linki które są gdzieś tam kontynuacją. Sprawdziłem ten Codeacademy i wydaje mi się ze chyba nie tędy droga do nauki, chyba że się myle. Na całe szczęście jesteśmy w dobie internetu, tak więc zwracam się do Was. Jako mniej czy bardziej doświadczeni programiści na pewno rzucicie jakieś swiatło na tą sprawę i jakoś "zacznę". Pozdrawiam

0

Na codecademy jest prosty kurs dla początkujących, myślę, że tędy droga.

0

Sprawdziłem ten Codeacademy i wydaje mi się ze chyba nie tędy droga do nauki, chyba że się myle

Można przerobić na początek, ale cudów bym się raczej nie spodziewał. Głowna wada to imho prowadzenie "za rączkę". Często się nie zauważy jak szybko się zaliczyło.
Co do innych źródeł:
Coursera:
https://www.coursera.org/specializations/python
Kursy można brać pojedynczo, płatność nie jest wymagana (chyba że mocno zależy Ci na "papierku").
EdX:
https://www.edx.org/course/learn-program-using-python-utarlingtonx-cse1309x
https://www.edx.org/course/introduction-computer-science-mitx-6-00-1x-8

1

0. Odpowiednie narzędzia

  • Zainstaluj Python 3, ponieważ Python 2.7 za parę lat przestanie być wspierany.
  • Jako IDE polecam użyć PyCharm (jest dostępna darmowa wersja społecznościowa). Super prosty w obsłudze, a jednocześnie bardzo wspomaga tworzenie kodu (podpowiadanie składni, analizowanie pod kątem poprawności i efektywności).

1. Podstawowa składnia pythona

Na początkowym etapie warto poznać wbudowane typu danych: int, str, list, tuple, set, dict (w razie trudność tuple, set, dict można przełożyć na kolejny miesiąc). Niezbędne do poznania są również podstawowe instrukcje (if-elif-else, while, for, break, continue). Jak dojdziesz do tworzenia własnych funkcji to możesz spokojnie przejść do kolejnych kroków.

Informację o pythonie można czerpać z wielu źródeł. Na początek polecam tutoriale, które pokazują, że podstawy są naprawdę proste. Unikałbym grubych książek (nawet tych polecanych), ponieważ trudniej z nimi coś zacząć. Właściwie książki są fajne w szukaniu ciekawostek i uzupełnianiu braków.

Fajne również są gry z elementami programowania, ponieważ nawet na prostych rzeczach widać ciekawe efekty.

2. Wprowadzenie do algorytmów

Teraz, gdy widzisz, że programowanie to rozwiązywanie łamigłówek warto zapoznać się z podstawowymi algorytmiami i detalami struktur, byś znał i świadomie korzystał z ich wad i zalet. To pomoże Ci rozwiązywać jeszcze trudniejsze problemy.

Warto poczytać książkę o algorytmach (niekoniecznie w języku Python, ale składnia i tak będzie podobna), fajnie jeśli na tym etapie dowiesz się czym jest złożoność obliczeniowa i rekurencja. W celu zgłębiania wiedzy o strukturach polecam korzystać z stron, które wizualizują jak one działają np. http://visualgo.net/bst lub na youtube (np. )

Gdy już mniej więcej będziesz miał rozeznanie, wtedy zacznij rozwiązywać zadania. Na początek możesz zacząć z: https://checkio.org, http://www.spoj.com/ albo z zadaniami z konkursów dla gimnazjalistów: http://logia.oeiizk.waw.pl/

**3. To jeszcze nie koniec, to tak naprawdę początek :) **

Na tym etapie dopiero ma sens czytanie poważnych książek o pythonie i programowaniu. Polecam nabyć książkę Python Wprowadzenie IV, bo na rynku jest to najlepsze kompedium na temat samego Pythona. Potem ma sens poznawanie rzeczy z jakimi wiąże się tworzenie większych aplikacji (np. wątki, obsługa grafiki, okien, sieci czy baz). W ten temat super wprowadzeniem jest książka: Zrozumieć Programowanie.

0


Tu masz fajną serie o pythonie, przynajmniej jeżeli zaczynasz.

0

O proszę! Prawdę mówiąc nie sądziłem że znajdzie się tyle sensownych odpowiedzi, spodziewałem się raczej "jak ty możesz nie wiedzieć" itd. czyli hejt. W każdym razie miło mi że dostałem poważne odpowiedzi. Korzystam z Python bodajże 3.5.1 (chyba jakoś tak), tak więc pojawia się kilka różnić odnośnie codeacademic - mój Python. Podejrzewam że tam jest zrobione na podstawie starszej wersji. Również w tych różnicach staram się odnaleźć :)

W każdym razie cóż, ja się zbieram za robote, kompletowanie materiału i w weekend coś zacznę działać "na grubo". Jeśli ktoś ma jeszcze coś w zanadrzu sensownego to jak najbardziej się przyda. Jak najbardziej gorąco dziękuje Wam za pomoc

0

Automate the Boring Stuff with Python! Polecam!

IDLE zamiast PyCharma wystarczy na poczatek..

0

Większość ludzi rozpoczynających przygodę z programowaniem źle do tego podchodzi. Już gdzieś i kiedyś napisałem, że programowanie to nie sztuka sama w sobie. Dowolny język programowania, to tylko swojego rodzaju skrzynka z narzędziami. Bez sensu jest myślenie typu "chcę się nauczyć korzystać z młotka, bo słyszałem, że młotkarze zarabiają ostatnio bardzo dobrze, szczególnie w firmach z zagranicznym kapitałem". Młotek do czegoś służy. Nie dostajesz kasy za machanie nim w powietrzu, ale za realizację pewnego celu za pośrednictwem tego młotka - np. zbudowania domu. Młotek to narzędzie, podobnie jak dowolny język programowania. Nie ucz się programować. Ucz się rozwiązywać problemy i tworzyć nowe rzeczy przy użyciu dostępnych języków programowania. Pomyśl, co chciałbyś stworzyć, co dobrze by wyglądało w Twoim portfolio i świadczyło o Twoich umiejętnościach. Budowlaniec może się pochwalić tym, że świetnie hebluje i wbija 60 gwoździ na minutę w hebanowe słupy, ale ważniejsze jest to, przy ilu i jakich budowach pracował. Podobnie jest z programistą.

Poszukaj informacji na temat tego, co się robi w Pythonie. Odpowiedz sobie na pytanie, co chciałbyś stworzyć, co fajnie byłoby zaprogramować. Wymyśl coś nowego, albo spróbuj zreplikować jakąś aplikację/serwis przy użyciu języka, którym się interesujesz, np. właśnie Pythona. Napisz może jakiegoś CMSa w Django, albo stwórz kalkulator naukowy z GUI naskrobanym w PyQt z wizualizacją wykorzystującą matplotlib. Tego rodzaju rzeczy. Pomysłów jest masa. Możliwości jest masa. Jedynym ograniczeniem jest jedynie brak czasu na wszystko.

0
buffalo42 napisał(a):

Automate the Boring Stuff with Python! Polecam!

IDLE zamiast PyCharma wystarczy na poczatek..

Faktycznie dobra książka ale wydaje mi się że książką zawierającą bardziej obszerny materiał jest Python. Wprowadzenie. Wydanie IV
Trochę kosztuje ale to jedna z lepszych książek dla początkujących ;)
http://helion.pl/ksiazki/python-wprowadzenie-wydanie-iv-mark-lutz,pytho4.htm

0

^
Właśnie dlatego uważam, że Automating the ... jest idealną pozycją na początek bo nie jest obszerna.
W pierwszych 100 stronach którego w max parę dni się przerabia daje dość wiedzy o języku, żeby przesunąć dalsze przerabianie książki w tło robienia jakiegoś własnego mini-projektu jak np. stronka na flasku, competition na kaggle czy skrypt na raspberry (czyli uwazam podobnie jak Gjorni)

Zakopanie się w pozycji 1000+ stron nie jest najlepsze jeśli chodzi o motywacje - nawet jak geek przebrnie to nie sposób zapamiętać większości jak się tego w praktyce nie potrzebuję. Ta książka Lutza to pewnie jedno z najlepszych pozycji, ale dla kogoś kto ma obcykaną dokumentacje pythona, frameworków, bibliotek, naczytał się na stackoverflow i szuka ksiazki do uporzadkowania swojej wiedzy bo chce zrobic z pythona swoj glowny jezyk etc.

edit: jeszcze chciałem dodać, że polecane wcześniej "learning python the hard way" może nie jest dobrym wyborem:

https://www.reddit.com/r/Python/comments/40s6dm/meta_can_we_take_learn_python_the_hard_way_off/

0

+1 Gjorni

Dlaczego nagle wszyscy chcą być programistami? Można przecież zjeść ciasteczko, posiedzieć na facebooku, instagramie i ogladać koty czy inne futrzaki, łapać pokemony... tyle możliwości.

Programowanie to matematyka + matematyka + matematyka + kreatywność + pomysłowość.

Jeśli nie lubisz matematyki to raczej zapomnij o poważnym programowaniu. W ostateczności możesz spróbować w dziale dla mniej rozgarniętych http://4programmers.net/Forum/PHP/ ... ale co to za programowanie to już chyba lepiej ganiać za pokemonami.

0

Dzieki wszystkim za zainteresowanie, naprawdę była to wielka pomoc dla mnie.
Kolego drrrrrrrr. Czy ja tutaj prosiłem a jakies wypowiedzi pt "dlaczego każdy chce być programistą"?. Albo chociaż z czego to się "składa"? Nie, nie prosiłem o to bo mnie to nie interesuje. Temat który założyłem nawiązuje to troszkę innego tematu. Jeśli wolisz jeść ciasteczko i siedzieć na facebooku to twoja sprawa, w ogóle nie rozumiem czemu się znalazło tutaj te dziwne zdanie skoro temat DOTYCZY czego innego.
Myślę że temat można zamknąć, otrzymałem niezbędne informacje bez których chyba bym nie ruszył, jeszcze raz wielkie dzięki! :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1