The difference between developers and product designers

Our company is bidding on the re-development of an existing product that has outgrown the technical framework on which it was originally built. The customer has received a handful of offers, and the range of costs and technologies found in those proposals is causing him considerable uncertainty in his choice.

In response to that uncertainty, we’re nudging him to look beyond whether to use Ruby on Rails (our choice), Meteor or Laravel since, at the end of the day, the success or failure of his business will not hinge on technology. Instead, we’re encouraging him to consider the difference between a developer and a product designer, and focus on the critical question of who is capable of creating a product that will ultimately prove successful to his business.

To illustrate, let’s consider what happens when you signup for an account in their existing platform. Upon first login, you see something like this:

The original specifications for this product probably contained something along the lines of, “The system will have an accounts screen that lists all colleagues associated with the organization.” The developer then went about the task of satisfying the requirements, thinking:

When the account screen is accessed, I’ll query the database for all colleagues. And to account for the case there are no colleagues, I’ll show the message, ‘No colleagues found’.

Most developers focus on requirements and technology—i.e. the database query, the message to show if the query returns nothing, etc.—and fail to reflect deeply on the actual use of the product they’re building. In this case, the developer didn’t consider the one instance—and a critical one in terms of product success—of an empty database query that every single user will experience—Their very first engagement with this screen as a new user.

As a new user in this system, I’m left disoriented and confused:

  • Where am I, and what am I supposed to do?
  • The “No colleagues found” text seems like an error message. One minute in, and I’ve already done something wrong?
  • “Show blocked colleagues?” What is a blocked colleague? If I click that, the only thing that happens is that the text changes to “Hide blocked colleague”.

Had I created this account as a potential new customer wanting to “kick-the-tires,” there’s a good chance that I’d leave and not return, since experiencing friction in my very first interaction with the product is probably a good indication of what’s to come should I stay.

A good product designer is continually putting himself or herself in the shoes of the user, taking into account their context, their mindset, their knowledge and expectations, and looking to resolve any aspects of interaction with the product which potentially introduces friction.

In this example, a good product designer would identify the need for a “blank slate” version of the account screen, that’s welcoming and orientating for first-time users. Perhaps something like:

And therein lies the enormous difference in value between the average developer, and the very few who are good product designers. The former creates collections of features that “satisfy requirements”, while the latter creates coherent, effective and ultimately successful products.

Initial impressions of the Overcast podcast app

Since starting to listen to podcasts a few years ago, I’ve always used the Instacast app. Recently, though, I decided to check out Overcast, by Marco Arment. Having used Overcast for about a week now, I’ve collected some observations and initial impressions.

Continue reading Initial impressions of the Overcast podcast app

Search for the elusive, perfect file & screenshot sharing tool

In my daily work, as well as the maintenance of three blogs, I frequently need a tool that allows me to conveniently share files and screenshots. This article discusses my search for that elusive perfect app.

Continue reading Search for the elusive, perfect file & screenshot sharing tool

Why I switched from DreamPress to GoDaddy Managed WordPress Hosting

I recently switched from DreamHost’s DreamPress to GoDaddy’s managed WordPress hosting service. This article explains why, and discusses my experience so far. [Update: Since writing this article, I’ve switched away from GoDaddy, and now host my blog in a VPS at DigitalOcean. You can read about that switch, here.]

Continue reading Why I switched from DreamPress to GoDaddy Managed WordPress Hosting