This recently came up at work: capture the STDERR/STDOUT from another process and ship it over a socket somewhere else for archiving and viewing purposes. It was trickier than I expected so I’m writing it down here for next time. Continue reading
Here’s something all statically typed languages miss out on. Continue reading
I’ve been working with RethinkDB recently and it’s a great JSON document DB. Continue reading
This is going to make a whole bunch of people angry so before everyone gets their pitchforks ready here’s some background information to set the stage.
At my very first programming job Continue reading
A while back I wrote proxy for accessing an S3 bucket that transparently handles decrypting objects before serving them. It combines some things I’v already talked about in what I consider interesting ways.
Disclaimer: The proxy is in no way production worthy. There are much better S3 proxies out there with much better documentation. This post is just to document a trick that I came up with to avoid using a database. Continue reading
Some basic patterns I’ve noticed come up over and over again while working on build/CI/deployment related things.
The pipeline is the bedrock on which pretty much everything else is built. A properly designed pipeline takes well-defined inputs and produces well-defined outputs Continue reading
The more I work with infrastructure as code the more I dislike it. I think that’s because fundamentally it’s the wrong metaphor. Code is terrible, it’s brittle and constantly breaking. Not to mention versioning and dependency issues. Even with immutable infrastructure you still have pretty much the same problems. I’ve used pretty much every configuration management tool that is out there and found them lacking. Continue reading
My day to day consists of brutalizing, raiding, raping, and pillaging software. I don’t think there is a better way to put it. Continue reading
I present to you some well-typed programs along with associated run-time and compile-time errors for pondering the meaning of well-typed. The context was me trying to understand the meaning of the quote “Well-typed programs cannot go wrong”. The exercise was illuminating for me but when I started writing explanations they got a little too philosophical so I’m just going to present the code and the errors. Continue reading
You wake up full of ideas about new features and capabilities that can theoretically be added to the product you are working on. Several of these new features generalize existing functionality and get rid of corner cases that have been getting consistently flagged as bugs by users. The features and their underpinnings have been incubating for a while now and you’ve been working on sketches, mock-ups, and prototype code over the last few weekends. Continue reading