The Dangers of Unchecked Power
One of my favorite quotes these days is from “Sideshow” by Sheri S. Tepper: “Evil comes from unchecked power.” Oracle's recent lawsuit against Google over their use of Java in the Android operating system is ample proof of this if there wasn't enough already in the world at large.
How does Oracle get away with this? Java is mostly open source, isn't it? Well, actually, software can be open source and still be proprietary - and Oracle, now that it owns Sun, defines the specification for Java. Open source or not, Java is Oracle's intellectual property. They have taken a phenomenal technological development that millions of people depend on, and have turned it into a weapon against their foe(s) - and by doing so are endangering the stability of the entire Java ecosystem. Are you surprised? As Lord Acton said: “Power tends to corrupt, and absolute power corrupts absolutely.”
Fortunately for the xTuple community the PostBooks project rests entirely on foundations that are rooted in not only open source projects, but international standards not owned by any corporate entity.
C++: Our client binary is built with C++ a language originally designed by Bjarne Stroustrup that is now defined by ISO/IEC 14882, an ISO standard, which is published by the ISO/IEC JTC1/SC22/WG21 committee. It is a proven and ubiquitous language.
JavaScript: That same client can be extended using JavaScript which, by the way, has no technical or legal relation with the Java language at all. Originally developed by Netscape, JavaScript was only given its name as a marketing gimick to piggy back on the popularity of Java. The formal name for JavaScript is EMCAScript which is defined by the EMCA-262 specification and ISO/IEC 16262.
PostgreSQL: Originally a research project at the University of California Berkeley, the database platform we use is now developed by an enormous global community of developers and is not owned by any single company. It has its own Berkeley-style open source license that is so permissive, it makes Postgres public domain for all practical purposes.
SQL: The most popular implementation of the relational database principles outlined by E.F. Codd, and originally developed by IBM, SQL is now defined by a series of international standards. Though no database in existence conforms 100% with SQL standards the PostgreSQL community, as the name implies, strives for conformity with these standards including the latest: SQL:2008.
What does this all mean to our fellow xTuplers? Well, it means that the basis of our project is not subject to the tyranny of any particular individuals or companies who decide that the enlargement of their empire is more important than the users of their product.
Now it is true that xTuple in its current form is fairly dependent on the Qt C++ library that was recently acquired by Nokia, the largest maker of cellphone handsets in the world, which is indeed a large corporation. Fortunately for us they have turned out to be an exceptionally good steward of the Qt project, first and foremost by re-licensing Qt as LGPL, which again is an extremely permissive license. Also, they have increased their engagement with the Qt user base dramatically over the last year or two in all the right ways.
That said, even if somthing changed with Nokia, we still have a variety of other options with C++ because, as previously stated, C++ is not owned by anybody. We could write our own implementation if we wanted to. However, there are plenty of other open source C++ libraries out there including but not limited to Boost, Asio, QuantLib, Apache, and Wt the last of which has particularly caught my attention as of late.
It's likely that you are here reading this because you have an interest in open source software and that interest is fueled by a frustration with the capriciousness and arrogance of traditional business system software vendors. If that is the case we're glad to have you here looking at xTuple and our open source brethren. Considering the aforementioned Oracle lawsuit, and the fact that Oracle has also co-opted MySQL as well (the “M” in LAMP), I urge you while evaluating your open source options to not only look at the quality of the open source project and community itself (see my blog on trust), but consider the openness and ownership of the technology on which the project relies as well.
- jrogelstad's blog
- Login or register to post comments
Thanks man.
I find your blogs always small, informative and pleasant to read.
I also agree with your ideas.
Till date we have been using Delphi as our primary development tool and the famous and really usable FireBird as database backend. But after studying pgSQL as you people have used it in PB! I have started liking it a lot. I have already started a pet project using it.
I do have one grievance against pgSQL and that is that is not possible to use it without installing it, unlike the embedded version of FireBird. Using FireBird helps us a lot as we can distribute a single user version of our software and also client server version without having to change one single like of code. I would suggest you to give FB a close look also.
I hope someday someone from pgSQL community will release an embeddable version of pgSQL.
John,
Now that hunspell has been incorporated to the core, I was checking the source and I found that hunspell is Sun's copyright. Is hunspell future similar to java's? Do you think Oracle is going to follow the same attitude with all Sun's projects?
Regards
Alfredo
Well, first of all hunspell is LGPL licensed (as is QT by the way) which means people have a lot more latitude to do what they want with it over a GPL licensed project. You can even include it in commercial closed source products if you want. Java has a GPL license which has a lot more constraints regarding how alterations can be redistributed, particularly in commercial products like Android.
Second, I don't see any reference to Sun in the hunspell license files. Hunspell is used by Open Office which is a Sun project, but I don't see that they hold the copyright. Hunspell is also also used by Mozilla and Apple OSX among other things.
Here is a link to the two hunspell license files now in our project:
http://postbooks.svn.sourceforge.net/viewvc/postbooks/xtuple/trunk/hunsp...
http://postbooks.svn.sourceforge.net/viewvc/postbooks/xtuple/trunk/hunsp...
I found the legend on the makefile, if you open the make file in the xtuple\hunspell folder you will see the legend Sun Microsystems. I was just curios because I keep in mind this particular blog entry you made.
Regards.
Alfredo
That may be a make file generated by your build environment. I don't see any reference to Sun in the two make files that are part of the project structure:
http://postbooks.svn.sourceforge.net/viewvc/postbooks/xtuple/trunk/hunsp...
http://postbooks.svn.sourceforge.net/viewvc/postbooks/xtuple/trunk/hunsp...

