Test driven development

Unit tests and test driven development (TDD) are powerful software development techniques that will improve your code’s reliability, design and your own personal stress level. This week Steve Biggs led a hands-on session where he took us through writing and running unit tests in Python using TDD.


Bugs in code are a fact of life, and being able to quickly debug a failing program is a vital skill for any software developer. This week, Matt Probert led another hands-on session on debugging using the standard Linux debugger, gdb. [Read More]

How to do everything in Emacs

Something a bit different this week. Working with various different codes in various different languages, along with writing presentations, talks and papers, I spend most of my day writing text, just with different syntaxes. As such, I like to be able to do it all in the same program –... [Read More]

Python for scientific calculations

This week Ben Dudson gave us a crash course in how to use Python efficiently for scientific calculations, showing us various ways to get decent speeds out of pure Python code. [Read More]
Tags: python


This week, David Dickinson gave the first of our hands-on sessions, teaching us about how to profile software. Profiling is an essential tool in any software developer’s toolbox, allowing us to find bottlenecks in the code and target our optimisation efforts. [Read More]