Introduction to Version Control

ImportantWork_final_v5_changes_v2_really_done (1).txt. Look familiar? You need to change something, but want to keep the old version, just in case… There’s no shame in admitting it, we’ve all done it! But there has to be a better way, right? [Read More]

Hands on Object-Oriented Programming

Object-Oriented Programming (OOP) is one of the major paradigms in programming. Last week, I gave an intro talk on the main principles of OOP, contrasting it to other programming paradigms like imperative and functional programming. We also looked at some examples of using OOP in Python, Fortran and C++. This... [Read More]

Common Lisp - The programmable programing language

Common Lisp is “the programmable programming language”, and is one of the most popular variants of the Lisp family of languages. Lisp languages are some of the oldest programming languages still used seriously today. What’s great about them is the simple syntax combined with powerful features like macros that allow... [Read More]

Using the terminal effectively

This week, Peter through some tips and tricks for upping your terminal game. Find out how to quickly search through your command history, make a fancy, colourful prompt, and some magic shortcut keys you definitely didn’t know about! [Read More]

Using Python for shell scripts

One of the virtues of a programmer is laziness – if you find yourself doing something more than twice, you should automate it. If the thing you want to automate is some commands in your terminal, you’re probably tempted to reach for the most immediate tool at hand, a shell... [Read More]