I often talk to non-programmers who think I must have to be extraordinarily clever to be a software developer, and that they could never do it. In my experience, people often underestimate their own ability. I thought I’d write down some heuristics to help you determine if you have the brains it takes to be […]
Author: Avdi Grimm
Some thoughts on bullying behavior in software projects.
Today I had reason to verify the exact semantics of ActiveSupport’s Object#try extension for an upcoming RubyTapas episode. #try is usually used to paper over nil values. Unfortunately, #try does more than this, and as a result it can easily hide defects. Consider: we have a variable with a number in it. We want to […]
This my 3-year-old daughter Ylva, trying to make one of our computers do what she wants. Don’t get me wrong: Ylva is perfectly adept at using computers. This one, however, is frustratingly unresponsive. Nothing happens when you try to interact directly with the pictures on the screen. Instead, you have to translate your desires into […]
…And so, as we can see, with sufficiently powerful type constraints, the implementation practically writes itself! Neat! I know, right?? …although didn’t you just write the whole function inside the type declaration? THE IMPLEMENTATION PRACTICALLY WRITES ITSELF!!