-
Civilizing Development
Civilization advances by extending the number of important operations we can perform without thinking.
Alfred North Whitehead, as quoted in The Pragmatic Programmer
-
Tool Builders
To ensure that things get automated, appoint one or more team members as tool builders to construct and deploy the tools that automate the project drudgery. Have them produce makefiles, shell scripts, shell scripts, editor templates, utility programs, and the like.
-
The Resale Value of Information
When a manager cannot tell the difference between information that is useful for predicting the outcome of a project, she thinks about the next best thing: The "resale value" of the information with people one step removed from the project, like her own manager. So she values things like pretty PowerPoints about the architecture higher than finished pieces of functionality.
-
Podcasts for Hackers
If you're like me, and have a longish commute, it can sometimes be a challenge to fill your iPod/iPhone with the right mix of intellectually stimulating material and light listening. To help you out, here are the podcasts that have stood the test of time in my iTunes subscriptions.
Programming
Ruby Rogues
Hosted by Charles Max Wood, this is a roundtable podcast featuring some of the brightest Ruby developers around. The discussions tend to be deep dives into particular areas, like metaprogramming, the right way to do object-orientation, etc.
Javascript Jabber
This is a newer addition to my playlist, but it has already earned it's place. Another CMW podcast, this is to Javascript what Ruby Rogues is to Ruby.
The Javascript Show & The Ruby Show
20 minutes of the latest Javascript and Ruby news, with hilarious commentary from Jason Seifer and Peter Cooper.
Ruby5
5 minutes of the latest Ruby news twice a week. Great for when you just want a quick overview of what's happening.
Business/Startup
Mixergy
The granddaddy of all startup podcasts. Andrew Warner interviews dozens of startup founders to figure out exactly what it is that made them successful.
The Kalzumeus Podcast
There's only one episode out so far, but that was a great overview of how Patio11 got to where he is today. Keep an eye on this one.
Startups for the Rest of Us
This is very much a "how to" podcast, with lots of specifics on strategies and tactics for launching a software-based business.
Techzing
A rambling discussion podcast which covers pretty much everything, from conspiracy theory to weight loss, but the most consistent theme is web-based startups. And it is fascinating to listen as Justin and Jason work on building their own startup(s).
Build and Analyze
Another rambly one, this is hosted by Marco Arment of Instapaper fame, so it tends to cover the iOS/Mac/Android app ecosystem.
Founders Talk
This interview show by Adam Stacoviak invites founders to tell their stories.
Marketplace Money
Sometimes you just need to take a step back and think about your startup's place in the US or world economy. This NPR podcast will help you do just that.
General Enrichment
This Developer's Life
Does a podcast about the lives of developers sound boring to you. It did to me too. Fortunately, this podcast is not at all boring. In fact, it is just as good as the best of public radio, with experimentation in sound, storytelling, and theme. This will keep you coming back.
RadioLab
WNYC's RadioLab explores the intersection of science, philosophy, and life with a soundscape that you can recognize right away.
Podcastle & Escape Pod
Programmers tend to spend their days wrestling with literal-minded machines, so it's great to stretch our imagination in stories provided by these Fantasy and Science Fiction podcasts.
Writing Excuses
Need to stretch your imagination further? This 15 minute podcast ("Because you're in a hurry, and we're not that smart!") is a roundtable discussion with bestselling SF&F writers discussing the tools of their trade, and managing to make it entertaining at the same time.
Suggestions?
Obviously, a list like this will always be incomplete, but if you have suggestions, please post them in the comments on Hacker News, and I'll be happy to update with the more promising ones.
-
LifeFORCE: A Game of Life project with Canvas & CoffeeScript
Categories: Projects
Mmm. CoffeeScript. That's how all the cool kids write their JavaScript these days, right? And Canvas. No self-respecting game developer is satisfied until he's implemented an HTML5 version with Canvas.
But since I'm not much of a cool kid, nor much of a game developer, I hadn't gotten around to doing anything with either of these technologies. So what's a guy to do? Why, a microproject, of course!
So I set out to build something, anything, that used both CoffeeScript and Canvas. What I eventually decided on was implementing Conway's Game of Life. But this would be an implementation with a twist.
In addition to building the Game itself, I would also track how successfull each cell was at maintaining life over time. Something that I decided to call it's "life force."
You can find the results of that here:
-
Optimizing for Humans: A Marketing Equation for Developers
Categories: Startups
It's a common sentiment among developers that it is "better to spend your time optimizing for humans, rather than optimizing for Google’s algorithms."
On one level, this seems to be a confusion about what good SEO is.
Step 1. Find what people are searching for.
Step 2. Provide content that meets their search criteria.
Result: You have optimized for humans.
But on another level, this is an instance of developers' more general aversion to marketing. What we need to realize is that marketing is just another way of optimizing for humans. Here’s how I think of it.
Time spent building your app = Optimizing for Use (by humans)
Marketing = Optimizing for Discovery (by humans)
The Equation
Number of discoverers * Fraction that find it useful = Number of Users
Examples
Scenario 1
You start off with the following:
5000 discover * 1/10 find it useful = 500 Users
You decide to work on increasing your product’s usefulness and get:
5,000 discover * 2/10 find it useful = 1,000 Users
Scenario 2
You start off with the following:
5000 discover * 1/10 find it useful = 500 Users
You decide to work on doing a better job of marketing and get:
10,000 discover * 1/10 find it useful = 1,000 Users
The Lesson
What’s the point? That both marketing and product development are force multipliers.
Once your product has reached a basic level of utility, you can get equivalent results from either marketing or further development. The question is, which can you tweak most easily?
Sometimes it is one, sometimes the other. But since developers actually like to develop things, and tend to neglect marketing, you should probably look around and see if you can rack up some easy marketing wins.
Obviously, this is very simplified. It leaves out lots of things like the friction of signup/download, whether people are willing to pay what you’re asking, and the question of optimizing for different types of users. Nevertheless, I think it is a good mental model to start from.
-
Rebooting Design Pepper
Categories: News
I'm starting the Design Pepper blog over from scratch. There are a few reasons for this, but the biggest one is that it felt like a huge burden to produce new posts and format them appropriately.
Accordingly, I'm switching from Expression Engine to Nesta. Expect to see more here soon.