Write this code:: theList = [2, 3, 5, 7] x = 5 i = 0 while i < len(theList): if theList[i] == x: print "yes" break i = i + 1 lo = 0 hi = len(theList) while lo < hi: mid = (lo + hi)/2 if theList[mid] == x: print "yes" break if theList[mid] < x: lo = mid + 1 else: hi = mid on the black board, pretending that we're just explaining the algorithms. Then reveal that it's python and show code.py and run it. Make them functions, run them. Interactive play -- copy and paste linear_search and binary_search and play around with them, and lists, and dicts, and tuples. Attributes -- starting with f.func_name, dir(), ... Methods -- list.append(), list.sort(), the string type and its methods. Strong typing (123 != "123") and more words like "Dynamic typing like prolog and not like Java". for loops and range. files. example freq.py -- counting the letter 'e' in text files trivial class Rectangle, with getarea, then add __init__. then redo freq.py using classes.