Less is More – What’s The Big Idea

When Apple took the world by storm and created the iPhone, it was the device’s simplicity, rather than its complex list of features, that won the day. In technical terms, we call this elimination of unnecessary state; the process of reducing the list of options to eliminate the clutter.

Apple understood this concept, and made brilliant decisions to reduce features in order to give it the friendly factor. You will notice one button instead of 18, one device instead of exposing their iOS to the open market, one place to download apps and music, the latter of which has given them much control profitability.

Consumers rave about the iPhone’s intuitive and user-friendly nature. The reduction of state and good design is what gave it life, allowing only one application at a time with only one physical button. No confusion. Easy. beautiful.

Programming is the same in many ways, with no fewer temptations to add multiple features.

Look what happens if you add one parameter; You are creating a true condition and a false condition. Then add another parameter. Now you have 2^2 or 4 conditions that you will need to test. Add a third and you are at 8 conditions.  In this vein, Windows clearly offered many features and services (internet, phone, contact management) but its first phone, with all its working parts, was a bust.

More features = more working parts = more opportunity for clutter or failure. Complex API’s are necessary. Nowhere does this rule hold truer than when you are dealing with vast amounts of working data. In the end, if it is not simple to read or use, it will collect dust.

I have seen many instances where a new piece of software was installed to solve “every” problem a company was having. The challenge? Such solutions are big and scary and often come with a giant learning curve. This is why Basecamp grew so quickly (it solved one big problem), and why Workamajig, a much more complete system, requires so much effort to sell, train, and install, and why they need a one-year contract to get things going. If people don’t invest in the idea, they will not use it. It’s just too hard.

The world of apps is taking off so successfully for the very same reason. Mobile Apps handle one idea, big or small, at a time. So, if you want your launch to be successful, you may want to do a little elimination of unnecessary state on your own. What big idea do you want to solve?


Buying your computer online for the price? Bad decision. Here’s why.

Traditionally, I had been the first to recommend that friends go online in order computers.  Typically, better prices could be found. If you were a high end user, you could configure it to your desired specs. Recently however, I was presented with a business problem that caused me to rethink my stance on where to buy computers.  The original problem was one of turnover.  We seek out high performance machines for our developers and they simply don’t carry those in your local Best Buy.  So online it is. But wait.  Most custom build shops on the web require at least 2 weeks of build time before it ships.  Most hires are two-week-notice scenarios, and even shorter if the person isn’t gainfully employed.  This leaves my new employee without a computer for over a week in the best case scenario.  I don’t know about your business but that simply wouldn’t do.

What if I don’t need my computer right away?  It’ll save me money to buy online right?

Nope.  Here’s why.  Parts are covered by manufacturers warranty typically for at least a year.  Online companies and brick and mortar alike typically offer the labor and service to replace and fix defective parts during this time.  So if both companies are repairing the machine, it all comes down to turnover and shipping.   If you purchase the computer at a brick and motor nearby, you simply take it in and pick it up the same or next day with no charge under warranty (assuming they keep items in inventory, otherwise they are ordering online just like you).  With that same computer purchased online, you have to pay to ship it back to them.  Knowing that you will be without a computer for several days or weeks prompts you to go running the nearest store to pick up another one to get you by in the meantime. Or worse, faced with this fact, you throw the computer in the corner, purchase a new computer, and tell yourself that you will return it later, which never happens.  The warranty that made you feel warm and fuzzy when you purchased the computer is now quietly expiring while your machine sits cold in the corner.

What’s the solution?  Find a custom builder locally that keeps an inventory of parts on hand at the store and has a parts and labor warranty.    Don’t go to Best Buy.  They only have consumer level configurations and if you do have to come back to them for support, be prepared for it to take weeks, after all they have 50 people with spyware problems ahead of you.  Also, even with the greatest service they wait for the defective item to be returned to the manufacturer instead of pulling an identical item off the shelf in order to get you up and running again.

Why am I writing this article?   Well since Dell figured out how to get the price of a pre-built system down to unseen levels, most of the custom builders have shifted into service revenue models and no longer keep an inventory.  I want you to support the mom and pops that provide this much needed service with your business so that they will still be around the next time that I’m looking for a new build.

If you are in the Birmingham or Trussville area, I recommend Microcomputer right across the street from the Lowe’s in Trussville behind the Hooters at the intersection of 459 and 59.  They have top end mobos, graphics cards and memory, and will configure a system for you on the fly.  Drives are imaged and ready to go.  I was pleasantly surprised to find their prices better than I was finding online.

If you know of any custom builders that keep an inventory on hand, have great prices and services, tell us. Let’s bring them out into the lime light, put them in the comments of this article and let us know about them.


Understanding the lifetime value of a project

When calculating the value of a project, consider the lifetime value of a client

Early in my career as a freelancer, I would look back on projects that went way over budget on time, and when eating a large portion of my time I would tell myself  “I’m never doing that again”.  However, on the very next project I would fall back into my old habits of trying to make sure that the customer got what they wanted for their budget.

Many times looking back, I considered this a business error.  After all, how can I make any money if I flush it down the drain by going over budget and eating a large amount of my time on every startup project?  Time and time again on new projects, I would add unnecessary features early in the project, and then late in the project regret it because of the non-billed time I spent in order to close the project out to the client’s satisfaction.

Lately however, I’ve looked back upon my career and a successful application lives on, grows and needs to be nurtured and enhanced.  Some of my biggest failures on the initial project have virtually made my business.  Without giving any numbers in particular, I’ve had several projects that, over the lifetime of the project, have provided revenues of over 70 times the initial project costs.  Now with this comes a great deal of service, but after all, that’s what we sell right?  And unlike the initial project, where there is usually some risk with the client, add-ons after the project is a success are typically a no-brainer.  Adding a report here or a time-saving action there provides immediate quantifiable value, and is usually an easy target for us to stay on budget.

It’s so important to make sure you get to the finish line with relationships intact, even though at the end of it you may be so tired of the project that you want to rip all of your hair out and go be a greeter at Wal-Mart.  I think this is where a lot of freelancers and businesses fail.  At the end, they are so frustrated with the project and client relationship that they are ready to move on to something and someone else, where they swear they will not make the same mistakes.

With a focus on the life of the relationship, it has taken the pressure to avoid eating the cost of some overtime on the initial project off of our chest, and allowed us to focus on the long term goals of the client as if they are our own.  After all, their success is our success and embracing that has made all the difference.