I was talking with some folks lately about how Rails is amazing and unmatched for prototyping web apps. If you’re dealing with high market risk, you want to build a lot of prototypes, fast, at low quality, with the assumption that 90%+ of them will be thrown away because nobody will buy them. That...
In 2024, I’ll have been a programmer for 40 years. I’m not quite there yet, but I’ll get there. That’s different from making the most money developing software, or starting a software company. I do make good money. But that’s not what all this...
I talk about Coding Studies in a few places — my RubyConf talk and my book Mastering Software Technique,, for instance. But lots of “how-to” is never as powerful as just seeing something in action. So the video here shows me doing a simple coding study.
Coding exercises seem like a great idea if you want to learn coding. If you want to learn a practical skill then you should practice, right?
And yet coders don’t do a lot of them. Some, but not a lot. And the longer you’ve been a coder, the fewer of them you seem to do. Ask your favourite long-term veteran coder. A few of them will act guilty that they don’t, but almost none of them actually do coding exercises.
Why don’t we?
I could rail about how silly that is. But I won’t. If nearly everybody doesn’t do something, it’s usually because it’s not as good an idea as it seems. They used to tell us to all use flowcharts for designing program logic. We didn’t. We were 100% right on that one.
We’re basically right about coding exercises, too. But there’s a better alternative that a few people do, especially long-time coders. That’s what you should actually be doing. It’s more fun, too.
But before we get to what you maybe should be doing, let’s talk about why you’re right about most coding exercises.
You know the Golden Child Engineer, the favourite of the Director of Engineering? He’s that guy (and it’s basically always a guy) who’s the company Teacher’s Pet? The software developer who gets promotion after promotion?
You’re not that guy. With one fun exception, I haven’t been either. And I’ve...
A reader wrote me an email recently. That’s always a good feeling! He had a question about Mastering Software Technique and general code learning that I’ll bet a lot of you share: it’s easy to go off the rails doing useful things rather than what I recommend. But why? Is it a problem? How can it be...
Like most developers who have been developing awhile, I have my favoured ways to keep myself productive. Most are standard: careful use of caffeine, a frequently-curated TODO list, an obvious place to check my priorities, occasional retrospectives and so on.
Subscribe to get free ebook chapters and an emailed coding class now, plus videos and articles a few times a month.
Why this specific newsletter? You want to be an expert. Expertise comes from learning the fundamentals, deeply. And that comes from the best kind of practice.
I write with that in mind. I won't waste your time.
(Yes, I also sell things. They're good, but I'm fine if you don't buy them.)