Przeglądasz archiwalną wersję wpisu.
  •  
    a....n

    +807

    #python #naukaprogramowania #programowanie

    ###################
    # WSTĘP
    ###################

    Pod wpisem o C++ część osób życzyła sobie podobnego wpisu o tematyce Pythona. Niniejszym więc, prośbę tą spełniam.

    Disclaimer - W tym wpisie NIE poruszam tematyki tworzenia aplikacji internetowych, bo najpierw się trzeba nauczyć samego języka.

    pokaż spoiler Ten wpis będzie z dużą dozą prawdopodobieństwa sporo bardziej subiektywny niż wpis o C++ więc znacznie więcej osób może się z nim nie zgadzać. Mówi się trudno i pisze się dalej.


    ###################
    # JAK SIĘ NIE UCZYĆ
    ###################

    Nie korzystać z materiałów które dotyczą wyłącznie pythona 2.5 lub wersji poprzednich
    Ostrożnie korzystać z materiałów które dotyczą tylko pythona 2.6

    ###################
    # TYLE PYTHONÓW
    ###################

    Zanim przejdę do materiałów trzeba sobie kilka rzeczy uświadomić.
    1. Istnieje wiele wersji Pythona
    2. Najnowsze wersje Pythona (z serii 3.x) nie są kompatybilne wstecznie z serią 2.x
    3. Seria 2.x jest ciągle popularniejsza niż 3.x
    4. Część biblioteki standardowej jest wspólna, nowe części są dodawane tylko do serii 3.x
    6. Część bibliotek dodatkowych działa tylko na 2.x, część działa na obu wersjach, a część tylko na 3.x

    pokaż spoiler Nie było punktu 5


    Teraz trochę wyjaśnień. Na czas pisania tego wpisu istnieją dwie główne wersje pythona:
    2.7.8 i 3.4.2. Stało się tak dlatego, że pewnego pięknego dnia deweloperzy postanowili usunąć funkcje i elementy, które od dawna uznane były jako szkodliwe. Zreorganizować część biblioteki standardowej w pewnych miejscach, ujednolicić jej działanie w innych. Ogarnąć mnogość kodowań tekstu i wymusić na programiście dobre praktyki w przetwarzaniu właśnie takiego tekstu. I pozmieniać wszystkie rzeczy które sekretnie chcieli pozmieniać, ale wcześniej się bali.

    pokaż spoiler Tak, tak zwanie Python Core Developers czyli główni programiści rozwijający język okazali się śmieszkami poza kontrolo.

    To był pamiętny dzień 3 grudnia 2008 roku w którym…

    WAIT...
    WAIT...

    WAT? ( http://img4.wikia.nocookie.net/__cb20140501150431/walkingdead/images/3/3d/Wat.jpeg )

    Tak. Od 6 lat jest problem z której wersji korzystać i jeszcze nie minął. To powiedziawszy, wtedy było znacznie gorzej niż jest teraz.

    Obecnie problem ten jest wyolbrzymiany ponad wszelkie granice godności.

    Na dzień 14 października 2014 roku 165 z pośród 200 najpopularniejszych bibliotek do pythona wspiera Pythona 3. Z pozostałych 35, część nie jest już rozwijana bardzo długo (nie żyją) więc i tak nie należy ich używać, część ma lepsze zamienniki (które wspierają Pythona 3), więc należy używać tych zamienników, a część po prostu nie ma zamiaru nigdy przejść na Pythona 3, bo nie.

    Liczba bibliotek wspierających Pythona 3 przekroczyła 4000, więc śmiało można mówić, że sytuacja z bibliotekami do Pythona jest już bardzo dobra.

    Python 3 ma też bardzo wiele usprawnień, drobnych zmian zwiększających przyjemność kodowania każdego dnia oraz nowych bibliotek otwierających nowe możliwości.

    A będzie tylko lepiej.

    TLDR Jeżeli jeszcze się nie zorientowaliście - jeżeli ktoś teraz zaczyna naukę Pythona, powinien zdecydowanie zaczynać od wersji 3.4.2

    Ewentualne przejście z wersji 3 na 2 (jeżeli ktoś by was kiedyś zmusił) nie będzie wcale tak strasznie bolesne. Są biblioteki (nawet takie wbudowane w wersję 2.7.8) które pomagają pisać kod bardziej kompatybilny i podobny do wersji 3. Na dzień dzisiejszy trzeba (w pracy) znać i wersję 2.7 i 3.4, ale możliwe, że gdy dojdziecie do tego etapu rozwoju/kariery to takiego wymagania już w ogóle nie będzie.

    ###################
    # JAK SIĘ UCZYĆ
    ###################

    W C++ był generalnie wybór i jak ktoś się bardzo uparł to mógł uczyć się tylko po polsku. W Pythonie teoretycznie taki wybór istnieje, ale robisz sobie jeszcze większą krzywdę ucząc się po polsku niż w przypadku C++. Więc albo uczysz się po angielsku, albo strzelasz sobie w stopę. Jak również w drugą stopę, kolana i lewy łokieć.

    **Chciałbym również napisać na początku, bo co mniej ogarnięci gubili się chyba w poprzednim wpisie (o C++) i zarzucali mi rzeczy które nie były prawdą:

    Samo czytanie książek i oglądanie screencastów nie uczyni z nikogo programisty, a nawet nie nauczy dobrze składni. Trzeba, absolutnie i kategorycznie, dużo programować (przeklajanie kodu się nie liczy). Trzeba realizować swoje projekty i analizować kod napisany przez innych programistów.**

    1. Zacznijmy od podstaw:

    Wybór pierwszej książki:

    http://www.amazon.com/Learning-Python-Edition-Mark-Lutz/dp/1449355730/
    to podstawowa pozycja, dobra, do nauki Pythona. Jednocześnie uczy/pokazuje Pythona 2 jak i 3. Jeżeli ktoś chce mieć, w miarę, wszystko w jednym miejscu, to warto się w tą książkę zaopatrzyć. Ważne żeby to było wydanie 5, a nie wcześniejsze.

    http://www.amazon.com/Python-Programming-Introduction-Computer-Science/dp/1590282418/
    Ci którzy znają już jakiś język bardzo dobrze lub studiują informatykę mogą chcieć zamiast książki Lutza wybrać tą pozycję. Jest krótsza, zwięźlejsza i tłumaczy znacznie mniej, szczególnie rzeczy podstawowych. Wydanie drugie zostało zaktualizowane na potrzeby Pythona 3.

    http://inventwithpython.com/
    Jeżeli jesteś #cebula i nie chcesz wydać ani złotówki na pierwszą książkę, jest dla ciebie nadzieja. Al Sweigart napisał książki uczące programować w Pythonie przy okazji tworzenia prostych gier lub poznawania podstaw kryptografii. Oprócz sprzedawania ich na Amazonie, udostępnia je też za darmo na swojej stronie.

    Pozycje obowiązkowe (numer 2, 3 i 4):

    http://www.amazon.com/Python-Cookbook-David-Beazley/dp/1449340377/

    To jest książka która powinna się znaleźć u każdego na półce niezależnie od obranej drogi nauki. Pozycja absolutnie obowiązkowa. Zawiera tonę (kilkaset?) gotowców, podzielonych na kategorię z wyjaśnieniem jaki problem rozwiązują oraz dlaczego tak a nie inaczej. Wydanie trzecie, wspiera oczywiście Pythona 3.

    https://www.jeffknupp.com/writing-idiomatic-python-ebook/

    Ebook z kategorii obowiązkowych. Uczy jak pisać kod uważany za Pythonowy i unikać szkodliwych kalek np. z C++. Jest wersja dla Pythona 3.

    http://www.amazon.com/Python-Practice-Concurrency-Libraries-Developers/dp/0321905636/
    Dobre praktyki, wzorce projektowe, programowanie współbieżne. Warta każdej złotówki.

    Tyle jeżeli chodzi o pozycje obowiązkowe, jest jednak jeszcze parę ciekawych pozycji, które mogę polecić:
    http://learnpythonthehardway.org/book/ - darmowa wersja książki złożonej z praktycznie samych ćwiczeń
    http://anandology.com/python-practice-book/index.html - jeszcze więcej ćwiczeń
    http://www.amazon.com/Python-3-Object-Oriented-Programming/dp/1849511268/ - książka ucząca (i skupiająca się tylko na tym) koncepcji programowania obiektowego na konkretnych przykładach Pythona 3
    http://shop.oreilly.com/product/0636920032519.do - pozycja w trakcie tworzenia, zapowiada się na dobrą książkę o zaawansowanym pythonie.

    Znajomość języka to jednak nie wszystko i jeżeli chcesz być ogólnie kompetentnym programistą polecam poniższe książki:
    Algorytmy:
    http://www.amazon.com/Introduction-Algorithms-Edition-Thomas-Cormen/dp/0262033844/
    http://www.amazon.com/Algorithms-4th-Edition-Robert-Sedgewick/dp/032157351X/

    Wzorce obiektowe:
    http://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612/

    Bazy danych:
    http://www.amazon.com/Database-Design-Mere-Mortals-Hands-/dp/0321884493/
    http://www.amazon.com/SQL-Antipatterns-Programming-Pragmatic-Programmers/dp/1934356557/
    Pozycje nieobowiązkowe, ale najdogłębniejsze - http://www.amazon.com/C.-J.-Date/e/B000AQ6OJA/

    Dobre praktyki i inne:
    http://www.amazon.co.uk/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882/
    http://www.amazon.com/Pragmatic-Programmer-Journeyman-Master/dp/020161622X/
    http://www.amazon.com/Code-Complete-Practical-Handbook-Construction/dp/0735619670/
    http://www.amazon.com/The-Mythical-Man-Month-Engineering-Anniversary/dp/0201835959/

    Nie trzeba przeczytać wszystkiego (ale MOŻNA), niemniej należałoby przeczytać przynajmniej po jednej książce z każdej grupy.

    2. Video (i inne):
    Screencasty / kursy video potrafią sporo pomóc, nie korzystaj wyłącznie z nich, to po prostu kolejna pomoc naukowa.

    http://shop.oreilly.com/product/110000448.do - Dobra seria filmów dla bardzo początkujących, świetny materiał do oglądania na zmianę z czytaniem pierwszej książki i eksperymentowaniem z pierwszymi programami.

    http://learnpythonthehardway.org/ - jest książka złożona z praktycznie samych ćwiczeń oraz seria screencastów pokazujących rozwiązania tych ćwiczeń.

    http://shop.oreilly.com/product/110000667.do - wstęp do algorytmów z użyciem pythona, należy uważać - prezenter pisze sporo kodu który jest uważany za nie-pythoniczny

    http://www.pluralsight.com/tag/python - wiele godnych uwagi serii screencastów ( między innymi uczących podstawowego i zaawansowanego pythona, pisania aplikacji GUI w Qt), ale najważniejsza z nich:
    http://www.pluralsight.com/courses/python-developers-toolkit - to bardzo krótka seria uczący najważniejszych i niemal niezbędnych każdemu programiście pythona narzędzi

    Filmy z ostatnich konferencji (dużo tego, każdy znajdzie coś dla siebie)
    https://www.youtube.com/playlist?list=PLBGl1tVyiWQSVwxne3yOH79uaSqgbnCqL - Kiwi Pycon 2014
    https://www.youtube.com/playlist?list=PLE7tQUdRKcybbNiuhLcc3h6WzmZGVBMr3 - Filmy z DjangoCon 2014
    https://www.youtube.com/channel/UC45KSayx_kwQAnhpaPAuVkw/videos - Filmy z PyGotham 2014
    http://pyvideo.org/category/56/pycon-australia-2014
    http://pyvideo.org/category/55/pydata-berlin-2014
    http://pyvideo.org/category/54/europython-2014
    http://pyvideo.org/category/52/pyohio-2014
    http://pyvideo.org/category/51/scipy-2014

    http://www.codecademy.com/en/tracks/python - to interaktywny kurs pythona w przeglądarcę, nie trzeba nic instalować, wystarczy wykonywać polecenia. Jest całkiem w porządku, ale nie polecam go jako “jedynego” źródła wiedzy o Pythonie, oraz (ostatnio gdy sprawdzałem) nie wspierał Pythona 3.

    3. Wyzwania i potyczki
    TO SUPER WAŻNE żebyś podczas czytania i oglądania programował i nie kopiował gotowego kodu z paczek źródłowych do książek tylko ręcznie pisał, starając się zrozumieć co piszesz. Musisz eksperymentować, wprowadzać własne zmiany, pisać własne projekty i realizować własne pomysły.

    https://warosu.org/data/g/img/0441/94/1410874830625.png - zbiór 100 pomysłów na projekty treningowe aby nauczyć się na nich programowania

    Strony z zadaniami i zagadkami algorytmicznymi, poćwiczą twoje myślenie i niejednokrotnie optymalizację kodu. Miłe oderwanie od innej nauki. Uwaga - nie przesadzać, bo wpadniesz w złe praktyki i spiralę przedwczesnej optymalizacji.

    http://pl.spoj.com/
    http://codeeval.com/
    https://www.hackerrank.com/
    http://www.codechef.com/
    https://www.reddit.com/r/dailyprogrammer

    4. Pozostałe

    Korzystaj z dobrego IDE (lub edytora):
    W kategorii IDE jest PyCharm i później długo długo nic. Należy się z tym pogodzić i nie zaprzeczać rzeczywistości, ponieważ ani Wingware ani Komodo IDE (konkurencja) nie grają w tej samej lidze. Darmowa wersja “Community Edition” powinna jak najbardziej wystarczyć do nauki Pythona.

    Jeżeli IDE uważasz za coś potwornego i zbędnego - to się mylisz, ale nie mam zamiaru cię w tym miejscu przekonywać. Dla takich ludzi jak ty też jest nadzieja. Zarówno dobrze skonfigurowany vim jak i Sublime Text 3 mogą posłużyć za dobry edytor do nauki Pythona.

    Korzystaj z dobrego interpretera:
    Pobierz najnowszą wersję z serii 3 (w tej chwili to 3.4.2) bezpośrednio z:
    https://www.python.org/downloads/

    Znaj narzędzia potrzebne do pracy w dobrym środowisku pythona:
    (uczy tego wyżej już wymienione http://www.pluralsight.com/courses/python-developers-toolkit )
    Pomocny może okazać się też taki podręcznik:
    http://docs.python-guide.org/en/latest/
    Pip - http://pip.readthedocs.org/en/latest/index.html
    Virtualenv - http://virtualenv.readthedocs.org/en/latest/
    Debugger - http://pymotw.com/2/pdb/

    Nauczyć się ładnego formatowania kodu i odpowiedzi na najczęściej zadawane pytania:
    To niezmiernie ważne, szacuje się że ponad 80% kodu napisanego w Pythonie stosuje się do poniższych zasad.
    http://legacy.python.org/dev/peps/pep-0008/
    https://code.google.com/p/google-styleguide/

    Poznaj filozofię Pythona:
    http://legacy.python.org/dev/peps/pep-0020/
    https://gist.github.com/evandrix/2030615

    Naucz się GITa (system kontroli wersji):
    http://git-scm.com/book
    https://try.github.io/
    https://www.atlassian.com/git/
    http://www.git-tower.com/learn/ebook/command-line/introduction

    Publikuj swój kod i czytaj kod innych:
    https://github.com/
    https://bitbucket.org/

    Naucz się języka SQL i opanuj przynajmniej jeden system zarządzania bazą danych:
    O SQL jest 4 tony całkiem niezłych książek, kursów i tutoriali, łatwo znaleźć więc nic konkretnego nie podam.
    PostgreSQL - gorąco polecam - http://www.postgresql.org/
    MySQL (MariaDB) - https://www.mysql.com/
    Oracle - http://www.oracle.com/pl/products/database/overview/index.html

    Interesuj się i bądź na bieżąco:
    https://www.reddit.com/r/learnpython
    https://www.reddit.com/r/python
    https://www.reddit.com/r/learnprogramming
    https://www.reddit.com/r/programming

    Jeżeli prosisz kogoś o pomoc pamiętaj żeby:
    - Wkleić kod na jakieś pastie - np. http://dpaste.com/ , http://hastebin.com/
    - Sprawdzić czy kod faktycznie nie działa -u siebie i np na http://ideone.com/
    - Wklejając fragmenty kodu na wykop używać http://wykop-code.appspot.com/ w celu zachowania czytelności i wcięć
    - Opisać zrozumiale z czym masz problem i czego już probowałeś żeby temu zaradzić
    - Wkleić pełną treść błędu (jeżeli jest długo to na pastie) jeżeli takowy wystąpił

    ###################
    # WOŁAM
    ###################
    Bo zaplusowaliści komentarz o planowaniu tego wpisu

    pokaż spoiler @maitrechocolatier @qubeq @LordRegis @Mis603 @haussbrandt @Analityk @wik5 @peerzet @Kaphadri @rurka_kapilarna @hpiotrekh @Kabotyn @asassello @KrzaQ2 @limpak @szklane_kapcie @repulsive @sobczi11 @brodawojciech @kacpersky @Muszalski @jestempirat @hunterh @kociwymiot @gorush @endriu17 @briskmann @anwaro @tgb @nbzwdsdzbcps @sierzchula @erarez @exile @Gil-Galad @Styrmir @R4vPL @rybak66zuo @JanuszCebulak @FantaZy @Exhumed @bbr247


    pokaż spoiler hiszpańska inkwizycja

    •  

      @aseeon: dzięki! Właśnie robię sobie kurs na codecademy i zastanawiałem się co i jak dalej działać. ( ͡° ͜ʖ ͡°)

    •  

      @aseeon: Planujesz może takie kompendium o Javie lub JavaScripcie?

    •  
      a....n

      0

      @fenomenalnie_miotam: Nie mówię kategorycznie nie, ale jestem w tych tematach znacznie mniej kompetentny, także musiało by tam znaleźć się sporo moich domysłów. ( ͡° ͜ʖ ͡°)

    •  
      J.....1 via Android

      +8

      @aseeon: jesteś boski

    •  
      a....n

      +28

      @JURCZ91: Żona też mi tak, czasem, mówi.

    •  

      @aseeon: Wrzuć to od razu na wykopalisko, będziesz miał bordo ( ͡° ͜ʖ ͡°), a Tobie się należy za pracę.

    •  
      a....n

      +4

      @mactrix: Wrzuciłem już wcześniej ( ͡º ͜ʖ͡º)

    •  

      Dziękuję. Dużo tego :/ Nie wiedziałam, że Python taki potrzebny (strony statyczne?). Zaczęłam go przerabiać w sieci, ale tylko w celu orientacyjnym. Docelowo raczej PHP.

    •  
      a....n

      +7

      że Python taki potrzebny (strony statyczne?)

      @moon5: Że co proszę słucham?

    •  

      @aseeon: Do aplikacji webowych. Strony statyczne. I do czego jeszcze? Jeśli masz ochotę, możesz powiedzieć...

    •  

      @aseeon: Niewątpliwe ma Python swoje zastosowania, jeśli tyle materiałów do nauki :)

    •  

      @aseeon: Rozumiem, że nie będzie wyjaśnień. Nie trolluję, nieprecyzyjnie się wyraziłam. Nie blokować.

    •  
      a....n

      +5

      @moon5: No chodziło mi o to, że python nie jest do stron statycznych, no chyba, że do generowania ich programistycznie z jakiegoś markdowna.

      Jest do aplikacji internetowych, programowania sieciowego, pisania programów konsolowych/narzędziowych, przetwarzania tekstu (danych), automatyzacji systemów, uczenia maszynowego (i w ogóle całego "Data Science" w tym wizualizacji i statystyki), rozpoznawania obrazów, programowania raspberry pi, bioinformatyki, przetwarzania języka naturalnego, kryptografii i testowania (zarówno innych aplikacji okienkowych jak i stron).

      Jest też sporo rejonów w których służy do oskryptowywania, np w takich programach do grafiki jak Blender, Maya czy Houdini. Sporo ludzi używa go też przy testowaniu zabezpieczeń jakichś serwerów, programów czy stron.

      Jest też całkiem w porządku w aplikacjach okienkowych i grach 2d.

    •  
      p......y

      +5

      jeżeli ktoś teraz zaczyna naukę Pythona, powinien zdecydowanie zaczynać od wersji 3.4.2
      @aseeon: a potem pójdzie do pracy, gdzie cała baza kodu śmiga na Pythonie 2.6 ( ͡° ͜ʖ ͡°) #truestory

    •  
      a....n

      +8

      @paffnucy: Jak śmiga na 2.6 to powinien iść natychmiast gdzie indziej :)
      No ale cóż, zdarza się.

    •  

      Komentarz usunięty przez autora

    •  

      @aseeon: Dziękuję.

      Najpierw zetknęłam się z Pythonem, gdy trafiłam na stronę "Get Pelican" http://blog.getpelican.com/. Poczytałam i zdziwiłam się, że robi się strony statycznie (mam trochę obycia z PHP i Wordpressem).

      A jakiś czas temu zrobiłam kilka pierwszych lekcji na Codecademy, aby poznać prawdziwe programowanie, skoro podobno Python takie prosty. Planowałam zrobić podstawy Pythona. I może zrobię.

    •  
      p......y

      0

      @aseeon: Dwa tygodnie temu zmieniłem pracę i ilość kodu jest na tyle duża (w stosunku do ilości pracy przy niedoborze programistów), że nie ma czasu na przepisywanie kodu na 3.x :> i co teras?

    •  
      a....n

      +6

      @paffnucy: Nie skumałeś. Jak nie jest na 2.7 to już jest po prostu ekstremalne lenistwo i niedbalstwo i/lub coś naprawdę starego. Poza tym nie ty jeden musisz żyć z Legacy kodem, takie życie programistów od zarania dziejów.

    •  
      p......y

      0

      @aseeon: To nie jest kwestia niedbalstwa - kodu jest na tyle, że trzeba by co najmniej tygodni na dostosowanie tego do nowszej wersji, a ze względu na posuchę na rynku nie ma kto się tym zająć :) Poza tym - ja nie narzekam.

    •  
      a....n

      +2

      @paffnucy: Narzekasz ( ͡° ͜ʖ ͡°)
      A do tego niejako zniechęcasz do wybierania Pythona 3! A przecież prawda jest taka, że i tak najwięcej człowiek się uczy w pracy, więc znając pythona 3, w pierwszej pracy się może dostosować do 2, jeżeli tylko będzie taka potrzeba.

    •  
      p......y

      +1

      @aseeon: Nie narzekam, nie zniechęcam ( ͡° ͜ʖ ͡°)
      Uważam, że najlepiej uczyć się 3.x, ale jednocześnie zdawać sobie sprawę z różnic, żeby w razie potrzeby (a kodu pod 2.x jest jeszcze całe mnóstwo) umieć sobie poradzić. Dziękuję za uwagę :)

    •  
      a....n

      +1

      @paffnucy: No to w takim razie popieram.

    •  
      s......r via iOS

      +7

      Ponownie pierdyliard plusow, wykopow i @wykop'owe odznaczenie nalezy sie @aseeon :) gj

      Sorry, ze tak wcinam we wpisie dot. Pythona, ale jezeli kiedykolwiek zdecydowalbys sie na chociaz male "rozwiniecie" poprzedniego wpisu z C++ o jezyk C, to bylbym bardzo tym zainteresowany, zapewne jak czesc info-Mirkow majacych na pierwszych semestrach wlasnie ten jezyk.
      Mam nadzieje, ze polecana kiedys na mirku ponizsza ksiazka jest dobra do nauki od zera:

      źródło: embed.jpg

    •  
      S.....u via Android

      +23

      @aseeon: A ja napiszę, że twój poradnik może tylko zrazić do Pythona i doprowadzić do frustracji.
      Początkujący powinien na początku korzystać wyłącznie z kursów. Na początku oczywiście trzeba skorzystać z codecademy.com, żeby nauczyć się składni. Dzięki Coursera.com złapałem mocne podstawy, a także nauczyłem się pisać aplikacje okienkowe i Udacity, które jest bardzo przydatne, bo nauczyło mnie podstawy programowania obiektowego - lepiej wytłumaczone niż na codecademy.com.
      Z książek na razie przeczytałem najwyżej dwie strony.
      Learn Hardway - jak ktoś zamierza robić tam ćwiczenia to rozwiązanie może znaleźć na YouTubie. Nie pamiętam nazwy kanału, ale gość dokładnie omawia co i jak.

    •  

      @aseeon: Przerobiłeś wszystkie materiały z tych linków? Przeraża mnie wizja otworzenia ich wszystkich ;) Moja przygoda wyglądała trochę "od dupy strony", jednak wydaje mi się, że najłatwiej jest uczyć się jeśli mamy jakiś cel. Od zawsze miałem pomysły na aplikacje/serwisy www jednak nigdy ceny wdrożeń nie były na moją rękę.

      Moja przygoda z programowaniem zaczęła się od Pythona, no znałem podstawy JS, a raczej jQuery. Wybrałem Pythona bo Django, znalazłem poradnik video, w którym były podstawy Django, dołożyłem do tego prosty tutorial z django.pl i ciągle sięgałem do "Zanurkuj w Pythonie". Odpowiedzi na wszystkie problemy jakie spotykałem po drodze znalazłem na stacoveflow - od tych banalnych po naprawdę skomplikowane. Czasem były problemy, nad którymi siedziałem kilka dni, a po rozwiązaniu dochodziłem do wniosku, że pytania jakie zadawałem wyszukiwarce były źle sformułowane.

      Jeśli chcecie zacząć programować w czymkolwiek to wymyślcie sobie jakiś projekt - jakiś użyteczny, coś co się przyda i po prostu zróbcie to. Poznajcie podstawy języka z jednego, dwóch tutoriali i nauczcie się zadawać celnie pytania, a odpowiedzi są na wyciągnięcie ręki.

      Swoje pytania musicie zadawać szczegółowo - od szczegółu do ogółu. Na końcu przygody sami zaczniecie sięgać do dokumentacji Pythona i nic więcej nie będzie Wam potrzebne.

      pokaż spoiler P.S. Gdybym miał kupić te wszystkie pozycje z amazona to taniej byłoby wrócić do kroku pierwszego i wszystko co zrobiłem sam dać napisać komuś innemu.

    •  

      @aseeon: Plus za Komodo

    •  

      @aseeon: czy twoim zdaniem nauka pythona ma sens jeżeli zawsze mocno siedziałem w javie i raczej tutaj starałem się rozwijać od dłuższego czasu? Chodzi mi o to czy znajdę w pythonie coś czego nie ma w javie i na odwrót czy java ma coś czego nie ma python? Chciałbym znać kilka narzędzi, ale nie wiem czy w tym wypadku nie zdubluję jednego z toolsów;d

    •  

      Komentarz usunięty przez autora

    •  
      i..........r

      +1

      @aseeon: Cóż za obrzydliwa propaganda Pythona trójki ( ͡° ͜ʖ ͡°) Tylko 2.7!

    •  
      z..........3

      0

      Komentarz usunięty przez autora

    •  

      @aseeon: Bez @ nie działa wołanie.

      pokaż spoiler Nikt się nie spodziewa.

    •  

      @aseeon: Dziękuję za poradnik.

    •  

      Planowałam zrobić podstawy Pythona. I może zrobię.

      @moon5: moja dziewczyna działa w PyLadies: https://www.facebook.com/pyladiespl
      może Cię to zainteresuje :)

    •  

      taktyk

    •  

      Na początku oczywiście trzeba skorzystać z codecademy.com

      @Sudokuu: Nie ma nic gorszego niż na samym początku siąść do nauki wraz z internetem. Nawet nie chodzi i motywację. Tylko książka.

    •  
      J.....1

      0

      @aseeon: Lepiej uczyć się na Windowsie czy Linuksie? Jaka będzie przewaga jednego nad drugim?

    •  

      @aseeon: Wielkie dzięki, właśnie zaczynam przygodę z kodowaniem i mam zamiar zacząć własnie od Pythona, mam nadzieję, że to dobry wybór :)

    •  

      taktyk

    •  
      c...o

      0

      @aseeon: Nie lubię pythona ale niech będzie. Tekst całkiem, całkiem. Fajny obrazek z setką zadań.

    •  

      Taktyk

    •  
      r..h via Android

      0

      @aseeon: plus wchuj. Dzięki wielkie!

    •  
      a....n

      +2

      A ja napiszę, że twój poradnik może tylko zrazić do Pythona i doprowadzić do frustracji.
      Początkujący powinien

      @Sudokuu: OK, ale uargumentuj może co, bo rzucanie takich twierdzeń oraz głoszenie wyższości codeacademy i coursery (o której przyznaje się, zapomniałem, a są tam 2 dobre kursy pythona) nad książkami bez jakichkolwiek argumentów to sobie można między bajki włożyć.

      Przerobiłeś wszystkie materiały z tych linków? Przeraża mnie wizja otworzenia ich wszystkich
      @mirasek: Przerobiłem wszystko książki do Pythona które tutaj polecam oraz sporo książek z grupy "Znajomość języka to nie wszystko". Ale nie nastawiaj się na otwieranie ich wszystkich, a tym bardziej nie na raz. Krok po kroku. Zacznij od książki numer 1, jakichś materiałów dodatkowych

      czy twoim zdaniem nauka pythona ma sens jeżeli zawsze mocno siedziałem w javie
      @sztilq: nie ma na to łatwiej odpowiedzi, python to zupełnie inny styl niż Java. Napisałem wyżej do czego jest Python dobry i jeżeli któreś z tych zagadnień jest dla ciebie super interesujące to Python może być dobrym wyborem. Do tego Python nadaje się do prototypowania praktycznie każdego rodzaju aplikacji, więc szybko zobaczysz co działa, a co nie. Pisząc więc właściwy kod w Javie będziesz już wiedział co od razu naprawić.

      moja dziewczyna działa w PyLadies (...) może Cię to zainteresuje :)
      @peradon: Mówisz, że może zainteresuje mnie twoja dziewczyna? A tak poważnie to znam PyLadies, że tak powiem, bo bywają na PyConiePL :>

    •  
      S......s

      +2

      Dzięki Coursera.com złapałem mocne podstawy, a także nauczyłem się pisać aplikacje okienkowe i

      @Sudokuu: niestety tylko wydaje Ci się, że się nauczyłeś :-) I prawdopodobnie nie masz pojęcia jak bardzo na początku swojej drogi z nauką jesteś. Chcesz tego czy nie, jeżeli myślisz o tym poważnie to książek tematycznych w swoim życiu będziesz musiał przeczytać sporo.

      @aseeon: jak zwykle bardzo dobrze, zostawiam okejkę ( ͡° ͜ʖ ͡°)

    •  
      a....n

      +3

      jak zwykle bardzo dobrze, zostawiam okejkę

      @Skarfejs: no masz mnie, specjalnie piszę te teksty żebyście ty i @msq mogli mnie zaplusować. Tylko po to ( ͡° ͜ʖ ͡°)

    •  
      m.q

      +1

      Tylko po to

      @aseeon: Zebys trafilw gorace / hity / whatever. Bo takie wpisy sa tego warte.

    •  

      Komentarz usunięty przez autora

    •  
      S......s

      +2

      @aseeon: teraz zrozumiałem dlaczego zobaczyłem ten wpis tak późno i to na niezalogowanym urządzeniu. Dorzuciłeś tag #cebula :-P Sugerowałbym nie dodawać takich wstawek, bo sporo osób zmęczonych wykopową nowomową może mieć to na czarnej ;-)

    •  

      @aseeon: kozacko, dzięki ! :))

    •  

      @aseeon: Dzięki śliczne! Taki zarys dużo ułatwia. Jakbyś miał chęci i czas to mile widziane pisanie apliacji internetowych w Pythonie ;-)

    •  
      S.....u

      +1

      @Skarfejs: Nie wydaje mi się, że się nauczyłem, wciąż uważam się za początkującego. Wpis @aseeon: jest bardziej dla tych, którzy podstawy jakieś mieli, a nie dla zupełnie zielonych, którzy zaczynają przygodę z programowaniem.

    •  

      @aseeon: to i ja pytanie zadam: co to oznacza dla Eve online (taka excelopodobna gierka o statkach kosmicznych), ze jest napisana w "stackless pythonie" i co to tak ogólnie jest ten stackless python?

    •  

      Polecam jeszcze zapoznanie się z http://www.checkio.org . Jest to gra polegająca na rozwiązywaniu problemów algorytmicznych w Pythonie.

      Po rozwiązaniu zadania "po swojemu" warto spojrzeć na najlepiej oceniane solucje. Nauczyłem się dzięki temu sporo o niuansach języka i potężnych potężnych narzędziach jakimi dysponuję.

    •  
      S......s

      0

      @Sudokuu: w sumie przyznam Ci rację. Jak ktoś jest zwykłym użytkownikiem komputera z przeciętnym angielskim i wpadnie na pomysł nauki programowania to faktycznie, może nie wiedzieć w co włożyć ręce.

    •  
      a....n

      +1

      @Zakarin: Znam Eve Online, grałem nawet! Trzeba tutaj uściślić, że nie renderowanie grafiki, a przede wszystkim całe programowanie sieciowe jest tam napisane w Pythonie. Stackless Python to alternatywna implementacja Pythona która poprawia programowanie na wielu wątkach. Oznacza to mniej więcej tyle, że Python dźwiga komunikację i ekonomię w Eve Online.

    •  

      @aseeon: komunikację pomiedzy serwerem a klientami czy takim zwykłym radosnym spamem? I jeśli to drugie, to czemu jest to często "wyciągane" przy dużych bitwach jako powód tidi, ograniczenia pojemności systemów, lagow i całego zła?

    •  

      @aseeon: hm, chyba troszkę się rozkojarzyłeś, widziałeś do kogo się zwróciłem? ;)

    •  
      a....n

      0

      Komentarz usunięty przez autora

    •  
      a....n

      +1

      @Zakarin: Klientem a serwerami na pewno, nie orientuje się jak jest zrobiony czat w grze. A co do dużych bitew, tych naprawdę dużych, to nikt nie jest na to gotowy, w żadnej znanej mi grze. No i rozmywanie czasu ratuje sytuację.

      @peradon: Faktycznie, przepraszam :D

    •  
      L..........u

      0

      TAKTYK

    •  

      @aseeon: Dałbyś radę nauczyć Pythona kilkulatka? Podobno Hindusi to potrafią bo słyszałem o pięciolatce co wygrała jakiś konkurs dla dzieci.

    •  
      a....n

      0

      @Adrian00: Nie wiem. Dowiem się jak moje dziecko trochę podrośnie. Pewnie nie każdego kilkulatka się da, ale wiem, że jest troszkę materiałów do nauki programowania w Pythonie dla dzieci:
      http://www.nostarch.com/pythonforkids (teoretycznie dla 10-latków, więc uzdolniony kilkulatek spokojnie da radę).
      W bibliotece standardowej jest moduł turtle i jest do niego gui w postaci http://pythonturtle.org/ - programowanie przez poruszanie żółwiem

    •  

      @aseeon: A co powiesz o klockach LEGO?

    •  
      t.......2

      0

      @aseeon: cześć, nie mam nic wspólnego z informatyką, ale chciałbym zadać Ci kilka pytań:
      1) gdybym chciał się przekwalifikować i zwolnił z pracy, to dysponując bardzo dużą ilością wolnego czasu ile tygodni / miesięcy musiałbym poświęcić, aby ktoś zechciał zatrudnić mnie na stanowisku osoby programującej w pythonie? dodam, że bardzo dobrze znam język angielski
      2) w jakie projekty zaangażowane są osoby piszące w tym języku i jak duże jest na nie zapotrzebowanie na rynku pracy?
      3) jak przedstawia się kwestia wynagradzania informatyków kodujących w pythonie w porównaniu do osób piszących w innych językach? Słowem gdybym chciał zacząć uczyć się jakiegoś języka programowania, to który powinienem wybrać, aby móc liczyć na najlepiej płatną pracę?
      pozdrawiam

    •  
      a....n

      +1

      @tobiasz22:
      1) Nie da się odpowiadać na takie pytanie dokładnie. Generalnie jednak nie tygodnie/miesiące, a miesiące/lata. Jak jesteś zdolny to może i w pół roku dostaniesz pracę, a może w rok, być może zabierze ci to dwa lata.
      2) Zapotrzebowanie duże, a projekty to zwykle aplikacje internetowe, programowanie sieciowe, Data Science razem z Big Data.
      3) Kwestia wynagrodzenia przedstawia się tak, że zależy od tego co umiesz i jak się zaprezentujesz. Szacunkowo można wyciągnąć między 2-5 tysięcy w pierwszej pracy, 5-10 tysięcy gdy złapiesz już kilka lat doświadczenia (2-4), i 10-15 tysięcy gdy już będziesz prawilnym seniorem z 5-6 letnim stażem. Powyżej 15 to wiadomo, najlepsi specjaliści, duży staż pracy albo bardzo szerokie umiejętności poboczne.

    •  

      @aseeon: Czy według ciebie warto bardziej "zagłębiać" się w Pythona, jeśli traktuje się go jako język, który ma nauczyć podstaw? Na ten moment kończe kurs na codecademy i podoba mi się ta "idea" programowania, tzn. zaplanuje coś napisać i metodą prób i błędów się to udaje, jeśli czegoś nie wiem to doczytam itd, ale nie jestem pewnien czy Python to "ten" język, jednak nie wiem też kiedy będzie właściwy moment, żeby zacząć uczyć się drugiego.

    •  
      a....n

      +2

      @morsisko: Według mnie warto zagłębić się w Pythona jako pierwszy język i poznać go bardzo dobrze, nauczyć się z nim programowania obiektowego, sieciowego i baz danych. Nikt ci nie da rady powiedzieć czy to "ten język". A zacząć uczyć drugiego języka możesz wtedy kiedy będziesz miał ochotę, albo bardziej pragmatycznie, wtedy kiedy będziesz miał potrzebę, bo np Python ci do czegoś nie wystarczył.

    •  

      @aseeon: u mnie problem jest tego typu, że nie potrafię sobie określić wyznaczonego celu do którego chce dążyć w danym języku. python wydaje sie być bardzo ciekawym językiem stosunkowo prostym, w samej składni do ogarnięcia, lecz nie wiem czy to co oferuje, mam na myśli rzeczy które mogę w nim tworzyć są dla mnie odpowiednie, tak jest też z każdym innym językiem za który próbuje sie zabrać..

      ciągle przeczytam coś nowego to mnie zaczyna interesować, robie w tym przez jakiś czas, potem znowu cos innego i takie błędne koło. chciałbym w końcu skupić się tylko na jednej rzeczy i w tym danym kierunku sie rozwijać, nie wiem masz może jakąś odpowiedź na moje nurtujące pytanie, albo spotkałeś sie z czymś podobnym?

    •  
      a....n

      0

      @szklane_kapcie: Spotkałem się, właśnie poszukuje "drugiego języka" na jakim chciałbym się skupić, ale przeskakuje z jednego na drugi jak pokopany - jakbym rozwiązał kiedyś ten odwieczny problem to ci dam znać ( ͡° ͜ʖ ͡°)

      Tak czy siak, wygląda na to, że powinieneś sobie najpierw odpowiedzieć na pytanie co chcesz tworzyć.

    •  

      @aseeon: wlaśnie swoje główne rozterki mam miedzy:
      - java i potem przejściem na pisanie apek na andorida/ios
      - python, a potem django apki internetowe, albo coś sieciowego.

      pokaż spoiler chyba zostaje mi rzut monetą. ( ͡° ͜ʖ ͡°)

    •  
      a....n

      +4

      @szklane_kapcie: ( ͡° ͜ʖ ͡°)
      from random import choice
      print(choice(['Java''Python']))

    •  

      from random import choice
      print(choice(['Java', 'Python']))


      @aseeon: o nie wyszla dzava, a potem 6 razy z rzędu pajton :C

    •  
      a....n

      +2

      @szklane_kapcie: To statystycznie musisz sam zdecydować ( ͡° ͜ʖ ͡°)

    •  

      @peradon: Dziękuję za link. Nie wiem, czy będę się zajmować programowaniem czy samym webdesign/webdev (na obecnym lub wyższym poziomie), ale może się przyda.

    •  
      T.............y

      0

      @aseeon: Kolejne świetne omówienie, dzięki że Ci się chciało :)

      Ewentualne przejście z wersji 3 na 2 (jeżeli ktoś by was kiedyś zmusił) nie będzie wcale tak strasznie bolesne.

      Przejście z 2 na 3 też ciężkie nie jest, a z tego co uświadczyłem masa fajnych darmowych materiałów jest właśnie przygotowana pod 2 i nie ma co zbytnio ludzi odstraszać przynajmniej na początku bo wielkich konsekwencji to nie powoduje.

      Ze stronek z zagadkami algorytmicznymi można jeszcze polecić dedykowane dla pythona

      http://www.pyschools.com/
      http://www.checkio.org/

      I wspomniałbym też o świetnych kursach na EDX odnośnie wstępu do programowania w oparciu o pythona. Wiele razy już szły w cyklu i były bardzo chwalone i polecane (podajże oznaczone 6.x.x).

      Można liczyć na jakieś rozwinięcie odnośnie wejścia w django, jak się przygotować i co umieć by w ogóle zaczynać?:)

    •  
      a....n

      +3

      Można liczyć na jakieś rozwinięcie odnośnie wejścia w django

      @TowarEksportowy: Tak, kiedyś pewnie napiszę coś podobnego o materiałach do web devu w Pythonie.

    •  

      @aseeon: już zaczynam od jutra

    •  
      a....n

      +4

      @sometwo: Lepiej byś zaczął od dzisiaj :)

    •  

      @aseeon: taktyk

    •  

      @aseeon: Dla użytkowników Visual Studio istnieje darmowa wtyczka Python Tools, która działa również z darmowymi wersjami Express (2013 for Desktop, for Web); najważniejsze ficzery to podpowiadanie składni, debugowanie, wsparcie dla klasycznego Pythona i IronPythona oraz Django.

    •  

      Jeśli ktoś zaczyna nieoceniony jest interaktywny kurs na udacity.com i profesor Dave. Coś podobnego do codeacademy tyle, że o 2 ligi wyżej jeśli chodzi o interaktywność, ogrom przekazanej wiedzy i poziom nauczania. Bardzo mocno wciąga.

    •  

      tyktak

    •  

      @silverm: A ten kurs na udacity jest bezpłatny? Zalogowałem się z ciekawości, ale z tego co widzę większość rzeczy jest płatna, a cena nie jest mała (no chyba że weźmiemy to słynne 15k pln/mies po ukończeniu kursu... ( ͡° ͜ʖ ͡°) )

    •  

      @botul: To ten kurs: https://www.udacity.com/course/cs101
      Faktycznie teraz jest płatny i to nie tani, ja go ukończyłem w zeszłym roku, wtedy jeszcze było za free.

      Kurs był naprawdę wysokiej jakości, nie do porównania z żadnym innym typu codacademy czy coursera. Czy warty $199/month? Jak na polskie warunki ekonomiczne to według mnie stanowczo za dużo.
      Lepiej zarejestrować się na udemy.com czy PluralSight i poczekać na jakieś promo, często mają SALE 90% OFF itp.

    •  

      @silverm: Kursy Udacity są bezpłatne. W przypadku niektórych płaci się za tzw. "full course experience". Szczegóły są w FAQ

    •  

      @botul:
      @Kadwa ma rację, kursy są jednak nadal bezpłatne, także nie zastanawiaj się i zacznij działać - 15k pln/mies nigdy nie było tak blisko w zasięgu ręki ( ͡° ͜ʖ ͡°)

    •  

      Wtrącę swoje 3 grosze.

      Pythona uczyłem się sam, i sam się uczyłem jak się go NIE uczyć. Może komuś się przyda.

      -jak ktoś Ci mówi, żeby używać jakiegokolwiek IDE, zastrzel go. Najlepsze, co istnieje do pythona (do małych i średnich projektów), to Sublime Text 3 + Anaconda + Git. Nie ma potrzeby używania niczego więcej. I nie jest to tylko moje zdanie, wiem to od lepszych od siebie. IDE jest fajne do dużych projektów. Dużo ludzi za bardzo skupia się na dostosowywaniu i szukaniu lepszych narzędzi pracy, zamiast samej pracy. Edytor tekstu włączasz i piszesz.

      -nigdy nie będziesz wiedział wszystkiego i nigdy nie będziesz czuł się wystarczająco pewnie, by zacząć pisać. Znam kilka osób, co przeczytało 1000 stron zanim zdążyło napisać 1000 linijek. Nie próbuj więc "zrozumieć" książek, które czytasz. Wymyśl projekt do napisania i wracaj do czytania wtedy, kiedy brakuje Ci wiedzy. By napisać "Hello World" nie potrzebujesz 3 tomów literatury.

      -dokumentacja to najlepszy przyjaciel. Wracaj do niej często. Jak nie rozumiesz nic, ani nie potrafisz znaleźć zastosowania dla rzeczy, o których czytasz, przypomnisz sobie o nich, kiedy będziesz ich potrzebował.

      -znaj swój język. Znam osoby, które próbowały same parsować daty w C++. Wszystko czego potrzebujesz, jest w bibliotece standardowej. Jeżeli tego nie ma, znaczy, że to co robisz, można zrobić inaczej i prościej.

      -miej w dupie jakość i wydajność swojego kodu. Zbytni perfekcjonizm utrudnia bardzo życie na początku. Pisz kod, który działa. Nic nie daje takiego powera, jak rzeczy, które robią dokładnie to, czego od nich oczekujesz.

      -naucz się czytać i szukać pomocy na stackoverflow. Nie łudź się, nie jesteś tak inteligentny i wyjątkowy, więc i Twoje problemy takie nie są. Tysiące ludzi zadaje tysiące pytań odnośnie setek problemów. Twój problem jak i rozwiązanie już gdzieś tam jest.

      -gdy już zaczynasz rozumieć, czytaj cudzy kod. Jak nie wiesz co czytać, szukaj na githubie. Jest wielu poczytnych autorów i doskonałych projektów. Np Flask, Request.

      -iPython. Najlepiej iPython --notebok. REPL to mało powiedziane. Zawsze miej otwarte. Zrozumiesz dla czego po pierwszym filmiku na youtub.

      -traktuj język programowania, jak język obcy. Jeśli miałeś szczęście trafić do przeciętnej szkoły, miałeś okazję zauważyć, że uczenie się gramatyki w zasadzie gówno Ci dało. Jeśli miałeś trochę więcej szczęścia, zauważyłeś również, że będą jakiś czas za granicą, nauczyłeś się więcej w miesiąc używając języka, niż przez 5 lat rozmawiania i czytania o nim. Olej akademickie podejście. Olej wzorce projektowe. Olej algorytmikę.

      -nie łudź się, nie zostaniesz wielkim programistą. Prawdopodobnie nie dostaniesz pracy, nie napiszesz facebooka. Google też Cię nie zatrudni. Być może nie poddasz się jak 99% osób po miesiącu, ale ja w to nie wierzę.

    •  

      @aseeon: sorki, że tak odkopuje ten temat, ale chciałem zapytać czy polecasz jakieś video tutorial na youtube?

    •  

      jak ktoś Ci mówi, żeby używać jakiegokolwiek IDE, zastrzel go

      @Ribelo: Okropna bzdura, na szczęście reszta twojego wpisu to prawda

      polecasz jakieś video tutorial na youtube

      @ruski_88: Niestety nie znam żadnej serii uczącej Pythona, a wartej zachodu na youtube. Jest seria jak pisać pythonowy kod, ale to jest dla ludzi którzy już coś w Pythonie potrafią.

      https://www.youtube.com/playlist?list=PLHb-tUHjtzRCMeC5IjbJOjNLiJ28982NJ

    •  

      @aseeon: Mówię z perspektywy amatora i hobbysty. Nigdy nie miałem do czynienia z żadnym większym komercyjnym projektem. Przy <10k loc IDE jest zbędne. W ogóle nadal bardzo popularny w świecie jest vim/neovim czy Emacs i o czymś to świadczy. Pisanie "Hello World" w IDE to jak strzelanie z armaty do muchy.

    •  

      @Ribelo: Kategoryczność twojego twierdzenia mnie połowicznie bawi i połowicznie przeraża. Bawi bo to jak powtarzanie bez zastanowienia czegoś usłyszanego od kuzyna bo on się zna na programowaniu - wyolbrzymiam oczywiście, ale takie hasła mają bardzo często takie początki. Przeraża mnie - bo ktoś ci kiedyś uwierzy i zrobi sobie straszną krzywdę nie sprawdzając jakie ma możliwości.

      Każdy powinien programować w tym co w czym mu wygodniej i co powoduje że jest efektywniejszy.

      Szczególnie należy wziąć pod uwagę, że żeby wygodnie programować Pythona w Sublime Text to doinstalowujesz (jeżeli chociaż trochę się znasz na tym środowisku) kilka(naście) pluginów które nie robią nic innego tylko zbliżają ST do bycia IDE.

      10k linii (pomijając, że to cyfra z pupy) w pythonie to nie to samo co 10k linii w Javie. W Pythonie to już zazwyczaj będzie na tyle skomplikowany projekt do którego jak najbardziej przydadzą się możliwości IDE.

      Popularność vima i emacsa świadczy... o popularności vima i emacsa. Nie ma żadnego bezpośredniego odniesienia do wygody czy niewygody IDE. Wynika też z ogromu czynników - bo ludzie się do nich przyzwyczaili, a przyzwyczajenia ciężko zmienić. Bo są łatwo dostepne na każdym linuksie, są lekkie, szybkie i niezwodne. Bo mają bogactwo pluginów i dodatków. W końcu wynika z konserwatyzmu niektórych ludzi.

      Nieporozumieniem jest łączenie takich twierdzeń z odradzaniem komuś IDE, kto uczy się Pythona.

    •  

      @aseeon: Dzieki za polecenie IDE, ale widzę, że z softów JetBrains możnaby się doktoryzować. 30 minut zajęło mi dodanie projektu z remote host :), a do tej pory nie wiem jak podpiąc inną ścieżkę z remote host jako uzupełnienie projektu (czy wogóle jest to możliwe) - masakra po prostu. A to zapewne początek imprezy :).

    •  

      @aseeon: Ludzie pracujący jako programiście Pythona klepią:
      1. Aplikacje internetowe w Django
      2. Aplikacje internetowe we Flasku
      3. Aplikacje internetowe w Pyramidzie
      4. RESTowe API w Django
      5. RESTowe API we Flasku
      6. RESTowe API w Pyramidzie
      7. Programy przetwarzające Dane
      8. Uczenie maszynowe
      9. Wizualizacja danych
      10. Web scraping
      11. Testy, systemy testów i testerki programów
      12. Skrypty automatyzujące zadania na serwerach
      13. Programy sieciowe i asynchroniczne na Tornado
      14. Programy sieciowe i asynchroniczne na Twisted
      15. Skrypty do programów graficznych - Maya, Houdini, Blender itp. itd.
      16. Aplikacje oparte o systemy kolejkowe RabbitMQ / ZeroMQ
      17. Aplikacje obliczeniowe z Numpy / Scipy / Pandas
      18. Przetwarzanie języka naturalnego - NLTK
      19. Bioinformatyczne programy - Biopython
      20. Boty
      21. Programy do testowania/łamania zabezpieczeń serwerów
      22. @bazingaxl mnie zmusił żeby to tutaj dodał ( ͡° ͜ʖ ͡°)

    •  
      a....n

      +3

      @aseeon: Pojawiła się jeszcze jedna warta uwagi pozycja książkowa, tym razem od MIT Press (dopiero teraz, bo wymagała tony poprawek):
      http://www.amazon.com/Introduction-Computation-Programming-Using-Python/dp/0262525003/

      Warto też popatrzyć na poniższe kursy
      https://www.udacity.com/course/ud036 - relatywnie nowa sprawa, skupia się na programowaniu obiektowym
      https://www.udacity.com/course/cs101 - ten znany kurs (jest dalej dostępny za darmo - przycisk Access Course Materials) - o programowaniu i wielu rzeczach wokół
      https://www.coursera.org/course/interactivepython - chyba najpopularniejszy kurs internetowy Pythona, każda edycja przyciąga zdaje się już dziesiątki tysięcy ludzi.
      https://www.edx.org/course/introduction-computer-science-mitx-6-00-1x-0 - okazuje się, że każda z dużych platform online ma jeden dobry kurs z Pythonem - wstęp do informatyki w wersji z Pythonem :>

    •  

      @Name_in_progress wołam cię!

    •  
      H...i via iOS

      0

      Taktyk

    •  

      @survivor: polecisz coś do nauki C?

    •  
      s......r via iOS

      0

      Komentarz usunięty przez autora

    •  

      Tiktak

    •  
      T..........k via Android

      0

      Taktyk

    •  

      Komentarz usunięty przez moderatora

    •  

      @tobiasz22: jeśli chcesz zacząć pierwszą pracę po 6 tygodniach to zapraszam na bootcamp Coders Lab ;) w listopadzie ruszamy z Pythonem i kurs na pewno pozwoli Ci na zaczęcie pracy jako junior dev

    •  

      @a....n: Dwa lata później sytuacja z dwiema wersjami Pythona nie uległa znacznej zmianie

    •  

      @OrestesGaolin: czemu usunął konto? każdego to czeka? (⌐ ͡■ ͜ʖ ͡■)

    •  

      podrzuci ktoś linka do wersji z C++'em? ( ͡° ͜ʖ ͡°)

    •  
      u..............r

      0

      Komentarz usunięty przez autora

    •  
      u..............r

      0

      Komentarz usunięty przez autora

    •  

      @a....n: a

    •  

      Komentarz usunięty przez autora