Conventional Wisdom can be a bunch of BS. It can be a bludgeon to keep the troops in line. When it goes unexamined it can create group think that prevents healthy discourse. #
Hello. My name is Alex Kessinger. I'm a principal engineer @ Stitch Fix. I write about what I'm reading, researching, and thinking. Find me on twitter @voidfiles.
Welcome to my webpage.
I like most people am deathly afraid of crypto. There are just too many gotchas. Therefor I appreciate posts like these where smart folks break down the answers. We’re less interested in empowering developers and a lot more pessimistic about the prospects of getting this stuff right. https://latacora.singles/2018/04/03/cryptographic-right-answers.html
It’s easy to see Kubernetes as “a way to run containerized workloads”. If you look at the comparisons that’s what they all do: ECS, Docker, and Mesos, etc. But, I don’t think that’s the vision for Kubernetes. Here are a few tweets from Kelsey Hightower: The future where Kubernetes clusters disappear and we just leverage Kubernetes style APIs to deploy workloads is fast approaching. 1 The cloud made the hypervisor disappear. #
I’m torn between two axes. The first is being user-oriented. Thinking about the problems from their perspective and ensuring you are always working on something that improves value. The second is that good software is often fast software. While it’s hard to make a case that keeping a service at a p99 of 500ms will increase the value to your users, I’ve found that trying to make it is important. The reality of the situation is always that it depends. #
DevOps, at least as I understand it, is about delivering value. It sounds simple, but delivering that value happens via a pipeline. The stages of that pipeline often represent whole groupes of people. Ofthen those groups can have competing priorities. Thus increasing friction in the pipeline and slowing down the deliver of value. That’s where DevOps comes to the rescue. By working with everyone in the pipeline and building a shared vision of how to deliver value, you can get everyone to optimize for the shared global goal of value delivery. #
The biggest irony in dev work is that we all want to build easy to use systems, but that’s hard to impossible to do. Easy is hard. Rich Hickey in his talk “Simple Made Easy” walks us through this irony and why its so important that we continue to try and build easy to use systems. 1 Here is a transcript of the talk as well. ↩︎
It’s not often that anyone can take up basic linux literacy and make it interesting, but Julia Evans1 does it with style. Here is her zine on pipes2: She doesn’t just illuminate linux, she will often bring that same clarity to more advanced topics such as service discovery. Here is a zine from a blog post 3 she wrote on Stripes engineering blog. So, checkout the zines, or one of her many posts on kubernetes or networking and learn something. #
When I design a new service, I want it to be efficient. Mostly, for any humans involved, but also for the technical components. Why make two HTTP calls when you can make 1. When thinking about tradeoffs it can be helpful to consider how long common operations take. Not surprisingly, lists have been made of these common operations. As far as I can tell starting with Peter Norvig, and then re-popularised by Jeff Dean. #
Given I don’t know what I don’t know, but I want to find out. This taxonomy of ignorance and interesting thought experiment. The Five Orders of Ignorance 1 Lack of Ignorance. Lack of Knowledge. Lack of Awareness Lack of Process. Meta Ignorance http://losangeles.acm.org/Archives/laacm0512-Article%2002%20The%205%20Orders%20of%20Ignorance%20OCT%202000.pdf ↩︎
We don’t know what we don’t know. Clearly. But, sometimes the keys to a project exist in the unknown. Yet many of our project planning and execution tools don’t take this into account. If you just do the same thing over and over again, you will probably get better at performing that sequence, but you won’t learn anything new. That’s a quote from “Introducing Deliberate Discovery” by Dan North 1. #