Incurring Technical Debt is not an option

08.11.10

Businesses need to understand one thing very clearly “Incurring technical debt is not an option”

I am speaking from experience of dealing with at least 3 drowning companies in the past few months. The technical debt exponents with time and these businesses have paid very dearly. There is no measure on revenue lost, dollars wasted, time lost, opportunities lost and thus these things happen way too often and are accepted as a part of our industry.

But there are options to not get your company into such situations. This post talks about some of the common scenarios companies start incurring technical debt.

Here are some common ways companies start incurring technical debt:

1. Going through extreme pain to blend technologies into a product to facilitate personnel issues

Bear with me here, the last time I checked, humans are way more intelligent then we credit them for.
If you have a better solution to solve a problem, USE IT. Personnel issues are temporary and people learn new systems over a period of time. Your primary aim should be a system that scales with you over a period of time, is easy to manage and solves the problem at hand.

I strongly believe programmers are masochists. They enjoy the pain they go through to make things work. They feel the pride that they solved an extremely difficult problem only to realize eventually that every change and every new addition to the product causes them more and more grief.

Technical debt exponents over time and there will be a point where no one will be able to handle the system and you will pay a huge price to re-write the system. Something you should have just known and avoided from the very beginning.

Businessmen think exactly opposite, they believe in simplicity in things because that is exactly what allows them to take giant leaps and move faster.

When you have better options, go for them. Don’t fear what people are going to say if the option you pick causes them a few weeks of grief to get familiarized with. The excuse that our staff isn’t going to like it is pointless. What if your favorite staff user quits tomorrow? Now you are suddenly left with that horrendous technological solution that you don’t like.

2. Choosing technology that doesn’t fit the problem you are trying to solve

This is another classic. I know of people whose sole interest is to use technologies that look good on their resume. The fact that it doesn’t solve the problem at hand is of little or no relevance to them. Many companies go down this road only to be met at a dead end.

Another scenario is where someone uses a technology that worked for them on another project which was somewhat similar and so they want to move forward with the same. I have personally seen a company drown at least a million dollars because a certain key decision maker used a technology that *worked* in a different environment. We had to rewrite the entire system from scratch and the person had to be moved into a separate department in a re-org initiative. Firing him apparently wasn’t an option.

3. Postpone moving onto something better (because you think “it can wait”)
If you are working in a company that is doing this right now. I feel your pain. Take this example, one of the companies that I am dealing with, has a solution that was developed by a company in 1995. In 2000, the company sent a request to all customers to move on to a better system. The company decided that it didn’t want to because the solution worked for them. It is 2010, the original company that built the software is now bankrupt and out of business, and the company that didn’t upgrade now has exactly 1 box that this software works on. I see people taking turns to log in to that system to use it.

Now they want us to help them out to move to a web based system, and migrate all of their existing data. Guys, what happened from 2000 to 2010 is 10 years of data! Each year that you didn’t migrate, you added a huge debt to your technical debt, until it got to a point where it exploded.

A huge complaint of this business is, “We want this thing working…like yesterday…” If getting a system working is so important, why did you wait for 10yrs? I usually excuse myself of such situations. These are not the battles I choose to fight.

These are 3 extremely painful scenarios I have experienced in the past few weeks. I know there are other stories out there. If you feel there are other examples, please feel free to post and I will compile them.

IT is a very nascent industry. Accountability in IT is minimal compared to other industries, say Hollywood. I think this has to change quickly.

This is what bad Product Design costs

07.22.10

Check out this article at Engadget.com.

http://www.engadget.com/2010/07/22/kin-listed-as-at-least-240-million-writeoff-in-microsoft-earnin/

Mark my words, bad product design will cost you. In Microsoft’s case, it costs them $240 million! $240 million! Most companies will never see that kind of revenues in their lifetime. It is very critical, I mean absolutely critical to have a great Product Design team.

In my opinion, Kin was a flawed product from the beginning. It was touted for a different market. A market which in my opinion did not exist. My guess is MSFT released this product so as to find a reason to bury the product managers and the team behind it. I have read numerous reports that internal wars @ Microsoft were largely responsible for this product. My Q: “What was the CEO of the company doing?” and why he isn’t held accountable for this gaffe.

This is a serious rookie mistake from a corporation like MSFT. This is good, however, as it is a classic case study in bad product design.

Finding Change Agents within your Organization

1

07.18.10

In my previous post I talked about the “Design of Things to Come”. I proposed that companies should start taking design very seriously by giving it an equal footing compared to the other areas of product development.

In this post, I propose the strategies to find change agents within your organization. If you cannot find the change agents, I propose hiring one at the top most level so that change can happen throughout the organization.

Before I give you the solution, here are things you should NOT do:

- Do not give absolute authority to a graphic designer, doing so will give you a product that looks like a runway fashion show, looks striking, but highly impractical for daily use.
- Do not give absolute authority to a product manager, doing so will give you a product with features that everyone somehow wanted, but no one uses.
- and lastly, never, ever give absolute authority to a software programmer, doing so will give you a product that will never function the way a common man expects it to function.

What you need to do is find a left-brained Software Developer. A left-brained Software developer in my opinion has the following qualities:

1. Understands Software Architecture
2. Understands Business and what it means to be profitable (doesn’t need to have an MBA)
3. Is creative enough to understand design
4. Has worked directly with customers long enough to understand what they say v/s what they mean
5. Highly motivated and enthusiastic

Start with a couple if you find them. Most organizations have such guys, trust me, they do. These guys are smart enough to pick a little bit of everything, but have not been utilized enough for them to be dangerous (in a good way!)

Once you find them, send them to a bunch of UX workshops, send them to UX related blogs, send them to potential mentors, send them to specialists for training, send them to search for case studies on UX, send them to customers. Tell them they need to get educated. Make them read blogs from Jared Spool, Seth Godin etc.

