Digital Edition

SYS-CON.TV
Open Source Software, Standards, and Java
Sun Microsystems publishing Java under the Open Source license

Sun Microsystems recently announced its intentions of finally publishing Java under an Open Source license. But what does that actually mean? We'll take a quick look at what it means to be "Open Source," how the Java language specification compares to other more formal language standards, and the importance of the brand and certification programs. We'll then look at what benefits Sun may get from distributing Java as Open Source and at some of the problems that will have to be addressed.

Open Source Software
The Open Source Initiative defines Open Source software and a license must meet 10 criteria to be considered an "Open Source software" license. Essentially, it's a way of thinking about licensing software. It boils down to some very simple ideas about access to source code and the ability to modify the software and distribute those modifications. It encompasses the concept of Free Software as defined by the Free Software Foundation around a set of software "freedoms," such as the freedom to study how a program works and adapt it to your own needs.

Open Source software is typically developed in a collaborative community, either under a strong leader who coordinates the development community, or a meritocratic process where a developer earns the leadership role in the community like the process favored by the Apache community. Some companies build businesses based on Open Source software projects, generally ones they control. For example, MySQL (the company) maintains MySQL (the database engine).

In these cases, the software has a copyright, is owned, and is therefore licensable. Free and Open Source software is not "public domain" in any sense of the phrase.

Software developed in successful Open Source collaborative communities shows all the hallmarks of well-developed software from other processes. Essentially good software is developed by good software developers regardless of the licensing strategy. So Open Source software has just as much potential to be well-structured, have well-defined stable interfaces, and be delivered through a disciplined process that encompasses software inspection, mandatory version control, and automated building and testing as software developed in other ways.

Where Open Source differs from other well-developed software is in the collaborative community. The best developers interested in the software can participate in its creation and evolution regardless of where they live or work. This provides a number of benefits:

  • Many people see the source code. Software inspections regardless of how informal prove to be much more effective at finding bugs than testing.
  • The code is used and tested in a broad base. This expansion of the "test" bed tends to shake out bugs faster and hardens the software.
  • A diversity of expertise and experience can be leveraged. This applies both to improving the code base, as well as to innovating on the code base to take it in new and interesting directions.
Sun has been an active participant in the Open Source software world since its inception. The original SunOS operating system was a Berkeley Unix derivative that came out of the collaborative efforts around Unix in the early days. Sun has contributed heavily to the accessibility features in the Gnome desktop. Most recently it has opened the Solaris source code base under its own OSI-approved Open Source license (the Common Development and Distribution License or CDDL) and has been developing the OpenSolaris community. So Sun definitely has experience with Open Source, both contributing to other and developing its own communities.

Let's shift gears for a moment and take a look at Java and the Java Community Process from a standards perspective, as that has been Java's history to date.

Standards (Open and Otherwise)
A specification is simply a document describing some interface for interoperability. Lots of companies publish specifications to enable customers and partners to interoperate software with their products better. In such cases, where the specification is published by a single commercial entity, it typically benefits the company by encouraging add-ons to its product.

A standard is a specification that has been put through some form of consensus process by a collection of interested parties. It may be a formal government-supported de jure process with checks and balances to ensure that the consensus isn't anticompetitive collusion. It may be an industry or trade organization (CBEMA, ECMA, IEEE) with a broad interest in an area, e.g., computing standards. It may be an industry group with a narrower focus (e.g.. OASIS, W3C, IETF). The consensus process has rules that define such things as participation, acceptance, interpretation, amendment, and withdrawal.


About Stephen Walli
Stephen Walli is Vice President of Open Source Development Strategy, Optaros, where he's responsible for developing and managing Optaros' relationships with the open source community. Previously Stephen was an advocate for open source at Microsoft, where he was focused on the technical implementation of open source-related community projects, creating a business model at Microsoft to engage in the open source community. Stephen was the Vice-president, R&D and a founder at Softway Systems, Inc, the developer of the Interix environment to re-host UNIX applications on NT. Stephen was also an independent consultant for X/Open, Sun, UNISYS, and the Canadian government. He was once a development manager at Mortice Kern Systems, and a systems analyst at EDS. A long time participant and officer at the IEEE and ISO POSIX standards groups, representing both USENIX and EUUG, he blogs on open source, standards, and the business of software at http://stephesblog.blogs.com/

In order to post a comment you need to be registered and logged in.

Register | Sign-in

Reader Feedback: Page 1 of 1



ADS BY GOOGLE
Subscribe to the World's Most Powerful Newsletters

ADS BY GOOGLE

Containers and Kubernetes allow for code portability across on-premise VMs, bare metal, or multiple ...
"Akvelon is a software development company and we also provide consultancy services to folks who are...
Enterprises are striving to become digital businesses for differentiated innovation and customer-cen...
DXWordEXPO New York 2018, colocated with CloudEXPO New York 2018 will be held November 11-13, 2018, ...
In this presentation, you will learn first hand what works and what doesn't while architecting and d...
Most DevOps journeys involve several phases of maturity. Research shows that the inflection point wh...
Modern software design has fundamentally changed how we manage applications, causing many to turn to...
In his session at 20th Cloud Expo, Scott Davis, CTO of Embotics, discussed how automation can provid...
In his session at 20th Cloud Expo, Mike Johnston, an infrastructure engineer at Supergiant.io, discu...
@DevOpsSummit at Cloud Expo, taking place November 12-13 in New York City, NY, is co-located with 22...
Founded in 2000, Chetu Inc. is a global provider of customized software development solutions and IT...
DXWorldEXPO | CloudEXPO are the world's most influential, independent events where Cloud Computing w...
DevOpsSummit New York 2018, colocated with CloudEXPO | DXWorldEXPO New York 2018 will be held Novemb...
CloudEXPO New York 2018, colocated with DXWorldEXPO New York 2018 will be held November 11-13, 2018,...
Dynatrace is an application performance management software company with products for the informatio...
Disruption, Innovation, Artificial Intelligence and Machine Learning, Leadership and Management hear...
SYS-CON Events announced today that DatacenterDynamics has been named “Media Sponsor” of SYS-CON's 1...
SYS-CON Events announced today that IoT Global Network has been named “Media Sponsor” of SYS-CON's @...
SYS-CON Events announced today that CrowdReviews.com has been named “Media Sponsor” of SYS-CON's 22n...
A valuable conference experience generates new contacts, sales leads, potential strategic partners a...