Loading Course Schedule...
This advanced course covers both advanced development techniques such as metaprogramming, and cutting-edge technologies such as git and celery. Students completing this course will be able to create sophisticated modules and frameworks that can be leveraged by other programmers. As with all our programming classes, this custom Python course has a generous complement of exercises that allow the student to immediately practice new concepts. Students will write numerous real-world Python scripts, which manipulate real-world data.
Students should be comfortable writing intermediate Python scripts, using basic and complex data types, program structures and the standard Python library. In addition, they should be able to create basic classes, and understand intermediate concepts such as decorators and generators. This is NOT a beginner's class. Students should already have skills equivalent to our Python Intro and Intermediate courses. This class covers advanced programming concepts and techniques.
5 Days/Lecture & Lab
This course is appropriate for experienced Python programmers who want to learn very advanced Python skills. The course content can be applied to a wide range of tasks.
- Unit Testing (unittest, pytest, nose, pymock)
- git/github (gitlib)
- Remote Processes (paramiko, pexpect)
- Workflow (celery, luigi)
- Mako Templates (mako)
- Advanced XML (validation, schema generation, namespaces)
- Emulating Container Classes (dict, list)
- Parsing Complex Text (pyparsing)
- Design Patterns
- Web Scraping (scrapy, BeautifulSoup)
- Functional Tools (single-dispatch, lru_cache, map/reduce)
- Advanced Metaprogramming (descriptors, __new__)
- Virtual Python Environments (virtualenv, pyenv, vagrant)
- Advanced Iterables (itertools, generator functions & classes)
- Cloud Computing (Hadoop, Galaxy)
- Packaging and Distributing Modules