One key trick to becoming a wizard developer
Why dig into problems that you could work around? Three reasons: one about my work, one about the team, and one about me.
Why dig into problems that you could work around? Three reasons: one about my work, one about the team, and one about me.
Abstract Programming is a series of frustrations. Everything we do, we could do better or faster if we only had our tools set up just so. If our error messages were a little better, our code a little cleaner, our tests a lot wider. When we spend time on this, it’s known as “yak shaving,” …
Useful terminology: my tools are either ready-to-hand, unready-to-hand, or present-at-hand. I can notice the switch and deal with it consciously.
TL;DR: install docker and X410; docker run jessitron/alloy:5.1 The essential work in software development is forming a model in our heads of the system we want. The code is one expression of this model. The code can’t be stronger than this model. So I want a strong model: consistent, complete enough, and expressive. I decided …
(This post continues from the Royal Yak, and concludes the series A Taxonomy of Yaks.) When we improve how we work, we make tasks faster. We make progress smoother. This is magnified when we improve how all our team members work, or our whole community. Now and then, though, an improvement turns into something more: …
(continued from Trim Yaks; part of the Taxonomy of Yak Shaving series) Royal Yak, aka Yakkity Yak (quote from yakbreeder.com) Talking to people is yak shaving; it is an intermediate task that helps you get your official tasks done. It’s usually seen as a separate way to “waste” time. I’m here to call relationship-building out …
(continued from Imperial Yaks; part of A Taxonomy of Yak Shaving series) Trim Yaks, aka, the Hackhacking yak (making coding faster) Each of the previous yaks stood in the way of a particular task. The Trim Yak is not so task-specific; these are the ones that let us work faster generally. I nickname them “Hackhacking Yaks” …
(continued from Attack Yak; series begins with Taxonomy of Yak Shaving) Sometimes you’re coding along, writing tests as little experiments “this should fail because I haven’t implemented the parser for it yet” — and it fails in a way you didn’t expect. And then you start digging and the parsing library isn’t working how you expected. And …
(This post describes the first yak category. You might choose to start with the Taxonomy of Yak Shaving intro.) Black Yak, aka Attack Yak. (quotes are from yakbreeder.com) When you feel that your task is 80% complete, these yaks form the next 80%. They are the distance between “works on my box” and “this is …
Yak Shaving is: doing seemingly-unrelated tasks to get some real task done. The name has obscure roots and doesn’t matter; the key is that it makes you think, “Why would you do that?” Yak shaving can be: I want to make dinner, but I’m doing stairs; moving objects around in order to clear a path …