I am not an expert in number theory, or PRNGs for that matter. I am sometimes forced to do a little academic digging to solve a particular problem. So it was with Linear Congruential Generators or LCGs. I thought I would write up what I found, so that it might…

I get quite a lot of enquiries asking for a code example of the titular paper: Kuncheva, Ludmila I., and William J. Faithfull. "PCA feature extraction for change detection in multidimensional unlabeled data." IEEE transactions on neural networks and learning systems 25.1 (2013): 69-80. So, without further…

I had an interesting discussion on /r/MachineLearning the other day. The crux was, having applied PCA to some data and measuring some aspect of the principal components, how would we relate that back to the original data? It should be simple in principle, but I found myself scratching my…

It's been a long road to get to this point, but I thought I'd condense my thoughts about the part-time PhD experience for anyone considering one. To preface, if you're reading this thinking about starting a part time PhD, my advice to you is don't. Yes, really. Do it full…

A significant part of my PhD research [1,2] has involved the application of PCA (Principal Components Analysis) in unsupervised change detection problems. Working with high-dimensional streaming data, I typically have to work on the assumption that we have no context and no data in advance. We also often need…

If you ever have to process an indeterminate length stream of data, it's useful to be able to compute some basic statistics as you go. The key phrase there is as you go - we could easily compute a mean of an arbitrary number of samples $N$  \bar{x} = \frac{…

I've decided to force myself into the habit of blogging about my PhD topic, in the hope that people who find these posts have an easier time comprehending the subject matter than I did. This, and future posts, will attempt to focus on a particular method at a time. I…

We often use spring-data-rest to abstract away simple RESTful CRUD boilerplate, and it is very good at it. The problem comes in more complicated situations. Sometimes you need to step in and override one of the request handlers to do something slightly differently, or trigger an event. So, how do…

If a lot of developer CVs pass over your desk, you'll be familiar with the idea of the 'polygot' developer - that is; the developer who is proficient in lots of languages, frameworks, paradigms, whatever. The full stack++ engineer. Personally, I think this is a little overblown. Especially early in…

The last WPF application that I worked on and saw through to the bitter end was the control software for the RoboBlot. The last time I worked on it was in 2014, by which point I had migrated to working almost exclusively in Java, for a bunch of reasons. So,…