Home - Runpython-IntroProgramming/Course-Syllabus GitHub Wiki
Runpython Introduction to Programming with Python
Runpython Introduction to Programming with Python is a (typically) one-semester course that will introduce the basic techniques of computer programming using the Python programming language.
Philosophy
This course is intended for absolute beginners and takes an immersive approach to instruction. Just like you might learn a new language by immersing yourself in conversation, this course begins by immersing you in coding. It does not attempt to teach every aspect of the language; there are plenty of books and Internet resources to help you with that. The goal of the course is to build confidence in using Python to solve challenging problems.
Overview
Python is a modern, interpreted language that is relatively easy to learn, while possessing an astonishing depth and flexibility that make it suitable for sophisticated applications in business, arts, entertainment, science and engineering. In the first few weeks of this class you will learn the tools and basic skills needed to write simple programs in Python. Each week will develop several new skills or techniques that may be required to complete one or more programming challenges. Some of the topics you will learn about during this period include:
- Interactive mode: expressions, types, variables, collections, dir(), help()
- Console I/O: print and input
- Lambda functions
- List comprehensions
- Objects, properties, methods and inheritance
- Conditionals and control flow statements
- Functions
Later in the course you will plan and execute one or more projects.
Tools
The course will use 100% online tools and resources, including:
- Github for storing all your work.
- Runpython for running code and managing and editing smaller projects.
- Runpython console for using Python interactively.
The courses uses a browser-based online version of Python 3.7 called Brython, hosted on Runpython. For text-based programs that you work on, you can execute your code on a personal computer using Python 3.7, but this is not required.
Tutorials and Challenges
Following is a list of online tutorials and coding challenges for the course. Coding challenges are categorized as LEVEL I, LEVEL II, or LEVEL III, according to their difficulty level and time required to complete. LEVEL I challenges are intended to be completed in a few minutes to an hour or so. LEVEL II challenges may require several hours or days to master. LEVEL III challenges are more open-ended and may take several weeks to fully complete.
BOOKMARK this page and begin with the first Tutorial below. Return here and continue, step by step, through all of the tutorials and challenges. Have fun!
- Tutorial: Introduction to the Runpython Console.
- Tutorial: Introduction to Github and Runpython.
- LEVEL I: Hello, world
- LEVEL I: Hello, friend
- Tutorial: Simple graphics programming with ggame.
- LEVEL I: Draw a Picture
- Tutorial: Lists and sequences using Runpython Console.
- LEVEL I: Calculate Pi
- Tutorial: Programmed Graphics
- LEVEL I: Plotting Sine and Cosine
- Tutorial: Conditionals using Runpython
- LEVEL I: Birthday Problem
- Tutorial: Looping using Runpython
- LEVEL I: Multiplication Table
- LEVEL II: FizzBuzz
- Tutorial: More Graphics: Assets and Looping.
- LEVEL II: String Jumble
- LEVEL II: Character Distribution
- LEVEL II: Cryptography
- Tutorial: Dictionaries and Classes.
- Tutorial: Advanced Graphics with Classes.
- LEVEL III: Conway's Game of Life.
- LEVEL III: Platformer Game.
- LEVEL III: Space Shooter.
- FINAL PROJECT: What would you like to do?