Next Sunday, the Passover again falls upon us. For those of us Jews that celebrate the holiday, it is most associated with a ceremonial meal spent with family, where we recite the story passed down to us over hundreds of generations from Maxwell House haggadahs chronicling the exodus from Egypt as slaves of the Pharaoh. Personally, I find the entire experience somewhat draining, because if you really do it the way its supposed to be done, it takes at least ninety minutes to read through before you even get to the Matzo Balls, grandma's brisket and the Potato Kugel (Click for my favorite recipe) and then you have another hour of group reading to go.
To add insult to injury, you get to finish the entire anxiety-inducing trial of patience by watching hyperactive children (who have been sitting still for over 3 hours) unleash their pent up energy race around the house for twenty minutes trying to find two broken pieces of stale unleavened edible sheet rock so they can ransom a ten (is it still ten these days? A Franklin with the current currency devaluation perhaps?) dollar bill from grandpa. The Joyva Jelly Rings, Manischewitz macaroons, flourless chocolate cake and the ensuing heartburn from a schmaltz-laden meal are but a small parting consolation prize for the voluntary mental exhaustion.
Click on the "Read the rest of this entry" link below for more.
My favorite part of Passover, however, is the mandatory re-watching the classic 1956 academy award-winning film, Cecil B. DeMille's The Ten Commandments starring Charlton Heston as Moses and Yul Brynner as the Pharaoh Rameses. The special effects and the miniatures and sets on this movie would cost hundreds of millions of dollars to produce today, and it just wouldn't be the same done in CGI and with "new school" Hollywood actors. My favorite scene in that movie is when Moses goes up to Mt. Sinai and receives the tablets from the Lord, which are inscribed with lightning bolts shooting down from the sky by the Almighty, Blessed be He. Publishing on demand! Cool.
While I would hardly classify myself as a monotheistic deity on the level of the God of Abraham or even worthy of making statements of such cultural magnitude upon high, I would like to take this opportunity, perhaps, as we approach the Passover season, to make some suggestions for Commandments that future generations of technologists and technology companies wishing to pursue Open Source community activities might want to follow.
"Thou Shalt Not Be An Aggressive Monopolist"Microsoft certainly got the smiting it deserved from the European Union, to the tune of over 2.6 billion dollars in accumulated fines over the last 3 years. Single vendor leadership position and domination of key markets in any industry are very frequently unavoidable, by virtue of a company's expertise and duration they've been in business, as well as external economic factors which cause industry consolidation -- such as AT&T with the telecommunications industry (a case of where a monopoly was broken and re-integrated itself through the act of industry consolidation due to economic forces 20 years later) and IBM establishing itself as the dominant provider of mainframe computers despite the existence of several competitors, such as Univac/Sperry/Burroughs, who eventually merged and found the government contracting business more profitable than selling hardware -- and became the service-oriented Unisys in 1986 (although they still maintain their ClearPath business for customers who still need it).
Nevertheless, strong-arm and lock-in tactics such as those used by Microsoft are most certainly one of the least effective ways of preserving your business model long term, as their continually eroding server computing market at the expense of Linux and other open systems has now shown. Continuing to show industry leadership is one thing, but do not attempt to squash the little guy or other players in the process, because then the community will just plain hate you. If your product is good, it will stand on its own merits, although a hundred million dollars per year worth of marketing never hurts.
"Thou Shalt Not Keep Thy Protocols and Systems Closed"It took the fourth plague of EU fines in February of 2008 to make Microsoft see the error of its ways and to force it to cooperate with projects such as SAMBA and open its networking protocols so that Linux and other UNIX-like OSes could have perfect compatibility with Microsoft's CIFS/SMB implementation and directory services. Much like good old Pharaoh, they finally said Uncle, and gave up the specs before the inevitable slaying of the first born, which would have been the next logical step.
However, I have to give Microsoft credit with OOXML. Although the system has been criticized for its inelegance, complexity and incompleteness, the company has been accused of strong-arming various countries into ratifying the specification into an ISO standard and there has been ongoing concerns with parts of the technology being patented, Microsoft has delivered significant amount of tools and documentation for reading and writing OOXML files. So elegant or not, they've produced the goods, it is a standard, and now we have the job of actually implementing it in our Open Source software. To the whiners who continue to kvetch about ODF being better, et cetera, I say, get over it already.
Microsoft is hardly the sole practitioner of closed protocols and APIs, although they get the lion's share of scorn in this area. The Insanely Cool Apple has a completely closed interface to the iPod, making 3rd party syncing software for non-Apple platforms a bit more than just a clever exercise in reverse engineering. Try to hook a non-Apple device into iTunes? Fuhgedaboudit. And as much as Google can play cool about being Open Source with Android, one only has to peek under the hood of the SDK to see it uses a completely proprietary, closed source JVM that sits on top of the Linux stack to provide the application environment. The Pharaoh wears no clothes!
"Thou Shalt not Proliferate Useless Licenses"Microsoft has its own useless Shared Source license, but they are hardly the worst offender in this area because they have the least amount of Open Source software currently in the wild. Given the fact there are now over 50 OSI-compliant licenses, it makes no sense at all to complicate the ecosystem any further, particularly if it is incompatible with the major licenses in use - (L)GPL(2)(3), Mozilla, Apache, Xorg, BSD, et cetera. If anything, we should aspire to eliminate vanity Open Source licenses. While Sun has recently started to join the clue train by making Java GPL2, it deserves ten plagues of frogs and wild beasts because of the utter GPL-incompatible train wreck that is the CDDL that Solaris is currently licensed under. This is perceived as particularly obnoxious by the Open Source community because OpenSolaris incorporates many GPL-compatible projects into its distribution, such as GNOME and Xorg, but it is impossible for projects such as Linux to incorporate Solaris CDDL code. All take and no give Open Source licenses suck. So sayeth the Almighty.
"Thou Shalt not Threaten Open Source Software Vendors, Projects and End-Users"While this could be incorporated into the first commandment, as most of the saber recent rattling in this area has been attributable to Microsoft, they are not the only company to have done this - SCO has actually been a much more flagrant violator of this commandment than Microsoft has ever been, by sending extortion letters and filing lawsuits to end users of Linux distributions for violating their supposed (and now fully dismissed claims of) intellectual property rights. If you want to make nice with the Open Source community -- or any large group of potential customers for that matter, threats and litigiousness is never a particularly good idea. You might end up with pestilence, darkness, fire and brimstone -- or in SCO's case -- bankruptcy and complete insolvency.
The God of Abraham came up with Ten Commandments, but I've only come up with four. Surely, you guys have a few to add to the list. Talk Back and let me know.