-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 So for the past 3 days I been on a python course and I thought it a good opportunity to explain why and what I got from it.
My past: Unlike many at Canonical I'm not from a technical software, coding or office back ground. I drove lorries (rigid trucks the size of semis) for a living. I had a shoulder injury that meant that I was unable to do that any more, while I was off I worked at testing the iso images for the entire Ubuntu family. Every QA manager got me a contract for the end of a release and worked hard to get me a full time position with Canonical. The Present: Heno got in touch to let me know there was a QA position I'd be ideal for within ISD at the time , now Commercial Applications (online services) and I got it, woohoo. Since then I've worked hard breaking nearly every piece of software I touch (only to make it better honest). However it is getting more and more imperative that there are good automated functional tests in place for regression, not coming from a programming background I read what I could on python and I've fudged together some basic scripts that work as much as they need to, but was coming to the end of my knowledge very quickly. The Course: I wanted to get on a course that would not get me programming as such but understanding what python was and did with code. I wanted to understand how to write better code with a greater ease. To that end I booked a course with Thyme Software (John Pinners Company). The Training was refactored slightly to help me with the goals above. Day 1: Normally there is a brief intro with a description of the differences with the language you are currently coding in. However for me John started with a whole heap of small examples that taught me what python did with items in memory and how objects could be link to that byte code in memory, he showed me where I could get good examples of code that showed how commands worked rather than the more technical stuff that you see in man pages, python help, and pythons online docs (1). Because day one was basically made up of understanding how python worked it meant that day 2 and 3 then made a whole lot of sense all of a sudden. Day 2: Covered all the basics tuples, dicts, lists, strings, numbers and then went onto functions and basic modules info as I had an idea about them already. Now the stuff I spent an entire day on in Day 1 suddenly made a whole heap of sense, it meant I could look at the basic example code and mostly predict the behaviour correctly by just looking at the code. This then lead onto running the Gotcha code examples to give me a better understanding of that, and then a video on unicode!!! (that if you haven't seen it GO DO IT NOW! (2)) Day 3: Got mind bending with OO concepts, classes, file operations, functional programming, generators and finally unittests and exception handling. However a lot of it was easier to follow as I could at least understand roughly what python was likely to do with it. This lead onto writing a bunch of small functions to grab data from a basic module and a basic text file and interact with it to give different results. Finally John covered a small amount on Gui application creation for QT in python with a few basic peices of example code. All in all it was a really good course that has helped me a great deal. John has done a free one day extension for me to cover some more complex stuff that we ran out of time for, due to spending so much time get me to understand what python does with code. I heartily recommend this course to anyone that needs to learn python (1) http://www.doughellmann.com/PyMOTW/ shows basic code examples over a technical description on how it works (2) http://pyvideo.org/video/948/pragmatic-unicode-or-how-do-i-stop-the-pain - -- You make it, I'll break it! I love my job :) http://www.ubuntu.com http://www.canonical.com -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.11 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk/+qkQACgkQT5xqyT+h3Oid8wCfdr7KvExZBGb1TE+9HRU41fng 3PEAoL7EhsFO5tg1h/GnBpgkJNE9BWLx =+583 -----END PGP SIGNATURE----- -- ubuntu-uk@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-uk https://wiki.ubuntu.com/UKTeam/