Create value or create language by which your colleagues can create value. It's all value. "People > Process" means just that. It's unambiguous. Narrow contexts compose a hell of a lot better. Saying "we'll simplify later" is the worst kind of technical debt. Complication eats effort. And yields nothing. Dealing with complication is like paying … Continue reading Today’s Aphorisms (2017-10-04)
One of the things that can make our codebase somewhat difficult to work with (making defects much too easy to create) is that we often lack locality of concept. (Hmmm. Sounds like something Gold would say. But what the hell does it mean?) Code both does things and decides how things are to be done. Is this … Continue reading Locality Matters (2017-09-07)
We write code. That's what we do. Well, that's not entirely correct. We solve problems. We provide solutions. When we can do it without code, we declare it a win. But most of the time we write code. How do we write code? We don't chisel it into stone. We don't have to pull individual … Continue reading Getting It Write the First Time (2017-08-20)
Once upon a time there was "The Database". It was all-encompassing and it was good. It provided a current snapshot of reality. It was "the data". It was "the state of things". It was the "source of truth". It was spoken of with reverence. A tribe of humans called "DBAs" spent their considerable waking hours … Continue reading “The Database” (2017-08-20)
Immutability I'm going to show you a little bit of code (don't worry about the language, it might not exist)... Then I'm going to ask you a question, OK? Cool! x = 1 y = 2 ... ... ... (Yes, I'm not going to show … Continue reading Immutability, Purity and All Kinds of Stuff FTW (2017-07-14)
One of the best Computer Science jokes (okay, go along with it for now...) goes like this: There are only two hard problems in CS: Naming things Cache invalidation Off by one errors We've gone great lengths to mitigate the effect of the last of these. Rarely do we use index-based, perhaps nested, loops to … Continue reading Name Things! (2017-06-23)
Whenever you say the words "let's document that" always ask yourself whether that really means it's too complicated.