On walkabout in life and technology

Products Define You

Dustin Curtis makes an excellent point in his article skewering Visio entitled The soul of a “consumer electronics entertainment connected scenario”:

People stopped buying computers based on specifications and features years ago. All computers sold now are practically identical in functionality. Today, people are increasingly buying computers the same way they buy cars: to define themselves.

I own Apple products because I love fine software, I drink 12 year old scotch because I like fine drinks, I use a Nikon camera because I adore fine photography equipment and I celebrate at fancy restaurants because I really enjoy fine foods.

I also live in Uniqlo and Gap clothing because I really don’t care about my appearance, I drink instant coffee and Twinings tea because I am lazy about caffeine, I use Ikea flatware and glasses because I don’t care about containers, and I do not invest in quality or antique furniture, because I cannot put my feet up on it.

Or do I own Apple because I am a deluded fanboy, and quaff scotch, carry a nikon and eat well to make me look more fancy? Do I wear Gap because I like the style, drink instant because I like the taste, use Ikea glasses because I am a klutz and smash too many of them, and buy cheap furniture because I move countries too often?

Products may tell you something about me, but nothing about my true character, values, beliefs and morality. Am I true and honest or a scumbag? Nice or nasty? Good or evil? Trustworthy? Honorable? Violent? Stupid? For that, you need to get to know me, my family and my friends, and to spend time observing me in my natural habitat. You’ll either like me or you won’t.

I guess products can and do define us, if you interpret it right. But its only a tiny part of a much bigger picture.

Newspapers, Paywalls, and Core Users

Clay Shirky exposes the story behind Newspapers, Paywalls, and Core Users.

As a heavy consumer of news, my biggest problem is finding good old-fashioned journalism in a world of spin, hype, agendas, placements and sponsored content. I worry that we’re entering a world where the truth becomes what other people have paid for me to read because journalists have no other way to finance an honest service.

This isn’t a problem with general-interest paywalls — it is the problem, widely understood before the turn of the century, and one to which there has never been a convincing answer. The easy part of treating digital news as a product is getting money from 2% of your audience. The hard part is losing 98% of your advertising base.

So far, the only news service I feel I can trust is BBC, because it is paid for out of the TV license money in the UK and remains the only truly independent source of real journalism on the planet.

Or maybe we’re already there yet.

How Google Failed to Fix the Mobile Market

MG Siegler, in his blog parislemon, wrote an excellent but badly titled article called Why I Hate Android on how Google blew its, and therefore our, chances at an equitable mobile phone market in the USA.

Google wanted to give-away or sell Android phones unlocked in stores and allow consumers to then choose their carrier. Consumers could then get the best phones, a great operating system, all updates and choice in carriers, something the iPhone only gets us half way to.

Think about this for a second. Instead of going to the store of a single carrier and having a dozen shitty phones shoved in your face by salespeople that made commission, you’d be in total control of the process. The end result of consumers getting to choose their carriers (and phones and plans) was clear: major competition and subsequently a rush of better deals from said carriers to ensure customer activation and retention. 

Or, you could buy whatever phone you wanted unlocked. Eventually, pay-as-you-go SIM cards would pop up in the U.S. as a result.

Instead, Google did a deal with Verizon, who screwed them on the Nexus One and is screwing all of us on Android phones. And because of that bad deal, we got the same out of Sprint and AT&T. And because of those deals we get all these crappy Samsung and HTC phones.

It got worse. These carrier deals mean that almost none of the android phones to be released in 2012 in the USA will even contain or get the latest version of Android (see Ice Cream Sandwich and NFC Are No-Shows at CES). That 2 more years for most consumers on a 2 year old operating system that has been seriously crapified by the carriers.

Not done yet. To appease Verizon, Google even put its weight around the removal of real net neutrality on mobile networks, an FCC ruling that royally screws Google and us.

And so the US consumer loses again. And Google gets perceived to be a little more evil.

I don’t usually agree with this guy, but if you want to know what really happened, its worth a read.

It Should Only Take You a Few Hours...

It sure seems easy to make a table. Anyone can do it, right? Get 1 large flat rectangular piece of wood, 4 equally tall wooden poles, 4 nails and a hammer. Nail the 4 poles to each corner of the flat rectangular bit, and you have a table. Ta daaa!

