= A Roadmap to Programming Concepts, using Python = Here are broken out the concepts of programming with Python; essentially a list of ideas, the order in which they might be learned and where the knowledge can be gained. (needs work) ---- "What mental model is necessary to understand programming?" * what is an algorithm? * that things happen in sequence * and can loop * but exceptions can be raised * names are bound to values * those values can be singles * or collections like lists, tuples * collections have subscripts, with ranges * strings are actually collections * mappings are interesting * programs have a start and a stop * they usually do some setup at the start * they may report some status at the stop * code can be carried around like a value * grouping code with functions reduces complexity * modules group code too * classes and objects * you have a choice of interpreters * cpython * ipython * vpython * ironpython * jython * stackless