TechFocus

Towards success in software

Ihtisham Kabir
Three months ago, I returned to Bangladesh after living abroad for 30 years. I spent 22 years in the software industry in Silicon Valley where I held individual and managerial roles at startups and midsized companies as well as a 15-year stint at Sun Microsystems. Since September 2005, I have worked in the software industry in Bangladesh.

I have followed software in Bangladesh since the 1990s. In 1997, I surveyed local software companies for a company in the US that wanted to outsource work here, and on subsequent visits I have keenly observed changes in the industry.

Those involved with IT in Bangladesh should be proud of the positive changes they have made. For example, in 1997, there were only a handful of competent programmers; now there are hundreds.

Back then very few could write Java (in fact, I gave the first talk on Java in Bangladesh through a 1996 lecture at BUET.) Now, there are numerous Java programmers in the nation. Proof of the pudding lies in substantially complex software that have been written in Bangladesh and are in everyday use throughout the country and many parts of the world.

Despite these positive changes, why is our software industry not as successful as expected? What are some hurdles? How can they be removed?

Here are the hurdles that I see:

  1. lack of a clear vision and purpose;
  2. lack of understanding of software business;
  3. lack of software entrepreneurship;
  4. quality of education and
  5. lack of appropriate infrastructure.

a) Lack of a clear vision: The goals of Bangladesh's software business have never been clear to me. "Success in Software" can mean many different things. Eg,
- Do we want to become an outsourcing powerhouse like India?
- Does Bangladesh want to become more efficient and productive as a nation by using software?
- Do we want to build software products which are bought and used by many people all over the world?
- Does Bangladesh want to become an R&D hub of multinationals (leading to, eg, Oracle Bangladesh Development Center)?
- Going further, do we want to invent new technologies that eventually change the world?
- Or do we want to become world-experts on one area of software (eg, like Eastern Europeans have expertise in software tools?)

These are very different goals which require different approaches and tactics.

b) Lack of understanding of the software business: Locally, there are some visionary and persistent entrepreneurs driving the software industry. Still, I am appalled at the number of people who jumped into the "IT business", believing that hiring some programmers and setting up an office with some computers will somehow make them successful and profitable. As many of them have found out, software business is a tricky and rapidly changing business.

The entrepreneur needs to have a well-thought-out business plan and a clear value proposition. If the business plan does not add up, the business should not be embarked upon.

c) Lack of software entrepreneurship: Often, great software is written by small teams which get an idea and then execute it using seed funding from investors. However, due to cultural and economic reasons we seem not to encourage this type of behavior. Taking a novel idea and making a product and business out of it is extremely difficult here.

d) Quality of education: Ultimately this can be our biggest obstacle. It hurts on two fronts: English and independent thinking.

Poor quality of English in our primary education progressively becomes a big burden as the student makes their way up the grades. In my job here at Dhaka, I have read the resumes of hundreds of applicants who applied for programmer positions. Egregious mistakes in English grammar and spelling are quite common. Spoken English also suffers.

Since English is the Lingua Franca of the software industry, limited command over it hurts the software professional in two ways: in their ability to communicate, and in their confidence when dealing with foreign counterparts. Thus, lack of English undermines whatever technical capabilities they possess.

An insidious result of our education system is that it dampens the creativity and initiative in the student. Software is an intellectual endeavor, and being able to "think outside the box" is a vital necessity (as opposed to, say, garments, where the person must rigorously follow the rules.) But our education system, with its emphasis on memorization and learning by rote, serves to stifle the independent thinking abilities that all humans are born with.

(To be sure, many educators - specially at university level are working hard to change this, and their efforts should be recognized.)

For example, consider the BitTorrent protocol, which is today responsible for up to a third of all Internet traffic at any given instant. It was written by 25-year-old Bram Cohen on a laptop in his San Francisco apartment over several months. Are there some Bangladeshi kids as smart and capable as Cohen? I absolutely believe there are!

Then what stops them from writing the next Big Thing?

d) Lack of infrastructure: More and more software development takes place using the Internet as the seeding bed. Developers use the Internet to research, find tools and libraries, deposit, customer-test and deploy their software. All of this requires rapidly navigating and downloading material from the Web. It is awfully hard to feel inspired when we have to wait long periods for browsers to load web pages, and even longer for downloads to take place.

How can these hurdles be removed?

A) We need to decide what we want to accomplish in software as a nation.

b) We need to clarify the business model that will enable us to reach these goals, learn how to play the software game with our partners customers and vendors, and institute best practices in our industry.

c) We need to find creative ways to promote and sustain software entrepreneurship specially among those under 30. The good news here is that a) I have encountered many Bangladeshi engineers who are extremely bright and need that one spark to do very creative things and b) the cost of developing a new software product has fallen dramatically since 2000 (1/10th) due to open source products and Web maturity.

d) We need to attack the shortcomings in our education system by teaching better English and including more material that encourages independent thinking and risk-taking.

e) We need that Submarine connection yesterday. We need to make more networked computers available, particularly to those who hold the promise of making reakthroughs.

The government can play a critical role in all these steps, eg, by creating a favorable financing environment, by incentivizing locally produced software, by subsidizing R&D in software, by improving the education system, etc.

But ultimately it will be the creativity of Bangladeshi software engineers and the business drive of Bangladeshi entrepreneurs which will lead to a thriving software industry in Bangladesh.

The author is the CTO of DataSoft Systems Bangladesh Ltd.