Now ask a carpenter to craft you a table. First they will spend time discussing the purpose and function of the table - indoor or outdoor, kitchen or dining room, for show or heavy use, what load does it need to bear. Then they will determine the materials to use - hard vs soft woods, laminate, plywood or railway sleepers. Then they will look at the aesthetics of the table - beveled edges, foot design, center or corner mounted legs. And when they finally get down to crafting the table, they spend a lot of time to mitre, mortise and dovetail all joints, install bracing points, use quality glues, dowels and screws, test its levelness, sand it flat, stain it, seal it, polish it and produce a table they are proud of. Seems a whole bunch more work, doesn’t it? It just a table, no?

But there are differences between the two approaches, did you see any?

The table with four nails looks shoddy, it’s wobbly because the legs are not squared, has a warped top, will not last a week before a leg spins itself off and cannot be trusted to bear the weight of single salt shaker. The carpenter’s table looks better, works better, both feels and is solid, does not wobble, has squared legs, is flat, does not give you splinters, lasts way way longer, and can be relied upon to keep a full dinner and a few partygoers off the floor. Which would you rather have?

When it comes to software, most people assume the workload is much like the first table creation approach. Just create a database, fill it with some data, draw a few screens and you are done, you have a software product. I have absolutely no idea where this thinking comes from. Maybe it’s the Excel mindset - “I can do it in excel, so programming it should be easy”. What?

Crafting software is hard. And it is a lot of work. Very much like the way a carpenter approaches the table. As designers and programmers, we need to understand the business, use cases and function of the product. We need to discuss and understand who will use it, what kind of things should it do, how it integrates with other software, where will it be used, how much data, etc, etc, etc. We then spend massive amounts of time crafting the architecture, to make sure the software can handle the user and data load, can grow and scale, and can handle the volume needed (like load bearing on the table). We then spend even more time writing quality, readable and maintainable code, testing each and every component to make sure it works correctly and quickly, fixing bugs and bottlenecks (using the right materials and joints in the table model). We spend even more time assembling the components together, making sure each interface fits perfectly, making sure errors are handled, making sure that the UI is functional, simple and aesthetically pleasing (glue, screw, joint, sand, stain and polish the table). And finally, we hand it over, a complete product that can be relied on to do the job, a product that is fit for purpose, a product we and you can be proud of.

I trust that carpenters don’t have to face the same level of madness that we programmers do. Maybe their customers also complain that the table is taking too long to build, or costing too much, without understanding what is involved. Maybe their customers are also reticent in telling them what the table is for, or how they want it to look, yet complain loudly when it looks different to expectations that were never expressed. Maybe their customers are also looking them in the eye and telling them that the table should just take them a few pieces of wood and a few hours to make, that carpenters have been making tables for thousands of years so this table cannot be all that different. Maybe their customers are saying that it’s easy, and therefore should be done quicker, cheaper and, I guess, magically.

Our customers do exactly that. Almost every time. Without fail, requests I get for new features start with “It should only take you a few hours to ….”, or the “Why don’t you just do … this way because it’s easier”, or “Just make a quick change to …”. What?

Adding a feature to a software product does not a nail and a pole take. We need to understand the form and function of the new feature, create it, test it, document it, and ensure that the new feature does not break anything elsewhere in the system. If we don’t do that, the software will fail, be buggy, not work right and create more problems for our users. Lots of software out there is like that, and everyone who uses this cruddy software does not trust it nor enjoy using it. Just like the wobbly table.

If you want a new feature, feel free to request it but be prepared to discuss it in detail with us carpenters, er, software folks. We’ll craft the right solution for the application and make sure that it works right and keeps on working right. You came to us for quality, reliable software, just like you went to the carpenter for a quality table.

Just don’t tell us how easy or quickly we can do it unless you can do it yourself. If you truly believe it’s quick and easy to do, do it yourself. Go ahead, slap together a wonky table.

If you want a proper product, understand that crafting takes time and skill, there is a lot more to it that you can even imagine, that crafters are people with feelings too, and that a proper product is a joy forever, is worth both the effort and the wait, and should be something we can all be proud of.

Why Patents Are a Big Problem

Brad Lindenberg nails it in Why patents are a big f******* problem

There has to be a correlation between ideas and execution otherwise those who can execute get shafted by those who cannot.

I don’t have a problem with patenting a physical thing that you make, I do have a problem patenting an idea, concept or discovery.

Hiltmonism - Always Be Selling

