I started programming when I was 6, on a ZX Spectrum. To avoid making this unneccessarily long, I'll skip to finding Python in 2001. Since then I've enjoyed being in the free software world. I've worked for St James Software since 1999 (whilst doing CompSci Honours) -- leading development for most of the time, and now managing the development company in Cape Town. I'm also very interested in linguistics, and have been involved in localization software, as well as a speech visualization project. I play the keyboard, guitar and clarinet (but not all at the same time), and am married and the father of two children

Accepted Talks:

Tutorial: Introduction to SQLAlchemy

I will cover how to use sqlalchemy, primarily as an ORM layer, but also explaining the other parts ... this is intended as a hands-on session for people who aren't familiar with SQLalchemy or are fairly new to Python.

  • Introduction - relational databases, Python DBAPI, ORM layers
  • Philosophy of SQLalchemy - abstraction, database independence, but hand-coded
  • SQLalchemy core - engines and connections, data types, schema definition, SQL expressions
  • ORM tutorial - using declarative (will actually work through the standard tutorial from the documentation)
  • Sessions and concurrency - some tips

Harmonies and Hues

Mapping music to colours in Python.

Panel discussion: Effective Team Practices in Software Development

Software development is not just about writing code at your desk (or laptop or coffee shop). It's also about the other people in your team, about the people the software is for, about where the software is deployed. This is a panel discussion about what works when building software for others as a team -- and about what doesn't work. We'll be aiming to keep the discussion focussed on practical approaches to real-life issues rather than being side-tracked by ideologies or hypothetical problems.

The panelists

  • David Fraser is Managing Director of St James Software
  • Simon de Haan is Chief Engineer at Praekelt Foundation
  • Patrick Vine is a Developer at Alchemy Software
  • David Campey is the founder of Information Logistics


  • other team members and interpersonal skills
  • development team skill mixtures
  • supporting users, clients and other developers
  • delivering Python software on mixed platforms
  • coaching and mentoring developers
  • what to do after hiring someone who doesn't quite fit

If you'd like to add a topic or question for the panelists, email team@za.pycon.org or leave a comment below!

PyConZA brought to you by Praekelt Foundation