Bad Software – Technology Review

Why Software Is So Bad: “In an amazingly short time, software has become critical to almost every aspect of modern life. From bank vaults to city stoplights, from telephone networks to DVD players, from automobile air bags to air traffic control systems, the world around us is regulated by code. Yet much software simply doesn’t work reliably: ask anyone who has watched a computer screen flush blue, wiping out hours of effort. All too often, software engineers say, code is bloated, ugly, inefficient and poorly designed; even when programs do function correctly, users find them too hard to understand.”

Web Services –

Web services: Ready, set, wait:

“Technology executives and analysts agree that Web services, a much-hyped new way to build software, can enhance software applications by using the Internet for exchanging data. This allows, for instance, for more flexible systems and better communications with mobile devices.

The problem? “IT people are…confused. There are multiple standards, and the authority is being left to the vendors, who no one trusts,” said SoundView Technology Group analyst Kris Tuttle.

The result: Buyers are waiting for additional standards and better compatibility before they commit to large-scale projects.

Maybe we should begin bottom-up with web services: start with the small and medium enterprises of the world who need it and low-cost “Lego-like” software more than the bigger companies.

China Software Market

China Software Market Statistics (packaged software, 2001):

1. IBM – USD 111 million – 6.8% market share
2. Microsoft – USD 84 million – 5.2%
3. Oracle – USD 58 million – 3.6%

Writes Cnet: “According to IDC, China’s software industry was valued at $1.62 billion last year. By 2006, it is expected to increase to $7.8 billion at a compound annual growth rate of 36.9 percent from 2001.”

The Digital Divide

Reuters on the growing Digital Divide:

Yoshio Utsumi, secretary-general of the Geneva-based International Telecommunications Union said “information poverty” remained a reality for much of the world. More than 80 countries had fewer than 10 telephone lines for every 100 inhabitants. And in three out of five countries, fewer than one out of 100 people used the Internet, he said.

“Information has become the key to competitive advantage for both business and modern states,” he said. “Anyone can work and provide a product to the global market, even from a remote corner of the world, if the means of communication are readily and cheaply available.”

I wrote about The Digital Divide recently in Tech Samachar. Emergic is all about bridging it.

Disney using Linux for Animation

Disney Shifting to Linux for Film Animation: “Disney’s animation division is announcing today that it plans to use Hewlett-Packard workstations and data-serving computers running Linux for digital animation work in the future….The Disney move is the latest commitment by major studios and special-effects houses — including DreamWorks SKG, Pixar Animation Studios, Industrial Light and Magic and Digital Domain — to Linux.”

Linux-Windows TCO Study

A study done by CyberSource on the Total Cost of Ownership for Windows and Linux. Linux comes out 25-34% cheaper for a 250-node network over 3 years. This is the viewpoint from developed markets.

In emerging markets, the difference is going to be much greater, because the cost of support goes down. In fact, while in developed markets, the aim is to minimise cost of support, the emerging markets need a lower cost of hardware and software because that is the entry barrier. Salaries are much lower so support costs are lower. But the cost of hardware and software as a percentage of people’s salaries is very significant.

The approach to be taken in emerging markets is that fof a Tech Utility: provide hardware, software, training and support for a fixed price per month. Think of it as an AOL for computing. In fact, even the price should be AOL-like (USD 20 per month). That is the price point at which the market will take-off.

Linux in the Enterprise

A white paper from MetaSource. A good overview of applications available on the server and the desktop. We are using many of these applications for our Thin Client-Thick Server project. Things change a little when one looks at Thin Clients, rather than Thick Clients. Thats the challenge we have been working on.

TECH TALK: Rethinking Enterprise Software: Software Components (Part 3)

The software components that serve as the building blocks of the new enterprise IT architecture are Enterprise Core, Enterprise OS, Information Bus, Databases, Adaptors and Digital Dashboard. As we go up the stack (from the OS to the applications), software vendors should be able to take pre-fabricated modules and assemble them together. An analogy from the MS-Windows world is how easy Microsoft made communicating with the various devices through its API. In fact, someone once described Windows as a collection of device drivers. It may be too simplistic an explanation, but think of how the world was before Microsoft came up with its APIs. The enterprise software world is in that state today.

The big companies can get their own custom implementations or build on software from the large vendors. The smaller companies are caught in no mans land between the two options: one of them is to buy existing software and the other is to get software developed from scratch. Both are expensive and impractical from the point of view of the SMEs (small and medium enterprises). What’s needed is a low-cost, integrated eBusiness suite built out of simpler components.

Creating simpler modules for accounting, payroll, prospecting, sales force management can help in two ways. First, as more companies build these modules, options will be higher for the intermediaries (the software assemblers who are akin to the hardware assemblers the Genuine Intel Dealers). Second, the assemblers can now take a 70-80% solution and then quickly build the necessary interfaces for the end- customers, speeding up the application development process.

Linux and Java should be the two pillars around which the enterprise software components industry needs to be built. For too long, the open source industry has focused on the lower levels of the stack as a result, we now have multiple, different Linux distributions, desktops, word processors, spreadsheets and browsers. This is a waste of time. Stick to adopting one of each Red Hat as the Linux distribution, Evolution as the Email-Calendaring client, Mozilla as the Browser and Open Office for the suite of productivity applications. These become the components for the Enterprise Core. The focus needs to be on creating the enterprise software modules. That is where variety is needed for different industries, different countries.

The middleware (between the Enterprise Core and the applications) is where Java needs to come in. Writes Ganesh Prasad: J2EE is an agent of commoditisation, just like Open Source. Like Open Source, it transfers power from vendors to users and creates a buyers market. In practical terms, what this means is that users can follow an inexpensive prototype strategy (by using Open Source implementations in development and switching to commercial equivalents in production) or they can follow a mix-and-match strategy (by using the cheapest components that are good enough). What is important in the SME case is the ability to mix-and-match.

For the dream of enterprise software components to come true, whats needed is standardisation. This is the interesting part. For the first time, not only are there standards for web services but also for business processes. By using XML,SOAP, WSDL and UDDI along with J2EE, it is possible to build the Enterprise OS on which developers worldwide can build. This will open up markets for enterprise software hitherto untapped.

Imagine hundreds of software factories churning out low-cost, interchangeable components, built to a standard interface. These factories should work like the entertainment companies producing TV serials (as opposed to films). Films take 2-3 years to create and are monoliths. That is what the enterprise software giants are today. They come up with the new products or major upgrades once every few years. TV serial makers, on the other hand, come up with something new every week. They can change course quickly if some experiments dont work. The TV channels are the assemblers piecing together 30- or 60-minute entertainment components to create prime-time programming. The entertainment world needs both the films and the TV serials. What SMEs want is the equivalent of TV serials, and that is what is missing from todays enterprise software world.

Whats needed next is an integrated development environment for business processes to be configured through a graphical interface.

Tomorrow: Visual Biz-ic