Would you like to learn Python? Join Russel's Python Workshop and learn both low-level details of Python as well as the idiomatic design approaches in Python.
We'll start with the basics of the Python language, after which we discuss various testing strategies and their rationale.
Through lectures, exercises and discussions, we'll introduce Concurrency and Parallelism after which we'll learn about GUI's. We'll then explore Networking, XML processing and Persistence when developing applications with Python.
On the final day of this Advanced Python course, you'll work on an example of Python DSL, we'll learn about Python extensions and extension testing and we'll finish the course with an introduction to Django, Python Web Application frameworks and how to use dynamic techniques.
Learn how to:
- Use the basics of the Python language
- Apply Testing strategies and understand the rationale of these
- Apply Concurrency and Parellism
- Write GUI's for event-driven systems
- Explain the concepts of networking in Python
- Use XML for Processing
- Incorporate Persistence
- Develop dynamic Python systems with DSL's
- Use Python extensions and test them
- Write small to medium-sized programs using modules and packages
- Read and amend other people's Python code and, most importantly, explore more Python techniques and idioms for yourself
What the community says
"Very interesting course, in a short time, we have been able to cover many subjects that have given me many insights to go deeper into Python"July 2014 delegate on 15th Jul 2014
- Some background to Python
- Tools of the trade
- Value, types, expressions, and statements
- Lists, tupes, and dictionaries
- Files, modules, directories and packages
- Rationale and strategies
- Tools, techniques and approaches
- PyUnit (aka unittest) and PyTest (aka py.test)
- Test-driven development (TDD)
Concurrency and Parallelism
- Event-driven systems
- GUI frameworks: PyGTK, PyQt, wxPython
- Concepts of networking
- Higher-level approaches
- Event-driven approaches
- Twisted Internet
- Concepts of XML documents
- SAX and DOM<
- Files, pickling and shelving
An example of a Python DSL
- SCons: a build framework
- Rationale and architecture
- C Python API
- C/C++ test frameworks vs. Python test frameworks
- Web applications frameworks
- Using dynamic techniques
If you are a relatively experienced programmer, but have not worked with Python before, this Python course will provide you with a thorough grounding.
Although this is an Advanced Python course, the course is aimed at a very diverse audience, as long as you have prior programming experience, be it languages such as C, C++, Fortran, Java, C#, Perl, etc. -- perhaps even a little Python -- and you want to learn how to program using Python in an idiomatic (Pythonic) style, this course if for you!
Bring your own hardware
You are requested to bring your own laptop for this course, so you learn how to develop within your own environment. A full installation guide for the course software will be provided with your joining instructions.
If you are unable to bring a laptop for the course, please contact us on +44 20 7183 9040 or email us.