Get Up To Speed
Special note: TriZPUG is not a substitute for primary sources. TriZPUG supports Zope and Python education, and is part of the Zope and Python communities, but does not attempt to replace the primary educational materials of the Zope and Python communities writ large. If you are brand spanking new to Python, please see the main Python community help page.
If you are coming to Python as your first programming language, you have made a good choice. There is consensus among many computer scientists: Python may rate as the best choice for learning to program. If you are finding learning how to program is more difficult than you thought, consider this good advice from the Director of Research at Google.
- While you are waiting for dead tree book delivery, if you have the stamina and the courage, there's always the Official Python Tutorial written by our valiant BDFL.
- An ocean of Python software awaits you at the Python Package Index, formerly known as the "Cheese Shop."
- Planet Python is a comprehensive aggregator of Python blogs.
- There are many Python related email lists you can join, including the tutor list for newbies.
- The Active State Python Cookbook contains thousands of recipes. Not to be confused with a dead tree cookbook. Looking at well written Python code is a great way to learn Python.
- Think you're smart? Some people claim you can learn Python in 10 minutes.
- Python has an official documentation center which can be pretty daunting for the novice and includes:
- The official Python Wiki contains community (i.e., haphazardly) maintained articles such as:
- The Python Community maintains several Internet Relay Chat (IRC) channels. Here's some IRC help.
- The Python Community loves to have super-huge annual get-togethers.
- There are many free online Python books:
- Learn Python is an interactive online set of Python tutorials.
- Dive Into Python, by Mark Pilgrim of Apex, was the greatest programming book ever written. Unfortunately, halfway through the book, all the examples were based on now-defunct web services. However, the new edition, Dive Into Python 3 doesn't suffer from that defect, even though it no longer employs the radically Pythonic way of teaching Python we loved in its predecessor.
- Python Learn is Dr. Chuck Severance's site for Python tutorials related to his Python For Informatics online course hosted by the University of Michigan's School of Information.
- Think Python was formerly known as "How To Think Like A Computer Scientist" and was several years in the making.
- How To Think Like A Computer Scientist is still available, though, and has been translated into many languages and has also been revised into a new Python 3 edition.
- A Byte of Python is available in both Python 2 and Python 3 versions and is being translated into many languages.
- Invent Your Own Computer Games With Python is a free online book.
- Data Structures and Algorithms with Object-Oriented Design Patterns in Python is an essential and monumental tome of computer science.
- Software Carpentry is an introduction to the art of software engineering using Python. Titus Brown has been working on Advanced Software Carpentry.
- Dave's Page is a compendium of several Python texts including Dave Kuhlman's comprehensive "A Python Book."
- The Art and Craft of Programming, Python Edition is recommended by MIT.
- Python For Beginners is a set of frequently updated online tutorials.
- Python Books is another list of online Python books.
- There are many Python video tutorials on the web:
- PyVideo.org is now the official repository for Python conference talk videos. Presentation slides for the most recent Pycon may often be found on Speakerdeck. or here.
- Show Me Do is a place for Python video tutorials.
- Python is the teaching language at MIT. They put their Introduction to Computer Science course online as video.
- Bucky lives in Raleigh and has 43 Python Tutorials (Windows-centric) on YouTube (along with WxPython and Blender tutorials).
- Some of Alex Martelli's Python talks at Google are available as video.
- Some of David Beazley's courses on Python concurrency are available as video.
- There have been many attempts at sustaining Python periodicals such as Python Rag, Python Magazine, PyZine, The Daily Python URL, and Dr. Dobb's Weekly Python URL. Because the Python community's needs for information are well served already without mediation, only a few of these publications have survived in any form:
- The author of Python for Dummies shows you how to use threading in Python (but only if you have to).
More Python threading resources:
- Today there are much more sophisticated approaches to concurrency in Python than simple threading.
- Be sure not to miss David Beazley's Curious Course on Coroutines and Concurrency (Video: Part 1, Part 2, Part 3).
- A child's garden of Python Quick References might be just what you need.
- Create your own Python Cheat Sheets
- Python Infrequently Answered Questions has answers for... infrequently answered questions about Python, including the the most elegant matrix transposition solution of any language ever.
- Doug Hellman, former chief editor of Python Magazine, will send you his Python Module of the Week.
- David Mertz wrote a series of indispensable columns for IBM Developerworks called Charming Python as well as a fantastic free online book called Text Processing in Python.
- David Goodger, past Secretary of the Python Software Foundation, can show you how to Code Like a Pythonista.
- Alex Martelli, Uber-Technical Lead at Google and author of the very necessary reference book Python in a Nutshell, makes excellent presentations:
- Evolution of Python
- Python for Programmers Part 1
- Python for Programmers Part 2
- Design Patterns in Python
- Python's Object Model
- Python's Black Magic
- Python 411 has a list of hundreds of Python tutorials, book reviews, podcasts, and screencasts.
- The O'Reilly Python Devcenter has a few articles to note.
- The Python Enterprise Application Kit (PEAK) was an important source of information about Python eggs, setuptools, and easy_install. Now the Python community is more about distribute and pip.
- Learn about Python and CGI from UVA or the BDFL.
Some recommended alternative books for learning Python are: