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]

Meltdown and Spectre

At the start of 2018, a set of three serious bugs in CPU hardware were revealed to be affecting the vast majority of processors manufactured since the mid-90s. This week, Ed explained how these bugs work, explaining some advanced features of CPUs along the way. [Read More]