Monday, 17 August 2026
Codex Terra Light 5.6 on the ChatGPT Application
Sunday, 16 August 2026
The .vs hidden directory
Visual Studio creates a .vs directory at the root of your solution. It is used to store solution specific settings and temporary data to help manage the state of your development environment. Fine to .gitignore.
However one interesting directory you may find inside is a slnx file.
A slnx file is the XML version of the traditional sln file. However what is in .vs are supporting files for the slnx file format rather than the file itself.
Service Status Pages
Visual Studio 2026 August Release Notes
MSVS runs on monthly feature updates.
Saturday, 15 August 2026
EC2 instances have different specializations
AWS Compute uses Multi-Tenancy
EC2 instances are virtual machines (VMs). VMs share an underlying physical machine with other instances (this is called multi-tenancy). This is enabled by software called a hypervisor. VMs are isolated but share resources.
When you provision an EC2 instance, you can choose the operating system as Windows or Linux. You can provision thousands of EC2 instances on demand. They are resizable so you can start small and then give your instance(s) more memory and CPU. This is the "elastic" nature of EC2 and is known as vertically scaling an instance. You can also control networking in EC2. Essentially you can choose what requests get to your server.
Virtualization is not a new concept; but AWS makes it more convenient to acquire servers via its Compute-as-a-Service model.
Compute Conceptualized in Terms of Power
iPhone Low Data Mode Explained
Some Windows users also have iPhones and need to understand iPhone settings and usage. In this spirit we deep dive Low Data Mode on the iPhone. This can be a good option when travelling.
Low Data Mode is a Data Roaming setting.
Settings -> Mobile Service -> Mobile Data Options -> Data Mode -> Low Data Mode
Other options in this category are Allow More Data on 5G and Standard. Standard allows automatic updates and background tasks on mobile data, but limits video and FaceTime quality.
Monday, 10 August 2026
VPS Errors on Random Websites
Suggestive of problems with virtual private servers (a virtual machine hosted in a DC, with a dedicated operating system- typically Linux or Windows, root/admin acces and the ability to run websites, databases, APIs or background services).
Sunday, 9 August 2026
RAG with Pinecone and Chroma
Pinecone (pinecone.io) is "the knowledge engine for agents" - aka. a vector database for RAG pipelines.
Chroma is open source search infra for AI - also built on vector database technology.
Prompt Optimization - Worth the Investment
Generative Models - GANs/VAEs and Diffusion Models - O My
GANs are obviously generative adversarial networks.
- Developed by Ian Goodfellow and colleagues in June 2014
- In this construct, two neural networks compete with each other in the form of a zero-sum game, where one agent's again is the other agent's loss
- The concept is that competition forces both to get better
- The game is to provide high realism output
- They are used where you need hi-fidelity synthetic data, realistic imagery
- They are not the dominant model for consumer generative AI
- The theory behind GANs is an interesting application of probability spaces
Diffusion models.
- Class of latent variable generative models
- Based on diffusion processes in applied probability
- The goal of the model is the learn the diffusion process that underpin an image (strange concept in itself, and one that puts this technique in the realm of latent variable generative models)
- Two components - the forward diffusion process and the reverse sampling process
- Simple example of a diffusion process is ink dropped in water, droplets diffuse through the water
- One example application is denoising images (where image is blurred with Gaussian noise)
- Stable Diffusion and DALL-E are diffusion based image generators
VAEs are variational auto-encoders
- A variational auto-encoder (VAE) is an artificial neural network introduced by Kingma and Welling in 2013
- It is part of the families of probabilistic graphical models and variational Bayesian methods
** classes of model **
Latent variable generative models.
- Statistical model that relates a set of observable variables (also called manifest variables, indicators) to a set of latent variables
- Latent variables are those that can be observed /inferred only via a mathematical model
- They may correspond to aspects of physical reality
- Earliest reference: Francis Bacon, Novum Organum
- It may reduce the dimensionality of the data
- Form of artificial neural network.
- Used to learn efficient codings of unlabeled data (unsupervised learning)
- An autoencoder learns two things:
- Encoding function - transforms the input data
- Decoding function - that recreates the input data from the encoding/encoded representation
- Autoencoder learns an efficient representation (encoding) for a set of data, typically for dimensionality reduction, to generate lower dimensional embeddings for subsequent use by machine learning algorithms
- Example: regularized auto-encoder (aka sparse, denoising and contractive autoencoders)
- Example: variational auto-encoder (used for generative applications)
Saturday, 8 August 2026
xcopy still works
The Codex Incompleteness Theorem
OAuth2 - Read the RFC
Entire
Statistical Similarity
Thursday, 6 August 2026
Time Synchronization in Distributed Systems - A Different Take
Distributed systems employ a lot of synchronization - data synchronization (get all nodes consistent on data) as well as time synchronization (so every node has the same view of time).
Time synchronization can be achieved via protocols like NTP and PTP (the latter is precision time protocol - for applications like high frequency trading), but also logical systems like Lamport timestamps which order events without relying on physical time.
Lamport timestamps are a logical clock mechanism to capture chronological and causal relationships in a distributed system. Leslie Lamport introduce this as far back as 1978.
A variation of logical clock known as a vector clock is used in a variety of distributed database systems.
Tuesday, 4 August 2026
Revisiting Refactoring -> Purpose - "Confidence in Code"
Sunday, 2 August 2026
A Note on LSTM
LSTM, or long short term memory, seemingly paradoxically named, was co-invented by German computer scientist Sepp Hochreiter, who incubated it in his 1991 diploma thesis leading to its main publication in 1997.
LSTM addresses the problem of numerical instability in training recurrent neural networks (RNNs) that prevent them from learning long sequences (the so-called vanishing gradient problem).
In 2007, he and others applied LSTM, optimizing the architecture, to very fast protein homology detection without requiring sequence alignment.
Protein homology detection is the process of identifying whether two proteins share a common evolutionary origin - one of the core problems in computational biology.
Homology implies shared structure and shared function.
Saturday, 1 August 2026
Agentic Coding, IDE Debugging
You've built your software agentically. Now you want to (need to) debug it in an IDE.
You may need to add some extra settings.
OpenAI's Astra Solves More Maths Problems
Defensive Perl
- Switch warnings on - use the minus-w command line flag - #! perl -w
- Learn and use perlpod - it looks a bit like this at the start of your file =head1 NAME myscript =cut
- Always use strict; at the start of your program (this pragma restricts expressions that are hard to debug)
- Qualify your variables with type prefixes (similar to "Hungarian" notation) e.g. my $sHeader for strings, my @aCodes for arrays, my %hCodesToDescriptors, and appropriate equivalents for common custom types
How Imports Work in Python
The syntax for import is as follows (keywords in quotes):
"import" module [ "as" identifier ]
There is also a variation to use when testing proposed changes to Python:
"from " "__future__" "import" feature [ "as" identifier ]
The first thing import does is find an load the module. It then initialises the module.
Frozen Frames when Debugging Python
- code is compiled C-extension code (e.g. importlib, asyncio, threading internals)
- the debugger cannot step in or modify them
- they are part of Python's frozen importlib bootstrap