Latest Articles

The Mistakes I Made Starting a Slack Workspace for Rebuilding Rails


Do you sell an online product? Or do you want to?

Have you considered some sort of an online presence for the buyers, to let them talk to each other? It seems like a really good idea. If a lot of people are trying to learn the same thing, letting them talk to each other could be amazing. I know I get some wonderful buyers of Rebuilding Rails and Mastering Software Technique. And I’m an old-fashioned geek. I always want to throw a party to get all my friends into the same room so they can meet each other.

My idol on this one is Nate Berkopec. In addition to being a great conversationalist, he sells the definitive ebook on Rails performance and runs multi-day workshops about it too. But if you buy the ebook, you get an invitation to the Slack workspace. And the Slack alone is worth the price of the book, because anybody who is anybody in Ruby performance hangs out there. They’re not all talking, but they’re available for questions.

His book is good. But it still pales in comparison to having everybody who’s interested in the topic centered in one place. There’s simply no way Nate could give you as much value as everybody else put together… So he doesn’t. He invites you to a group of everybody else put together. It’s a really good idea.

So I’ve sold you on it, right? It’s simple. Make a Slack workspace, all the cool people will hang out there, everybody will buy your product to get access and you can retire to Bermuda.

Not quite that easy, no.

How to Commit to Mastery


In a moment, all of you readers are going to hate Matt Bird. I get it. I hate him too.

He’s a professional screenwriter who also wrote a great book about how to write. You’d think that might excuse him a bit, but no, I’m not letting him off the hook. Some crimes are unforgiveable. You’ll see.


The Fear of Wasted Practice Time


My kids are mercifully distracted for a few moments. The giant jumble of colored blocks on my calendar has a gap right now. No due dates are marked in red in my overgrown to-do list.

I am free to practice. I have skills I certainly want to practice.

And here I am, staring dully at the teddy bear next to my monitor, not practicing. Why? Here’s one: I am afraid of wasting this precious practice time, of throwing it away on nothing worthwhile.

What if I’m practicing wrong? What if there’s some better way to do it, and I’ll be sad that I bothered? What if I’m a sucker because I’m putting in hours that do me no good?

I can’t magic my fear away, but I can talk through it and explain it. I always feel better afterward. Care to come with me on this little journey?

Orangutans and Soap Operas

You’ve probably seen the little excerpts of Orangutan Jungle School on YouTube (or elsewhere.) If you haven’t, they’re awesome, and worth watching.

Here’s a fairly representative example.

But basically, people doing orangutan rescue are doing a lot of filming what goes on with their six-hundred...

How to Encourage a Blogging Culture at your Company


A few months ago, a CTO at a conference asked me, “how do you encourage a blogging culture at your company?” I’m a reasonable fellow to ask. Not only have I written a huge amount for AppFolio’s engineering blog and encouraged other AppFolio engineers to do so, I also did something similar at OnLive with even more success. By “more success” I don’t mean the blog was more popular (it wasn’t,) but that about half the posts were written by engineers other than me, which is the hard part. Writing a lot is all well and good. Getting other people to write a lot is an accomplishment.

The hard part isn’t getting a few posts started. The hard part is blogging with any regularity. And it is hard. But there are some things you can do to make it easier.

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.)