No matter what your field of interest, there's a good chance learning to code in Python will bring you valuable new forms of expression.

Visual arts? Use the Blender API to generate 3D art programatically or PyProcessing to create generative and dynamic 2D. Musical composition? Analyse with Music 21 or use the Mingus library as a foundation for your compositions and generative works. Sound design? Use Pyo for signal processing. Robotics? Use Pyro to control and give them vision or use the Python that comes preinstalled on Raspberry-Pi to build your own inventions. Machine learning, mathematics, embedded systems, web development? There are thousands of libraries and innumerable ways in which you can use Python programming to realize your projects.

The purpose of this course is to give beginners in Python and programming a solid foundation on which specialization can be built. The material you will learn will apply to any use you make of Python in the future and is the entry point for Eastern Bloc's more advanced Python specialization courses and workshops to be offered in the future.

Here is a brief outline of the topics that will be covered:

Session 0 - Objects and Object Oriented Programming

Session 1 - Python Standard Library Object Types and their Methods

Session 2 - Generators and Comprehensions

Session 3 - Control structures

Session 4 - Defining Functions and Methods

Session 5 - Functional Programming vs OO Programming

Session 6 - Modules and Packages

Session 7 - User Interactio

Python is open-source and free to use, as are all the tools we will be using in our programming environment. All you will need to bring with you for this course is a laptop.