Open Sorcery and Google Maps
Some years ago, IBM invented the Personal Computer, and began a decades-long battle with Apple for market share. IBM decided early on to use Open Architecture, wherein the technical details of their hardware were made available to the public, while Apple opted to keep such details confidential.
One result was Apple (and later Macintosh) computers that ran beautifully, ostensibly because all hardware peripherals and software packages were made by them, and matched perfectly. Another result was hardware and software markets run amok, as a never-ending line of vendors small and large sought to sell their products, port conflicts and all, to a fast-growing base of consumers.
Americans like to own, not rent, and the attraction of a computer to which no gadgets can be attached was approximately the same as for that infamous automobile of the '60s that came with a sealed hood, because "the engine never needs repair". Ahem. One need not be a stock analyst to see the end result on market penetration of the corporate philosophies of IBM and Apple, despite a surprising valid argument about relative quality. A similar analogy can be drawn concerning McDonalds and Burger King, and the power of marketing.
This background is simply an introduction to the Open Source Revolution, and the benefits it can bring to the consumer at relatively modest cost. Open Source is a term that refers to software that is written and made available for free, and the common practice of other programmers writing patches and modules to improve and extend that software. While this is not common in the world of desktop computers, it has become very commonplace in the world of the Internet. In fact, a huge majority of all the websites in the world run on servers powered, in part or in total, by just six free software packages:
- Unix/Linux
- Apache
- MySQL
- PostGreSQL
- Perl
- PHP
In all the cases above, there are thousands of programmers either donating code patches directly to the project, the best of which eventually are incorporated, or writing add-on functionality that is made available to the public. These modules, sometimes called "contributions", or "classes", become tools that allow a developer to add special features to a project in a fraction of the time (and cost) that would otherwise be required. Simple examples would include:
- Extending a search function to include distance from a zip code
- Importing local weather or Amber Alerts onto your website
In the next few weeks, I will be starting on a module to add RSVP functionality to a publicly available Content Management System. Why? Because I need it, and no one else has written what I need. When it is finished, it will be made available to the public.
Just this week, someone published a module that takes a local address, looks on the Web for the longitude and latitude for that address, and uses that data to import Google Maps into your website. While not everyone needs that functionality, the fact that it can be implemented without investing 50+ hours of research is a tremendous benefit, not only to the owner of a website, but to their visitors as well. The power of the marketplace manifests itself in many ways not imagined by IBM, Apple, or Microsoft. The spread of technology across the Internet and the ability of small businesses to compete in that marketplace are just a few of the benefits from the Open Source Revolution.