For those in IT industry for more than a decade, I am sure they miss the good old days in early 90s, especially if you were working in Silicon valley during that period of time.
Well, starting late 90s to early 2000’s, it is considered as “.com bubble busting period”. Lucky enough for me, I was working in Silicon valley from November 99 to November 2000. Every Saturday morning, if you pick up the classified ads in the newspaper, you will be able to pick up lots of bargains from computer servers to office furniture. Many start-ups were closing down after burning off all cash they can find.
Recently, I came across an article which brought up an interesting aspect on why so many companies gone under during that period of time. It said that it was caused by decisions (management decision, technical decisions or otherwise) made by those software companies got themselves in trouble. It continues with its theory by saying the following:
Many newly formed companies start up with some wonderful ideas. In order to realize these wonderful ideas they reached out to VC market. In order to convince the VCs to open their wallets, they need to present the idea in most realistic fashion. Under the financial pressure, the company made decisions to rush into software product development. They short cut product architecture quality, programming quality, they short cut human resource qualification. All they care about is in a shortest possible period of time with lowest possible cost they have something to show or something that allow them to push to the market, even if there are significant flaws in the system. Among programmers, it is commonly referred as “junk code is all over the place”.
Under this approach, the maintainability, extendibility and reliability of the product are greatly compromised. So much so that it affects the sustainability of the business to continue to carry the software product they have produced.
What have we learned from the history of .com bubbles as an industry? How much do we care about the non-functional quality of the software product or software system? As software development manager, application architect, how much time we spend to get some real sense on what kind of program code been put into the system? Some simple questions could be asked “when was the last time you open up the code in the same IDE your developers are using and try to read the code or build the code?”, “How much time you spend with the programmers to understand their code and to help them in writing better code?”, “Are we capable or willing to do so?”
If we failed to learn from the history, the history would repeat in our lives. Sustainability is at the line. I am sure those in leadership position with the wisdom will prevail.
having an idea and delivering on it are 2 different things. To be successful, we need both groups of people - those with vision and those with management skills. I'm also reminded of Microsoft, Bill Gates and how that company started off.. We need leadership in vision and in management. Hiring and keeping the right talent is also an important factor. Sometimes a technically strong person will compromise the Time-To-Market factor. We need a strategy for Go-To-Market and Time-To-Market. It's a balancing act... i guess.
ReplyDelete