ConceptualRoadmap

This wiki is in the process of being archived due to lack of usage and the resources necessary to serve it — predominately to bots, crawlers, and LLM companies. Edits are discouraged.
Pages are preserved as they were at the time of archival. For current information, please visit python.org.
If a change to this archive is absolutely needed, requests can be made via the infrastructure@python.org mailing list.

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