How to Spot a Racist, Method #473

When angry people are protesting on the streets things do sometimes boil over. Opponents of the protests will seize on this immediately, firstly as an attempt to discredit and devalue the protest but also to distract attention from the cause. Opponents of protests have even infiltrated them and deliberately tried to start riots for those Read more →


PhD Update 4: Ginormous Data

Hello again! In the last PhD update blog post, I talked about patching HAIL-CAESAR to improve performance and implementing a Temporal Convolutional Neural Net (Temporal CNN). Since making that post, I've had my PhD Panel 1 (very useful, thanks to everyone who was on that panel!). I've also got an initial - albeit untested - implementation of a Temporal CNN. I've also been wrangling lots of data in… Read more →


Defty: The easy to use website builder

After leaving DriveTribe I took on my first role as CTO at a start-up called Defty. As employee number 1 I took on the task of hiring the Engineering and UX/UI team, deciding our technical strategy and setting up quality assurance systems in addition to developing the platform itself. In this blog post I will Read more →


Getting your car serviced in the midst of a pandemic

I’m not sure why I was so keen to have the car serviced and tested. It’s not as if I’m going to be needing it much. Just put it down to my mildly compulsive nature. Anyhoo, we took the car down to the garage this morning. We got there nice and early because there was hardly any rush hour traffic. The dealer was very prepared with one way signs on the floor, Perspex dividers on the counters and ple… Read more →


Begin to Code with JavaScript Recording Fun

I quite enjoy recording the Begin to Code with podcasts. Although I’m far from sure how many people enjoy listening to them. I started the project to see if it was possible to produce useful programming teaching content that could be deployed as a podcast. If you’ve listened, I’d love to hear what you think. If you’ve not had a go, I’d love you to have a listen (the link is on the right hand side)… Read more →


Using Multiple Inheritance for Good

Multiple inheritance sounds like a good thing. After all, why would you not want to inherit a bunch of stuff? But some programmers don’t like it. They say it makes things confusing, they say that a class made from multiple parents will be neither one thing nor the other. And mostly I think they are right. However, when the alternative is something even more confusing, I can be persuaded to think o… Read more →


Automated Opensim Startup and Shutdown

Introduction to Automated Opensim Startup and Shutdown Automated Opensim startup and shutdown. A tutorial providing an alternative approach to the Opensimulator wiki pages, which gives greater flexibility and improves ease of use. Written for Ubuntu but suitable for many Linux distributions. Previous Related Articles Setup Ubuntu 20.04 for Opensimulator Opensim... The post Automated Opensim Startu… Read more →


The Living Computers Museum has closed

I’d planned a trip to the Living Computers Museum as part of my attendance at the MVP Summit earlier this year. I’ve been there a few times and loved it. But, thanks to a nasty little bug I couldn’t get there. And I’ve just found out that the museum itself has closed. Which is a terrible shame. In the great scheme of things, and considering all the other awful events of the last few months, the lo… Read more →


C++ Combining two 32 bit integers into 1 64 bit integer.

Read more →


New Begin to Code with JavaScript podcast available

This is a demo game from chapter 4. How strong are your nerves? I’m writing a book at the moment (I love saying that). I’m also reading out each chapter as I write it, and putting the recordings up as podcasts. Today I discovered that I have a listener, hi Mark, who got in touch to ask when the next chapter is coming out. Well, the answer is today. I’ve just popped a new episode up. You can find a… Read more →