With our modular courses that we write ourselves, we've well placed to move forward with technology; more often than not, what's needed is a series of gentle changes, adding in the occasional module for private courses where a particular new subject is needed, with it being introduced into public courses as a brief overview, then more thoroughly once it's of significant interest to a good proportion of our delegates. There are, of course, the occasional seismic changes such as Perl 5 to Perl 6 - but that's a story for another day.
We can't for ever add more material into our courses, so as new subjects nudge in, some others are faded out - at first we'll move from heavier to lighter coverage, and then fade them out further if they're on a subject which "no-one uses any more". But of course people do use old code and have to maintain it, and we have material to hand, going back ten years and more, which we can still present on private courses or cover with public course delegates in the evening after the regular course sections have been covered.
I've just updated the descriptions of our public Python courses to reflect within the description pages some of the steers that we've been giving these courses of late. Our Python courses remain very much programming courses, but one of the most significant elements of programming these days in a language like Python is using it to glue together other code, data and applications. So you'll find that we're now shouting much more loudly about:
SQLite - the database engine that's been built into Python since release 2.5, and provides a very much thinner data management architecture than a traditional database server such as Oracle or MySQL
wxPython - the graphic user interface that runs well, cross-platform, and now prevails over the numerous alternatives
Django - the web Framework that's the main reason that some people are using Python in the first place ... and that's becoming a more significant proportion of people.
Our Python courses aren't web database courses based on SQLite, web design courses based on Django, or GUI courses based on wx - they're still Python courses. But you'll learn how Python works with the most prevalent database, the most prevalent framework, and the most prevalent GUI, and have an overview of the GUI, the database and the framework too.
New to programming? See
Learning to program in Python
Experienced programmer, learning Python as a new language? See
Python Programming (written 2011-01-19, updated 2011-01-21)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articles
Y306 - Python - The Django web framework [1745] Moodle, Drupal, Django (and Rails) - (2008-08-08)
[3136] A framework with python - Django - first steps - (2011-01-17)
[3138] Django - adding your own views, and then templating your views. - (2011-01-18)
[3140] Django - separating the HTML from the view / model - (2011-01-20)
[3624] Why do we need a Model, View, Controller architecture? - (2012-02-25)
[3633] Nesting Templates in Django - (2012-03-02)
[3634] Defining database relations in your Django model - (2012-03-02)
[3639] Demonstration of a form using Django - (2012-03-04)
[3640] Sessions (Shopping Carts) in Django - the Python Web Framework - (2012-03-05)
[3698] How to stop forms on other sites submitting to your scripts - (2012-04-15)
[3705] Django Training Courses - UK - (2012-04-23)
[3919] What is a web framework? - (2012-11-10)
[4013] Web Frameworks - nested templates - (2013-02-22)
[4095] Django - first steps - Updated - (2013-05-19)
Y207 - wxPython [903] Pieces of Python - (2006-10-23)
[2013] wxPython - Introduction and sample - (2009-01-29)
[2744] PyQt (Python and Qt) and wxPython - GUI comparison - (2010-04-28)
[2887] Snow Leopard and Python (that is OS X 10.6 and wxPython) - (2010-07-26)
[3081] wxPython - simple example to add GUI to a server log file analysis - (2010-12-08)
[3086] Sizers (geometry control) in a wxPython GUI - a first example - (2010-12-15)
[3092] wxPython geometry - BoxSizer example - (2010-12-17)
[4589] Principles or a GUI and their practical application using wxPthon - (2015-11-30)
Y113 - Python and SQL databases [2745] Connecting Python to sqlite and MySQL databases - (2010-04-28)
[2746] Model - View - Controller demo, Sqlite - Python 3 - Qt4 - (2010-04-29)
[2786] Factory methods and SqLite in use in a Python teaching example - (2010-05-29)
[2790] Joining a MySQL table from within a Python program - (2010-06-02)
[4024] SQL databases from Python - an SQLite example - (2013-03-02)
[4086] Cacheing class for Python - using a local SQLite database as a key/value store - (2013-05-14)
[4436] Accessing a MySQL database from Python with mysql.connector - (2015-02-21)
[4445] Graphing presentations in Python - huge data, numpy and matplotlib - (2015-02-28)
[4535] SQLAlchemy - first examples with a Python Object Relationship Mapping system - (2015-10-14)
[4537] example of SQLite using a local database file through SQLalchemy - (2015-10-14)
S200 - MySQL - SQLite [2561] The future of MySQL - (2010-01-03)
[3099] Perl - database access - DBD, DBI and DBIx modules - (2010-12-22)
[3269] Files or Databases? MySQL, SQLite, or Oracle? - (2011-04-28)
[4006] Ruby / SQLite3 example program, showing JOIN v LEFT JOIN - (2013-02-16)
[4007] Which database should I use? MySQL v SQLite - (2013-02-16)
Some other Articles
On timePrivate and Public - and things betweenWiltshire Rail services - a golden opportunitySteering our Python courses towards wxPython, SQLite and DjangoTraining Classes - should the training company provide a system for each delegate to use? A time to be brave? We should ask for what is best for our area.Melksham Weather - Warm and windy becoming colder and calmer