There is no right time to start selling.

  • If you have a great idea, you should be talking about it, you should be selling it.
  • If you have an alpha level product, you should be finding beta testers, you should be selling it.
  • If you have a beta level product, you should know what the final product will look like, you should be selling it.
  • If the product is done, you should be selling it.
  • If you meet someone, you should tell them what you are doing, you should be selling it.
  • If you are in a bar, and are trying to meet girls, you should be selling it (in this case, yourself).
  • When you run down the street for some milk, dress nice, you never know if you will bump into someone, you should be selling.

The most successful CEO’s are the one who are always selling their ideas and their companies. The most successful sports stars are always selling their sport, their team and their sponsor’s products. The most successful sales people are always selling their products. The most successful people picking up in bars are always selling. Those vacuous celebrities in the papers and on TV are always selling something.

You never know who will be listening, or who your listener will tell, but unless you are talking about your ideas, your products or your business, they’ll never know. They may not be interested in your product or service, but they may know someone who would be.

This Hiltmonism does not imply that this is all you should talk about. Thats just creepy, and boring. And I don’t mean trying to close a sale either, just a small pitch here and there. Selling is all about sharing information, communication and in delivering the right amount of both.

Selling is actually quite easy. Do not be shy to tell people what you are thinking, making, doing, creating or working on. Have a short, 2-3 sentence pitch that’s friendly, not at all pushy, covers the name and the nature of the product or service and is a tad catchy. Deliver it with a smile, quickly, quietly but passionately, in a confident tone and with a touch of understatement. If the listener is interested, they’ll ask for more. You should have that too. And if they are not interested, that’s fine too, they will remember the quick pitch, file it away, and will tell others about it when the topic comes up. You’ll be amazed what people remember.

So always be selling.

Just don’t be a dick about it.

Childlike Wonder

Ever watch a child with an iPad? They seem to immediately get it, they prod and tap and swipe and rotate and in no time at all seem comfortable with it.

Ever watch an adult with an iPad? They hold it, and stare at it, and, well, stare some more, and maybe wave a finger near it, but hesitate to touch. And after all that staring and hesitating, they remain uncomfortable with it.

What is going on?

The adult is first attempting to map the item to their own mind models. If the item fits, for example, the new toaster works kinda like the old toaster, they are immediately comfortable with it (albeit they will not use any of the new toaster features). If the item does not fit a known mind model, most adults get stuck in a loop. Its kinda like a computer, but kinda like a phone, but kinda like a book, but kinda like a computer, which model to use … and the brain enters an infinite loop. After being shown a few things, the adult takes this training, merges it with existing mind models, and uses only the features they were shown. They ever even look at the new toaster features, they never even look at all the other iPad features.

Children, on the other hand, start with no preconceived mind models. Each thing they encounter is a new thing which requires a new mind model. The new toaster has knobs that need to be figured out, oh, this one makes the pop higher, this one makes the toast darker, this one burns in a Hello Kitty face. The child is building a mind model for this device. The iPad contains a plethora of things to build a mind model on, and children gleefully spend hours prodding each button, swiping each screen, and quickly building a new mind model for the device.

At some stage in our lives, we stop having this sense of childlike wonder and start trying to map the world to the mind models we already have. Some call it maturity, I call it sad.

So how does this apply to computer software design and my areas of expertise?

Our users are not children. One cannot deliver unto them a product and expect them to use their childlike wonder to explore the application and build the right mind model for it, no matter how intuitive we think it is. One cannot even give them a manual to explain the product, because they will not understand the text or have time to read it.

Instead, software designers have two choices here. The first is to make the product fit a common mind model (all spreadsheets and mail clients look the same), the second is to provide demos and training.

In the first case, your application needs to look like, work like, and use the same terms as the user’s mind model. Which means knowing what that that is, and conforming to it. It applies design and functionality constraints on the product, and it makes it harder to innovate. Ever wondered why all graphics manipulation apps look like MacPaint (yes even Photoshop?), because they target the same mind model. Or all spreadsheets still look and work like VisiCalc, same reason.

In the second case, where you create something new that requires a new mind model, you know that your users are going to stare at the product, not use it and complain that the old way was better. Get off my lawn and all that. The very best training is hands on, give them tasks, walk them through it the first few times, and wait for the next time when they proudly announce that they know what to do. It is at this stage that you know they have built a mind model, albeit a very weird one. Create tools to then help them learn new features. Screencasts are great for this, and easy to create. And before you know it, you’re back on the lawn, the new way is the better way. It just takes a lot of time and patience.

