Becoming an awesome programmer is a bit like building a large tower of knowledge in that solid foundations are the key to your success. Completing this course will provide you with mastery over these foundations. Here is a quick summary of the journey that awaits you:
Curriculum
The course will focus on mastering the following concepts
•variables (integers, floats and strings) •control structures ( loops and if statements) •functions •data structures (lists and dictionaries)
Learning Process
The course incorporates principles known to help humans learn better, namely: multiple perspectives, revision, feedback and real world application. The following three step process will help you retain and master all the topics covered in this course:
Step 1: Demonstrate concept with both visual and text outputs: this is achieved by first writing a program with a text output and then writing another where the output is created visually using turtle.
Step 2: Test your understanding with 10 coding exercises: all of these are automatically marked using the python unittest module giving you instant valuable feedback.
Step 3: Apply your understanding to write useful and interesting programs: The core concepts you have learned will be put together into programs which do useful and interesting things like:
•User authentication with a dictionary •Guessing number game •Human reaction time measurement •Human memory training •Palindrome Discovery (all single word palindromes in English)