For the last year and a bit, news websites around the world have been competing with each other to see how many photos they can host of people with needles sticking out of their arms. As a needlephobe, this invasion of my safe space has not gone unnoticed. I had previously thought that the news cycle might soon pass, but I realised recently that we will be talking about vaccinations and boosters…
I am quite frugal with my spending, and I spend quite a lot of time trying to identify the best value equipment. This post explains my current software development workstation and links to where the equipment I have selected can be purchased. As I am not a gamer, all of the decisions I have had to make have focused entirely on improving my efficiency developing. Luckily, I built my computer just…
UUIDs are popular among developers for a number of reasons. These include: They can be generated by seperate actors with a very low chance of collision They do not leak information about a system This article will ignore the first point, and examine the second in more detail. Sequential Primary Keys Consider an application that needs to manage a table of orders. With a sequential primary key, the…
Apologies for the clickbait title, but if you are a PHP developer, I really think that this topic deserves your attention. PHP has had a love-hate relationship with much of the programming community for a while. An almost complete introduction to the topic of PHP hate can be found in the famous blog post PHP: a fractal of bad design . In this post, the author hilariously cuts down almost every…
Alan - It says here we should use TensorFlow. Apparently we can use a Deep Neural Network to predict the outcome of football (soccer) matches. Who wants to help me collect training data? Doug - I don't think you should be doing so much gambling tonight Alan. Alan - Gambling? Who said anything about gambling? It's not gambling if you know you're going to win? Deep Neural Networks are a foolproof…
Detections of race cars, after training on a small dataset containing only 60 images When building datasets for machine learning object detection and recognition models, generating annotations for all of the images in the dataset can be very time consuming. These annotations are required to train and test a model, and they must be accurate. For this reason, human oversight is required for all of…
Today, one of my colleagues located a nearby traffic camera that monitored a particularly busy road near where we work. This road can make the journey home a real pain in the ass, and it is much easier to just stay in the office and work later until it calms down a bit. Here is a sample image from the camera: There is a lot of content in this image that is not relevant to the amount of traffic in…
Wait, what!? But it says they are, right here : “Why value objects? The proposal models messages and URIs as value objects. Messages are values where the identity is the aggregate of all parts of the message; a change to any aspect of the message is essentially a new message. This is the very definition of a value object. The practice by which changes result in a new instance is termed…
Background To be transparent, I have already had a run-in with Roman Tsjupa (the author of PHPixie, aka dracony) after I exposed his use of sock-puppet accounts on reddit . The other day he posted this tweet claiming that PHPixie had just received 40 GitHub stars in 24 hours. Knowing his character, I checked and found that all of the accounts were obvious bots that had been registered on that very…
UPDATE: Since publishing this article I have been speaking with Larry Garfield, the editor of PSR-6. He has posted his response in the comments section below . I accept the point that it would be impossible to construct a cache proposal that was approved by all of the voting members that I have mentioned. However, I still believe that the exception definitions are not suitable for ratification and…