For 2023 - we are now fully retired from IT training.
We have made many, many friends over 25 years of teaching about Python, Tcl, Perl, PHP, Lua, Java, C and C++ - and MySQL, Linux and Solaris/SunOS too. Our training notes are now very much out of date, but due to upward compatability most of our examples remain operational and even relevant ad you are welcome to make us if them "as seen" and at your own risk.
Lisa and I (Graham) now live in what was our training centre in Melksham - happy to meet with former delegates here - but do check ahead before coming round. We are far from inactive - rather, enjoying the times that we are retired but still healthy enough in mind and body to be active!
I am also active in many other area and still look after a lot of web sites - you can find an index ((here))
Python 2 to Python 3 / Python 3000 / Py3k
There's a new release of Python on the horizon. Well - it's rather closer than the horizon, as there are beta test releases around, and a final production release is due within the month. It has been known as Python 3000 and Py3k along the way - but the release is numbered 3.0 and it's really known as "Python 3.0"
Will everyone switch straight away to Python 3? No - I'm sure they won't; it is planned that there will be parallel releases for a while (as there were with PHP as it went from release 4 to release 5) as there are changes which will break source code compatibility.
This compatibility issue is always a tough one for the language designers - whether to restrict and encumber development through the life of the language due to early decisions which may have been good at the time
but are now outdated, or to bite the bullet and make the changes. And the Python 3 team have taken the latter approach.
I'm running a public Python course
over the next few days, and I and my delegates will be using the latest production versions - Python 2.5.x as I write - throughout. However, I'll be training with one eye on Python 3 to ensure I can advise against "dead end programming" and I'll give a keynote / philosophy talk to ensure that all my delegates know where the language is going and can make the very best of the current syntax, and the changes too. And that will be backed up by a demonstration of some of the code we have seen and written during the course on a machine that also has 3.0 installed.
The main philosophies of Python 3 remain the same main philosophies of Python, and that includes providing facilities once (not in a plethora of ways) and preferably in an obvious / well established / old way - so in practise it's not going to be a huge leap to move to Python 3. However, there are
tools being provided to help you if you'll be moving code - such as 2to3
which does an automated translation ("good but not perfect") and some new facilities being backported into Python 2.6 which will provide a useful stepping stone. (written 2008-09-07, updated 2008-09-11)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articlesY300 - Python 3 - What is new, what's changed and why 
Python 3000 - the next generation - (2006-06-09) 
The road ahead - Python 3 - (2008-09-10) 
Python classes / courses - what version do we train on? - (2009-07-10) 
Great new diagrams for our notes ... Python releases - (2009-07-13) 
Moving the product forward - ours, and MySQL, Perl, PHP and Python too - (2010-01-01) 
Learning to program in Python 2 ... and / or in Python 3 - (2010-05-24) 
Moving from Python 2.6 to Python 3 - (2010-07-14) 
Sorting in Python 3 - and how it differs from Python 2 sorting - (2015-04-20) 
Testing in Python 3 - unittest, doctest and __name__ == __main__ too. - (2015-04-21) 
Progress on moving from Python 2 to Python 3 - training for both versions - (2015-12-01) 
Object and Static methods - what is the difference; example in Python 3 - (2016-02-17) 
Why populate object with values as you construct them? - (2016-02-18) 
Convering from Python 2 to Python 3 - an update, and the 2to3 utility - (2016-10-30) 
A reminder of the key issues to consider in moving from Python 2 to Python 3 - (2016-10-30)
Some other Articles
All the pieces fall into place - hotel and coursesSharing variables with functions, but keeping them local too - PythonLooking for a value in a list - PythonPython 2 to Python 3 / Python 3000 / Py3kHowto - write and manage a news box on your web pagePicturing the rainWhat is running on your network? (tcl and expect)Global - Tcl, PHP, PythonThink before you send
4759 posts, page by page
Link to page ... 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96 at 50 posts per page
This is a page archived from The Horse's Mouth at
the diary and writings of Graham Ellis.
Every attempt was made to provide current information at the time the
page was written, but things do move forward in our business - new software
releases, price changes, new techniques. Please check back via
our main site for current courses,
prices, versions, etc - any mention of a price in "The Horse's Mouth"
cannot be taken as an offer to supply at that price.
Link to Ezine home page (for reading).
Link to Blogging home page (to add comments).