What customers say ...
We had a wide range of Python experience in our group and each person gained something valuable to take away....
Dr. Ryan Woodard, Chair of Entrepreneurial Risks, ETH ETH Zurich, Switzerland more...
A training with excitement and content, energized and rich, and always focused on the essentials. Thank you very much! Excellent trainer, anytime again!
Martin Volbes GAD eG about the course "Fortgeschrittene Programmierung in Python" more...
I enjoyed the course very much and learned a lot. My interest for quite few of topics was ignited during the course and I will into more details. I understood many principles. All in all: Very good training! Thank you very much all the best.
Dominik Schwinn, German Aerospace Stuttgart about the course "Python für Programmierer und Python für Wissenschaftler und Ingenieure" more...
I really liked the course since it offered a lot of information in a structured way. I especially found it helpful to see the different techniques "in action".
Alexander Bittner, gocept GmbH & Co. KG about the course "Python for Programmers" more...
Very crisp and precise knowledge of the subject /content. Very good and highly recommended for all Python beginners.
Dicken George System Development Engineer, Soitec Solar GmbH about the course "Python for Programmers and Python for Scientists and Engineers" more...
Course: Twisted Training
Dates for Open Courses
Course available as open and in-house training. Currently no dates for open courses. Please ask us at firstname.lastname@example.org
This tutorial is intended for programmers with at least some Python experience who want to use the Twisted framework. It is suitable for people trying to start new Twisted projects, are looking to integrate Twisted with an existing non-Twisted project, or who have inherited an existing Twisted project.
Many components of the course can be left out or adjusted to suit your specific needs.
- Introduction (40 min)
Event loops (10 min)
- Environment setup (25 min)
- Dependencies and required software
- Where to get help (10 min)
- Support channels: IRC, mailing list...
- Protocols, factories and endpoints (40 min)
Introduction (5 min)
Building a simple protocol (15 min)
Client and server factories (5 min)
- Serving your protocol: (5 min)
Existing and composable protocols (10 min)
- Deferreds (60 min)
- Introduction (10 min)
- Exercises (30 min)
- @inlineCallbacks (20 min)
Important toplevel packages
- Twisted Web (90 min)
- Servers (with exercises) (60 min)
- Resource traversal
Clients (exercises based on previous servers) (60 min)
- Twisted Cred: pluggable authentication (45 min)
Other toplevel packages and third party packages
- twisted.words: Chat protocols & IRC support
- IRC clients
- A simple bot (30 min)
- Adding more advanced behavior (e.g. webhooks) (45 min)
Building an IRC server (30 min)
Wokkel (Friend fork with advanced Jabber/XMPP support) (30 min)
twisted.news: NTTP support (30 minutes)
twisted.conch: SSH support (timing depends on level of detail and which components)
- Database access
- twisted.enterprise + txpostgres (60 min)
- txredis, paisley (couchdb), telephus (cassandra) (each 60 min individually)
- Axiom (60 min)
twisted.spread: distributable computing (60 min)
twisted.names: DNS servers and clients (30 min)
Twisted Community Code (tx) (length depends on the package)
scrapy: advanced scraping architecture built on Twisted (120 min)
- Dealing with legacy/synchronous code (1h 45 min)
- WSGI app case study: django-packages (60 minutes)
- Threads: deferToThread(Pool), blockingCallFromThread (45 minutes)
- Dealing with CPU-bound problems
- Introduction (15 min)
- Explicit cooperative multitasking (45 min)
- Threads (reference; see previous mention of threads) (30 min)
- Multiprocessing options and Ampoule (60 min)
- Application framework (1h 30 min)
- Services and applications (15 min)
- twistd: running servers & daemonization (30 min)
- Twisted's plugin system (15 min)
- Writing your own twisted plugins (30 min)
- Advanced application concepts (1h 30 min)
- Process monitoring: daemontools, upstart, systemd, etc. (30 min)
- Live server monitoring and maintenance with manhole (60 min)
- Contributing to Twisted (1h 30min)
- Issue tracker (30 min)
- Setting up the environment (45 min)
- Review process (15 min)
In addition to the previous topics, the following topics are touched on as needed:
Test Driven Twisted: twisted.trial (tutorial is TDD where sensible)
- twisted.python: useful random python utilities
- FilePath: like paths but better
Every participant receives comprehensive printed materials that cover the whole course content as well as a CD with source code and used software.
Laurens Van Houtven has extensive programming and entrepeneurial experience. He is a Twisted committer, has built two business on top of Twisted, and is a member of the Python Software Foundation.
The Python Academy is sponsor of PyCon Montréal 2015.
The Python Academy is sponsor of Chemnitzer Linux-Tage 2015.
The Python Academy is sponsor of Django Girls Wroclaw 2015.
The Python Academy is sponsor of PyCon Ireland 2014.
The Python Academy is sponsor of EuroSciPy 2014.
The Python Academy is sponsor of PyData London 2014.
The Python Academy is sponsor of EuroPython 2014.
The Python Academy is sponsor of PyCon 2014 Montréal.
The Python Academy is sponsor of Python BarCamp Köln 2014.
The Python Academy is sponsor of PyConDE 2013.
The Python Academy is sponsor of EuroPython 2013.
The Python Academy is sponsor of PyCon US 2013.
The Python Academy is sponsor of EuroSciPy 2013.
The Python Academy is sponsor of PyConPL 2012.
The next open cousers
Python Academy sponsors EuroPython conference 2013
Python Academy sponsors EuroSciPy conference 2013
Python Academy sponsors Python BarCamp in Cologne
Next Meeting of Leipzig Python User Group, November 12, 2013
Introduction to Django, November 11 - 13, 2013
Professional Testing with Python, November 25 - 27, 2013
Advanced Django, January 13 - 15, 2014
Python Academy sponsors PyCon US conference 2013
Python Academy founder receives PSF Community Service Award