Courses

Python from scratch
Python from scratch is a gentle introduction to programming, designed with the beginner in mind. No previous background is assumed. Each programming concept is first taught without reference to a specific programming language. Hands-on practice, using the programming language Python, helps to reinforce the concepts.
Language independent lessons
This “course” is a collection of videos teaching basic programming concepts in a language-independent manner (also used in Python from scratch). They can serve as supplementary materials for students of just about any programming language, or as a basis for review.
Web basics
Web basics introduces the main ideas behind the specification of a web page in HTML5 and CSS3, assuming no previous background. Explanations are interspersed with exercises and ideas for further practice.