• Multiprocessing in Python

    As you start to do more computationally heavy tasks, you will find that calculations can take a very long time. Often, this can invole applying some function to every object in a list or other container. If these operations are all independent of each other (for example running a simulation with different sets of initial conditions) you can parallelise these tasks to speed things up, performing multiple computations simultaneously on different processors/cores on your device.

  • Where does the arc length formula come from?

    \(\newcommand{\g}{\boldsymbol{\gamma}} \newcommand{\R}{\mathbb{R}}\) I was revising some calculus/mechanics from undergrad the other day and came across the arc length formula: given a differentiable curve \(\g: [a,b] \to \R^n\), the length of the curve is \[ L(\g) = \int_a^b ||\g’(t)|| \, dt \text{.} \] That is to say if I straightened out \(\g\), I would have a line of length \(L(\g)\). I had used this formula plenty of times, but I realised that I had no intuition for why it was true, so I had a Think.

  • How I Helped the Nation Spend Wisely for a year

    Aka reflections on my year as a Data Science Intern at the UK National Audit Office.