In Favor of an Application Infrastructure Framework

The byproduct of a lot of my work on Evergreen over the past few years has been that I've amassed a small collection of reusable components in the form of libraries that address important but not particularly core functionality. While I think the actual features and scale that we've achieved for "real" features, the infrastructure that we built has been particularly exciting. It turns out that I've written about a number of these components already here, even.…

Keep reading

Why Write

I've had a blog [1] for more than 15 years, and I've found this experience to be generally quite rewarding. I've learned a lot about writing, and enjoyed the opportunity to explore a number of different topics [2] in great detail. While I haven't blogged as much in recent years, I've been thinking in the past few weeks about getting back into writing more regularly, which has lead me to reflect on my writing in the past and my goals for this in the future.…

Keep reading

Evergreen Intro

Almost two years ago, I switched teams at work to join the team behind evergreen which is a homegrown continuous integration tool that we use organization wide to host and support development efforts and operational automation. It's been great. From the high level, Evergreen takes changes that developers make to source code repositories and runs a set of tasks for each of those changes on a wide variety of systems, and is a key part of the system that allows us to verify that the software we write works on computers other than the ones that we interact with directly.…

Keep reading

Combating Legacy Code

I wrote some notes about to write a post about a software project I worked on a year and a half ago, that I think is pretty cool, but I was on writing hiatus. Even better the specific code in question is now no longer in use. But I think it serves as a useful parable, but I will attempt to reflect. Go's logging [2] support in standard library works, and it successfully achieves its goals on its own terms.…

Keep reading

Consciousness Rising

The subtitle of this post should be "or, how the internet learned about intersectionality," but while I love a good pretentious academic title, I don't think that's particularly representative of my intent here. Sometime in the last 5 or 10 years, the popular discourse on justice on the internet learned about intersectionality. Which is great. Intersectionality, generally is the notion that a single identity isn't sufficient to explain an individuals social experience particularly vis a vis privilege.…

Keep reading

Cache Maintence

Twice this fall I've worked on code that takes a group of files and ensures that the total size of the files are less than a given size. The operation is pretty simple: identify all the files and their size (recursively, or not but accounting for the size of directories,) sort them, and and delete files from the front or back of the populated list. When you've reached the desired size.…

Keep reading

Isolation and Ideology Change

Following the 2016 election my father, who is a much more active participant in Facebook than I, said something to the effect of "don't mourn; organize. I had a long winded post on the topic of 'don't celebrate; organize', but the bottom line is the same: organize." I'd append to this just to make clear that I'm of the opinion that self care, survival and the care for and survival of our communities is crucial.…

Keep reading