What open source could learn from proprietary platforms

Open source has taught the industry how to ensure freedom and transparency, but still has much to learn from proprietary platforms as to how to involve lay users.

Tech Culture

Open source has proved to be phenomenally successful, and continues to grow. As open source grows beyond its roots in software infrastructure like operating systems and Web servers, however, it is finding that the types of community it attracts is increasingly corporate.

Even in the geeky application server layer, Marc Fleury notes that JBoss' "community meant users, partners, consultants," not the freedom-loving developers we often associate with open source. This is because our simplistic conception of community has likely always been wrong, as Michael Dehaan suggests.

Open source has long been more about users than developers for the simple fact that a far greater number of people know how to use software than develop it. Hence, though Richard Stallman and early proponents of open source have issued a clarion call for the developer's right to view and modify source code, the silent majority of the open-source community really only cares about the right to use and extend binary code.

So, you see Openbravo's Paolo Juvara suggesting to its open-source enterprise resource planning community that it might be advisable to extend the Openbravo system, rather than customize it. (Read: modify core source code.) Or you read Jake Goldman rightly arguing that open-source software can lead to closed platforms (e.g., if APIs are not well-documented), while proprietary platforms like Mac OS X or Salesforce.com can actually be much more open platforms, despite keeping source code closed.

In an ideal world, you'd have open source and open platforms, but not every open-source project lives up to that ideal. It's therefore not surprising that open source is growing in two different but aligned directions.

The first direction is commercial open source, which generally trades off the promise of 100 percent source-code access for a hybrid open/proprietary approach, as The 451 Group captures in a recent blog post. This is spawned by a need to frontload development with a paid community at a level of the software stack that doesn't attract a broad development community. (How many people do you know have the aptitude and interest to develop an open-source customer relationship management system? Exactly.)

The second direction is proprietary software that emulates the best of open source by keeping APIs, data, etc. open. This comprises Web 2.0 and other technologies that are open, but not necessarily in a way that would pass muster with the Open Source Initiative.

Both approaches involve openness. Both make trade-offs, and this isn't necessarily a bad thing. Jake Goldman, echoing Tim O'Reilly's suggestion that open-source licensing matters very little in the grand scheme of things, declares "it's all about platform openness and adoption, not base code openness." He's absolutely correct.

Open-source projects need to focus on more than their license. We need to improve documentation and access to APIs that make source code more usable or, even better, somewhat meaningless. Cloud computing already obviates much of the value of source-code access, a trend that I believe we'll continue to see as users demand the transparency of open source without having to muck in the code.

Such a trend is a useful "next-generation open source" because it focuses on users, not developers, with data, not code, the primary currency. So, while I'm glad to see the GIMP project discussing usability enhancements, I'd much rather see such projects finding ways to include average users in the process of development.

This has long been a weakness of OpenOffice.org, for example. I doubt most of OpenOffice.org developers do a lot of presentations, spreadsheets, and such. But the target user--someone like me--is mostly locked out of the development process by unfamiliarity with the project and no clear idea as to how to help.

Meanwhile, proprietary software like Lose It! and other social software does a far better job of including users in the "development" process by making development all about data, not source code.

In sum, proprietary software has much to learn from open source, and is increasingly applying open-source lessons of transparency and modifiability. But open source also has a lot to learn from the proprietary software world, which increasingly involves lay users in a way that open source has not.

Follow me on Twitter @mjasay.

Autoplay: ON Autoplay: OFF