Great piece about today's software development process and some of the cool web 2.0 applications.. These applications, such as social networking, community software, ajax, predications markets - use application programming interfaces (API's) so they can exchange data back and forth. This is becoming the year of the open application program interface - API or the Hook. Although I am still baffled why most business development managers (they should care because these tools are user based - not IT) remain clueless to the benefits of using these powerful tools.
"Software Out There", By John Markoff - NY Times
"THE Internet is entering its Lego era."
"Indeed, blocks of interchangeable software components are proliferating on the Web and developers are joining them together to create a potentially infinite array of useful new programs. This new software represents a marked departure from the inflexible, at times unwieldy, programs of the past, which were designed to run on individual computers.
As a result, computer industry innovation is rapidly becoming decentralized. In the place of large, intricate and self-contained programs like Microsoft Word, written and maintained by armies of programmers, smaller companies, with just a handful of developers, are now producing pioneering software and Web-based services. These new services can be delivered directly to PC's or even to cellphones. Bigger companies are taking note.
For example, Google last month bought Writely, a Web-based word-processing program created by three Silicon Valley programmers. Eric Schmidt, the Google chief executive, said that Google did not buy the program to compete against Microsoft Word. Rather, he said, it viewed Writely as a key component in hundreds of products it is now developing.
These days, there are inexpensive or free software components speeding the process.Amazon recently introduced an online storage service called S3, which offers data storage for a monthly fee of 15 cents a gigabyte. That frees a programmer building a new application or service on the Internet from having to create a potentially costly data storage system.
Google now offers eight programmable components — elements that other programmers can turn into new Web services — including Web search, maps, chat and advertising. Yahoo offers a competing lineup of programmable services, including financial information and photo storage. Microsoft has followed quickly with its own offerings through its new Windows Live Web service.
Smaller companies are also beginning to share their technology with outside programmers to leverage their competitive positions. Salesforce.com, a fast-growing company that until recently simply offered a Web-based support application for sales personnel, published standards for interconnecting to its software not too long ago. That made it possible for developers inside and outside the company to add powerful abilities to its core products and create new ones from scratch.
One result is that sales representatives using Salesforce's customer relationship management software to organize their workday can now make telephone calls using Skype, the popular Internet service, without leaving the Salesforce software.
The idea of modular software, where standard components can be easily linked together to build more elaborate systems, first emerged in Europe during the 1960's and spread to Silicon Valley in the 70's.
Despite its promise, however, modular software has generally been limited by corporate strategies that have held customers and other programmers hostage to proprietary systems.
Those limitations have eased almost overnight, mostly because of the open-source software movement, which promotes making information available to everyone.
The shift toward sharing, which in its grandest conception has been termed Web 2.0, has touched off a frenzy of software design and start-up activity not seen since the demise of the dot-com era six years ago.
"These tools are changing the basic core economics of software development," said Tim Bray, director of Web technologies at Sun Microsystems and one of the designers of a powerful set of Internet conventions known as Extensible Markup Language, or XML, which make it simple and efficient to exchange digital data over the Internet.
By lowering the cost of software development and thus the barriers to entering both existing and new markets, modular software is putting tremendous pressure on the corporations that have dominated the software industry.
It is also affecting Silicon Valley's venture capitalists. Start-ups have begun to bypass the venture capital firms, relying instead on individual investors, called angels, or out-of-pocket financing, largely because new ventures are not as expensive.
In many cases, the start-ups do not even require the traditional Silicon Valley garage. The new companies are "virtual," and programmers work from home, relying on nothing more than a personal computer and a broadband Internet connection.
Early examples of the trend were tiny companies with significant ideas, like the consumer Internet software start-ups Flickr, a Web-based photo-sharing site, and Del .icio.us, which makes it possible for Web surfers to categorize and share things they find on the Internet. Both were acquired last year by Yahoo.
For some, the new era of lightweight, lightning-fast software design is akin to a guerrilla movement rattling the walls of stodgy corporate development organizations.
"They stole our revolution and now we're stealing it back and selling it to Yahoo," said Bruce Sterling, an author and Internet commentator.
Even more striking is the suggestion that a broad transformation of software development might reverse the trend of outsourcing to India, where highly skilled but low-paid programmers are plentiful.
"Transforming the economics of software development completely transforms the rationales for outsourcing," Michael Schrage, a Massachusetts Institute of Technology researcher, wrote in the current issue of CIO magazine.
The new economics of software development poses a fresh challenge to the dominant players in the industry. In 1995, when Microsoft realized that the Netscape Internet browser created a threat to its Windows operating system business, it responded by introducing its own free browser, Internet Explorer. By doing so, Microsoft, which already held a monopoly on desktop software, blunted Netscape's momentum.
Last November, Microsoft introduced a Web services portal called Windows Live and Office Live.
But as the world's largest software publisher, it still faces the delicate challenge of creating free Web services. Many of Microsoft's standard PC applications, in the new world of on-demand software, are migrating to the Internet.
At the Emerging Technologies Conference, held in San Diego last month, Ray Ozzie, one of Microsoft's three chief technical officers, showed a prototype effort that uses the Windows clipboard, which moves data among different desktop PC programs, to perform the same function for copying and transferring Web information.
Mr. Ozzie, who used the Firefox browser (an open-source rival to Internet Explorer) during his demonstration, said, "I'm pretty pumped up with the potential for R.S.S. to be the DNA for wiring the Web."
He was referring to Really Simple Syndication, an increasingly popular, free standard used for Internet publishing. Mr. Ozzie's statement was remarkable for a chief technical officer whose company has just spent years and hundreds of millions of dollars investing in a proprietary alternative referred to as .Net.
Moreover, the balance of power is shifting, Mr. Ozzie said. "For years, vendors like Microsoft have put huge resources into tools to build composite applications," he said. "With mash-ups, the real power becomes the people who can weave the applications together."
At the technology conference, Adobe showed a bridge between Ajax and Flash, making it possible for Ajax programmers to easily add Flash graphical abilities.
America Online has made a similar strategic shift by adding a set of "programmers' hooks" to its AOL Instant Messaging service to attract independent software developers to connect to its previously proprietary messaging platform.
Many technologists agree that as software development moves online, the risk will be particularly intense for large software development organizations like I.B.M.'s Global Services, the consulting arm to the company, according to Mr. Bray of Sun.
I.B.M. is testing a faster development system based on Ajax, Web services and XML, said Rod Smith, the company's vice president for emerging technologies.
"We're testing it with customers now to see how disruptive it is," he said.
Mr. Smith acknowledged that the new software development trends present challenges. "Inside I.B.M., do-it-yourself software is an oxymoron," he said.
Another new idea comes from Amazon, whose Web Services group recently introduced a service called the Mechanical Turk, an homage to an 18th-century chess-playing machine that was actually governed by a hidden human chess player.
The idea behind the service is to find a simple way to organize and commercialize human brain power.
"You can see how this enables massively parallel human computing," said Felipe Cabrera, vice president for software development at Amazon Web Services.
One new start-up, Casting Words, is taking advantage of the Amazon service, known as Mturk, to offer automated transcription using human transcribers for less than half the cost of typical commercial online services.
Mturk allows vendors to post what it calls "human intelligence tasks," which may vary from simple transcription to identifying objects in photos.
Amazon takes a 10 percent commission above what a service like Casting Words pays a human transcriber. People who are willing to work as transcribers simply download audio files and then post text files when they have completed the transcription. Casting Words is currently
charging 42 cents a minute for the service.
Other examples are also intriguing. A9, Amazon's search engine, is using Mturk to automate a system for determining the quality of photos, using human checkers. Other companies are using the Web service as a simple mechanism to build polling systems for market research."