Summary of tutor topics

Single statements
The use of Python as a calculator
Using parentheses to get the correct result
Using format strings to print complex output
How to quit Python from within a program.
A brief history of the web server
The fundamentals of CGI
Web architectures and Frameworks
The Address Book as a web application
The 3rd programming construct - Branching
Single branches and multiple branches
Using Boolean expressions
A definition of recursion
How recursion works
How recursion helps simplify some hard problems
Basic GUI building principles
Basic widgets
Simple Tkinter program structure
GUI and OOP, a perfect match
wxPython as an alternative to Tkinter
A little bit of networking background
The fundamentals of sockets
Creating a server process
Creating a client process
Communicating via sockets
The character and mindset of a programmer
The programming environments used in the tutor.
Database concepts and SQL
Creating tables and inserting data
Extracting and manipulating data
linking data sets together
Accessing SQL from Python
What is an object?
What is a class?
What are polymorphism and inheritance?
Creating, Storing and using objects
A brief history of the web
The fundamentals of http
Web architectures and Frameworks
Roles of HTML, CSS, Javascript and Python
How to open a file
How to read and write to an open file
How to close a file.
Building an address book
Handling binary data files
Random Access to file data
A short history of error handling
Two techniques for handling errors
Defining and raising errors in our code for others to catch
How to split lines of text into character groups
How to search for strings of text within other strings
How to replace text within a string
How to change case of characters
Several new uses for comments
How to layout code using indentation to improve readability
An introduction to the use of modules for storing our programs
The meaning of namespace and scope and why they are important
How namespaces work in Python
Namespaces in VBScript and JavaScript
The whys and wherefores of IPC
The fundamentals of pipes
Cloning a process with
Communication via pipes
Terminating processes using
How to start Python and what an error message looks like - just in case...
How to create a VBScript and JavaScript program.
The fundamentals of Web frameworks
Hello World using Flask
The Address Book as a web application
The role of the Operating System
Python's access to the operating system
Working with files and folders
Working with Processes
Finding out about users
What modules are about
Functions as modules
Using module files
Writing our own functions and modules
An introduction to Windows Script Host
An introduction to the terminology of computing
Some history
A brief look at the structure of a computer program.
When and how to use concurrency and threading
An example of sharing the load between processes
Accessing shared data using threads
Some other possibilities and caveats
How to use loops to cut down on repetitive typing.
Different types of loop and when to use them.
Sending requests to a web server
Sending Data to a server
Processing html with htmllib and ElementTree
Other options
How does an event driven program differ from a batch program?
How to write an event loop
How to use an event framework such as Tkinter
What Data is
What Variables are
Data Types and what to do with them
Defining our own data types
What regular expressions are
How to use regular expressions in Python programs
Regex support in JavaScript and VBScript
The difference between Functional and more traditional programming styles
Python FP functions and techniques
Lambda functions
Short Circuit Boolean evaluation and conditional expressions
Programs as expressions
We introduce a new tool for entering Python programs.
We review the use of variables to store information until we need it.
We discuss comments and why they are needed
We combine longer sequences of commands to perform a task.
How to prompt the user to enter data and how to read that data once it is entered.
We will show how to read both numerical and string based data.
The concepts of
We look at command line interfaces and how to read data input as command line arguments.