Pipal Academy

Please write to us at hello@pipal.in if you would like this course to be conducted at your organization.

An intensive hands-on course that dives deep into the Python internals, advanced features like decorators, generators, meta classes etc. and best practices of Python programming language.

This course is targeted at experienced Python programmers who would like to learn advanced features of the Python programming language for building libraries and frameworks with beautiful APIs.

This course assumes a working knowledge of Python programming. It is not recommended for programmers who are new to Python.

Pre-requisites

  • Working knowledge of Python programming

This course is not for you if –

  • You have never written a list comprehension
  • You have never used generators or decorators before
  • You have never written a class in Python
  • You don’t know what __str__ and __repr__ means

Warm up

Review of Python programming language. Topics covered are lists, dictionaries, list comprehensions and importing modules.

Higher ­Order Functions and Decorators

A deeper look at functions in Python. Covers functions with variable arguments, keyword and default arguments, scoping rules, recursion, higher order functions and decorators.

Iterators and Generators

Introduction to Iterators, generators and generator expressions with emphasis on working with large data and how these techniques help to make code more readable. Also explores coroutines using the new async and await syntax and async programming.

Deeper look at classes and objects

Understanding classes and objects at a deeper level. Covers old-style and new-style classes, static methods, class methods, special methods for operator overloading, slots, descriptors, context managers and meta classes.

Writing Python Libraries

Covers best practices of writing, documenting, testing and distributing python libraries.

The suggested duration of the course is 3 days.

This is an interactive course and it is suggested to limit the number of participants to 12 or less for it to be effective.

All the topics covered in the class will recorded as IPython notebook and shared with all the participants at the end of the each day of the course.

Anand Chitipothu

Anand has been crafting beautiful software since a decade and half. He’s now building a data science platform, rorodata, which he recently co-founded. He regularly conducts advanced programming courses through Pipal Academy. He is co-author of web.py, a micro web framework in Python. He has worked at Strand Life Sciences and Internet Archive.

Noufal Ibrahim

Noufal Ibrahim is the founder of Hamon Technologies, a services firm based in Kozhikode that specialises in infrastructure, automation and analytics solutions. He has more than ten years of experience in architecting, building and automating software systems. He also runs Lycaeum, a platform to mentor young engineers. He is the founder of PyCon India and the chair of the first two editions of the conference. He has worked at Cisco, Synopsis and Internet Archive.