So next time you are ready to release a feature or a product, put it in front of a few children and watch where they go first. Ask them what they see, why they prodded that first and what have learned by playing with it. Then do the same with adults, but this time, lead them where the children went. It may not bring back a sense of childlike wonder to the adult, but it will help then learn build a mind model to use the product sooner.

But it is in yourself that you can make the change. Next time you are faced with an unfamiliar thing, don’t try to map it an existing model, try to find your sense of childlike wonder, play with the thing, poke it, prod it, rotate it, open it, try to figure it out and see what happens. You will have fun, and you will build a whole new mind model.

Does Money Even Exist Anymore?

Dave Caolo, writing in Does money even exist anymore?:

More and more it seems like money is a myth.

I assume he does not live in the USA or Japan. Back in Australia in the 1990’s I certainly would have answered no, everything was BPay and a card swipe. In Japan in the early naughts, the answer was yes, they still hold on to cash as a primary form of exchange because its polite, but now do most smaller transactions via SUICA.

But the USA, folks, oh yeah, money exists. You need

  • Checks (Cheques) to pay rent or company bills (my wife had never seen a checkbook until we came here), no electronic service here
  • A checking account to receive checks, because that’s how I get paid
  • Small denomination bills to pay tips or purchase coffee
  • Larger denomination bills to split restaurant checks (bills) or buy milk
  • Coins, yes actual coins, to do laundry and buy newspapers

They don’t even offer PIN service for credit cards, or electronic payment between friends.

I can’t wait for the day that money becomes bits for me again.

Bandwidth Caps Never Necessary

The carriers blame a small proportion of their users with hogging all the available bandwidth on their networks and thus explain why their networks are so slow. They then use this excuse to cap and throttle their users, us, and to charge us more per month.

I call bullshit.

There is plenty of backbone bandwidth available, its cheap and its getting cheaper, and carriers buy it in bulk. There is just no rational profit in it.

The real issue is that the carriers have created a massive revenue opportunity from nothing. Following the economics of scarcity rule, they can charge more for a scarce resource. So, by not providing enough bandwidth (even though its all there and available), they create a fake scarce resource, which they can then claim is scarce, overcharge us for it, and make huge profits on it. And since they are the only game in town, we just have to suck it up and pay.

Robert X Cringley, wrote in Bandwidth caps are rate hikes, well worth a read, points out the absurd built-in profit margins:

That 250 gigabytes-per-month works out to about one megabit-per-second, which costs $8 in New York. So your American ISP, who has been spending $0.40 per month to buy the bandwidth they’ve been selling to you for $30, wants to cap their maximum backbone cost per-subscriber at $8.

He goes on to explain that network and interconnect costs are dropping, network usage is growing (we all use Siri now) and with caps in place, the carriers will catch us on overages, just not now, later, when we all need the bandwidth even more, when its too late to do anything about it.

This is backed up by Time Warner CEO, Glenn Britt, who said in a conference call:

“I think that the conversation about usage based pricing should not be tied to a conversation about costs,” Britt said.  “This is not a rate of return regulated monopoly industry like AT&T was before 1984.  We have a lot of different products, a lot of different offerings and we’re aiming at different segments and different combinations and the pricing will relate to that.  This is not a strict cost-base thing so those facts are interesting but not terribly relevant to pricing.”

In other words, the caps and throttles and scarcity are all made up bullshit to enable overcharging and to maximize profits.

What is driving me to write this post is an article in today’s New York Times, who should know better, entitled Top 1% of Mobile Users Consume Half of World’s Bandwidth, and Gap Is Growing - not worth a read because its full of spin. In the article, the NYT claims that the top 10% of users are using half the bandwidth. Thats probably correct (see the Pareto principle), but then they spend the rest of the article spinning it that these users are chewing up half of a scarce resource (it isn’t), making the rest pay for it (nope, the carriers do this), compare this to the Wall Street fat-cats and the Occupy movement (ludicrous), and that these heavy users should be punished (that’s all of us soon, folks), pure utter bullshit. And their source is a company called Arieso whose sole purpose is to be paid by the carriers to publish reports claiming the scarcity of bandwidth is real so the carriers can screw us.

Are carrier caps and throttles necessary? The answer is no, has never been anything but no, and never will be anything but no.

Want to know more: Stop the Cap

My Favorite Mac Apps of 2011

I’ve compiled a list of my favorite Mac apps for 2011. Just wanted to mention the ones that make my life that much easier. I am intentionlly excluding all built-in applications or anything from Apple, such as iWork, iLife and Aperture which are mainstays.

Some you may know, some you may not.