Video version available on YouTube:
A certain kind of software developer—or more often, businessperson— likes to talk about a hundred-year programming language, or even a hundred-year framework.
That’s a pretty audacious thing to say. I mean, software development is roughly 65...
A reader of Mastering Software Technique emailed me to ask:
You mentioned it’s important to find a source of feedback while learning. I am just starting out with programming, so any suggestions on where to get such feedback would be great.
It’s a great question! Here’s what I told him, plus a little...
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...
Different people can look at, say, a video tutorial and take different things from it.
A new programmer looks at what the video is “supposed” to teach and learns the immediate skill and how to do something in that language or environment.
An experienced developer learning a new language learns how...
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.
More About Coding Studies:
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.
I have an exercise you can do to tell if your Big Rewrite software project will work out. It’s a simple one, but a good one. But first, a story.
Back in 2013 I worked for a company called OnLive. They brought me on as part of a project called “Valhalla” to rewrite a big chunk of their existing system...
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.
I also have a few less-common ones that...