Total Internal Reflection

Technology and Art


Code

Cobol REKT
Plenoxels
Transformer
Basis-Processing
Cataract
COMRADE
Duck-Angular
Exo
IRIS
MuchHeap
Snail-MapReduce
Underline
Lambda-Queuer
jQuery-Jenkins Radiator

Contact

Github
Twitter
LinkedIn

Site Feed

Engineering

An Ode to the Generalist

13 March 2023

This post is probably a spiritual successor to Resilient Knowledge Bases.

Tags: Software Engineering

Economic Factors in Software Architectural Decisions

20 February 2023

This article continues from where Every Software Engineer is an Accountant left off. I have had feedback that I need to make my posts on these a little more explainable; I will attempt to do that here.

Tags: Software Engineering, Software Engineering Economics

Advice I'd give a younger me

13 February 2023

This is a weird mix of advice I’d give the less-experienced me, as well as reflections of my personal value system. This verbal diarrhoea came out all at once in a single sitting of 45 minutes. I apologise for some of the strong language in here, but I thought I’d share it without much censoring.

Tags: Software Engineering, Value System

Every Software Engineer is an Accountant

4 February 2023

This article continues from where Every Software Engineer is an Economist left off, and delves slightly deeper into some of the topics already introduced there, as well as several new ones. In the spirit of continuing the theme of “Every Software Engineer is an X”, we’ve chosen accounting as the next profession.

Tags: Software Engineering, Software Engineering Economics

Every Software Engineer is an Economist

22 January 2023

Background: This post took me a while to write: much of this is motivated by problems that I’ve noticed teams facing day-to-day at work. To be clear, this post does not offer a solution; only some thoughts, and maybe a path forward in aligning developers’ and architects’ thinking more closely with the frameworks used by people controlling the purse-strings of software development projects.

Tags: Software Engineering, Software Engineering Economics

Tests increase our Knowledge of the System: A Proof from Probability

10 January 2023

Note: This is a post from July 13, 2011, rescued from my old blog. This is only for archival purposes, and is reproduced verbatim, but I make no claims about its rigour, though it does still seem plausible.

Tags: Proof, Tests, Software Engineering, Probability

A Pipeline for Adaptive Bitrate Video Encoding

9 January 2023

Note: This is a post from July 13, 2011, rescued from my old blog. This is only for archival purposes, and is reproduced verbatim, but is hopelessly outdated.

Tags: Video Processing, Archive, Software Engineering

Two Phase Commit: Indistinguishable Commit Scenario

18 November 2021

We review the most interesting failure scenario for the Two Phase Commit (2PC) protocol. There are excellent explanations of 2PC out there, and I won’t bother too much with the basic explanation. The focus of this post is a walkthrough of the indistinguishable state scenario, where neither a global commit, nor a global abort command can be issued.

Tags: Distributed Systems, Software Engineering

     

All content on this site was written by a human. No language models were used to generate, summarise, or rephrase any of the content here.

Upcoming Posts