Make them the face of your product for the next few months. Give them clear cut objectives. Tell them that:

1. You want to improve your product by 10x

2. You want to make a usable product that caters to a target market (and nothing else). [This can change depending on your needs]

3. They are responsible for amassing as much knowledge about other successful companies, individuals as possible. They will be the change agents within your organization.

4. They should hold weekly lunches with other team members sharing their experience.

5. They should spend daily time with product managers, graphic designers and other key stakeholders to communicate and collaborate on ways to improve the product.

6. You want to see weekly improvements and plans to further improve the product, even if the change is small.

7. Change should affect the customers in some way. It should improve the product in some way. If it doesn’t, it is not worth changing. For e.g. a lot of people get bogged down in the font-sizes or colors. How important is this change? Depends on the context we’re talk about. If it is a call-to-action element, colors and fonts do matter, but if it is a paragraph on a page, you do not want to spend hours fighting over this.

8. Tell them that customer service should become their number one priority and should be reflected in all aspects of your product. They should make it easy for a customer to do something, even if it means that the customer wants to do something that is detrimental to the business, for e.g.: closing an account.

Your only task from there on is to wait and watch and make adjustments as necessary. Office politics will come up, find a way to deal with it. Be honest and open. Tell people you are running an experiment and everyone is being watched, so co-operation is critical to your experiment.

There are cases when you can’t find a change agent in your organization. It happens all the time. This is when you look to either hire someone like that or even better, just bring in a specialist (who can start the process of change).

I hope you enjoyed reading this post. More to come…

The Design of Things

2

07.04.10

“Every $1 invested in usability returns between $10 and $100″ – IBM

Reference: http://live.visitmix.com/MIX10/Sessions/DS01

Our Software industry has changed radically over the past few years. It is for the first time in years that technology has closed in the *familiarity* gap. “What is the familiarity gap, Anup?” you might ask.

See, originally products were always thought of to work a certain way – the way that the users were most familiar with, mimicking real world behaviors – but they never did, largely because of technical limitations. The end product always worked differently and wasn’t intuitive enough, and thereby never bridged the familiarity gap. You could not open up an app or a site and just start using it in the most natural intuitive way without a 100 page user manual or a 3hr training.

Contrast that to the apps and well designed sites today, if you need training to use a system, the product team dropped the ball.

There is a whole new paradigm of user interface design called NUI (Natural User Interface). The success of the iPhone and touch screens has only scratched the surface of the art of designing experiences that connect with you as a user and are an *extension of your behaviors*.

If you ever listen to Bill Buxton speak (http://live.visitmix.com/MIX10/Sessions/DS16) you will notice the importance of the Design of Things to come.

Bill often compares physical designs like buildings, objects etc to software or systems and identifies commonalities between the two and provides us with guidelines to build products and systems that facilitate building wonderful products.

For many, UX equates to designing a pretty looking website, or providing “lipstick on the pig” to an existing site. WRONG! Tony Hsieh shows that user experience trumps over everything. It affects each and every aspect of your business including your people and your product. That is where Zappos comes in. Buying shoes is an ordinary proposition. Buying shoes at Zappos.com is an experience in itself. Nothing can be more rewarding than a Zappos experience.

What Software Industry can learn

The future of our industry lies on designing not just your software, but your business, your technology and your customer service in a way that all these elements seamlessly blend into a superior product that delivers more than you promised. And that is what I call as the “Design of Things” to come.

Companies that understand the importance of design will be the only companies that will survive moving forward. Apple is leading the way (think iPhone, iPad), Microsoft has slowly started showing signs of excellence on certain areas (think Zune HD, Zune Software, Bing and Kinect (think gestures)) and the rest of the companies will eventually follow suit or perish.

It is only when you give design, technology and business an equal footing in building a product that you can come up with beautiful, functional and memorable products.

Read the above sentence very carefully, I mention the fact that design, technology and business each have an equal footing. Corporate Managers will rebuke the above statement. I won’t be surprised. But the price you pay for not following this simple advice is very high. I have personally seen at least one startup with around $50 million in funding bury itself to the ground because the managers’ inability to change to accept this cold hard fact. If only they had listened…

It is a very tough job to change habits, but our industry must realize that these old habits need to die for the good of our industry. Millions of people use our products, some make a living using our products. Can we subject them to the pain and frustration on a day-to-day basis? I think not. It is morally incorrect to build products that frustrate users on a day-to-day basis. They will find alternatives, they always do.

So say you agree to all that I have to say. You’ll tell me, “OK Anup, I am ready to make this change. Tell me how.” I will welcome your decision with a smile and tell you that change will be slow, but certain. It has to be carefully orchestrated so as to not run your business to the ground. It has to be planned and not just in timelines, but also in resources, personnel and technology.

The next article I write will talk about the importance of personnel and finding the right change agents either within your organization or on the outside. Help is readily available, at prices far cheaper than you can imagine.

Seamlessly blending technology and design

03.22.10

I’m very impressed by this video talk at the Mix 2010 Conference. This shows that the possibilities are endless when you have the right mix of technology and design. Enjoy!

http://live.visitmix.com/MIX10/Sessions/DS11

Real Time Web – David Carr Presentation

03.11.10

Stumbled upon this wonderful presentation by David Carr on the Real Time web and its growing importance in our community.. Hope you enjoy it!

Hello Readers

02.26.10

Welcome to my Design Blog. This blog is aimed to talk about interesting things in the technology space and how the product design and development process evolves around various technologies.

Given my experience designing products and understanding technologies, I am certain that entrepreneurs and technology enthusiasts alike will find a lot of valuable information on this blog.