Overview
News
Salaries
Products
People
Growth
Offices
Financials

Overview

On Magic, Convetions, and Implicit vs Explicit. Earlier in my career I was working as a C# developer, and had read a lot about testing and testability from the Alt.Net crowd, a lose group of people with ideas outside of how Microsoft did things in C#.

News

Blog 6 months ago
On Magic, Convetions, and Implicit vs Explicit
Earlier in my career I was working as a C# developer, and had read a lot about testing and testability from the Alt.Net crowd, a lose group of people with ideas outside of how Microsoft did things in C#. When I came to needing to write an API, the impossi
Read more
Report
Blog 1 year ago
Database Column Prefixes
Back in a previous company (the same place as where Debugging GDI Handle Leaks happened), there was an interesting convention in the database: all tables had a unique 3-letter prefix assigned to them, and all columns in that table must start with the pref
Read more
Report
Blog 1 year ago
Explicit vs Implicit code
A system I am working on at the moment started giving errors occasionally, say 5 times out of 10,000 messages or so. The error was pretty straightforward: json: cannot unmarshal array into Go struct field Thing.Parts of type Parts The data structure it is
Read more
Report
Blog 1 year ago
Debugging GDI Handle Leaks
Many years ago, I was working on a dotnet Windows Forms application. The application had many issues overall: memory leaks, random crashes, data loss, and in this case, the "red x" problem. The problem showed up at random, and instead of a window, dialogu
Read more
Report
Blog 2 years ago
Telemetry and Cancelled Contexts
I use opentelemetry extensively to trace my applications, and one thing I keep running into is when writing a long running process, I want to handle OS signals and still send the telemetry on shutdown. Typically, my application startup looks something lik
Read more
Report
Blog 2 years ago
Outside In Design
Following on from my previous post about not having too much configuration, I want to talk about how I design software. I try and follow what I call "outside in design"; I try and make something that requires the bare minimum amount of configuration to co
Read more
Report
Blog 2 years ago
Print debugging: a tool among other tools
This is my thoughts after reading Don't Look Down on Print Debugging. TLDR Print debugging is a tool, and it has its uses - however, if there are better tools available, maybe use those instead. For me, a better tool is OpenTelemetry tracing; it gives me
Read more
Report
Blog 2 years ago
Too Much Configuration
When writing software, you will come across many questions which don't always have a clear answer, and its tempting to not answer the question, and provide it as a configuration option to the user of your software. You might go as far as setting a default
Read more
Report
Blog 2 years ago
Multiple errors in an OTEL Span
A question at work came up recently about how to handle multiple errors in a single span. My reaction is that having multiple errors in a span is a design smell, but I had no particular data or spec to back this up, just a gut feeling. I've since thought
Read more
Report
Blog 3 years ago
Hot Reload for ServerSide Rendering
In one of my too many side projects, I am using htmx and go templates to render a somewhat complicated web UI. I much prefer using htmx for this kind of thing rather than react, as react brings in so much more additional complexity than I need or want. Ho
Read more
Report
Show more news