The state of open source: Visions of utopia
- 27 March, 2008 10:33
11 leaders from the open source and vendor communities discuss the current open source climate and outline the challenges and opportunities ahead.
If you could wave your wand and create the perfect software "universe," what would it look like?
Matt Asay: Vice president of business development Alfresco
Everything would be licensed under an OSI-approved license, and preferably only a very few: MPL, L/GPL, and Apache. We'd compete on the basis of serving customers, not on our acumen in locking them in.
Chris DiBona: Open source programs manager Google
Bruce Perens: Creator of the Open Source Definition and Co-founder of the Open Source Initiative
A level playing field for proprietary software and open source. I'm not asking for any preference whatsoever, just fairness and a right to exist and operate for both open source and proprietary software. Because I think that on a real level playing field, open source would win most of the time.
Eric S. Raymond: Programmer, author, and open source software advocate
This is only an interesting question if we stick to technologies we know how to do, rather than muttering things like "strong AI solves the programming problem."
There would be two universal languages. One would be high-level, resembling Python or Scheme -- objects, rich type ontology, garbage collection. One would be low-level, like C but statically type-safe. Both languages would have strong notions of contract programming, for proofs of correctness and security properties. Either language could be used to extend or embed the other.
OSes in this perfect universe might be hyperevolved Unixes, but I think they'd more likely be capability-based persistent-object systems like Eros and CoyotOS that preserve Unix APIs as a fossil relic.
Internet-connected computing would be ubiquitous. An average person's personal property would have more IP addresses than major corporations do now, and more computing power than the entire world had in 1990. Most of that would be used in ways we don't think of as "computing" -- like, if you lost your favorite shirt you just ask it where it is.
People would remember that closed source once existed, but only in the same way that we know our ancestors were bad at sanitation and got lots of diseases because of it. They'd find the idea that closed source and proprietary protocols could ever be a good idea so obviously absurd that they wouldn't even bother to argue against it, just laugh and point.
Top hackers would routinely get mobbed like rock stars -- OK, now I'm off into fantasyland. (Actually, I've had this happen to me, and it's less fun than you might think.)
Dave Rosenberg: CEO and co-founder Mulesource
I believe the future of software is a combination of open source and SaaS. Software consumers are much less interested in building giant applications and instead want to address problems immediately. Open source gives customers control over their infrastructure and SaaS provides instant gratification for applications that have to date been very cumbersome.
In the near term, the key to the universe is open standards and interoperability, which somehow still isn't ubiquitous.
Javier Soltero: CEO Hyperic
It would be a place where end-user empowerment and profits -- dollars or otherwise -- for developers of software are in complete harmonious balance. End-users get to choose and adopt the software they want to use on terms that fit their needs, while the developers of the software get to realize a return of some sort from the investment they put in to develop the software. From the end-users' perspective, the terms they might want might include flexibility, price (free), participation, and transparency (plus many more, I'm sure). They also might include reliability, accountability, and continuity (things they'd likely have to pay for). The developers (large or small; funded or unfunded) would get some return for the time and effort invested in developing the software. The return could come in the form of money -- or at a minimum, contribution, feedback, and direction.
The reason why I consider this my perfect software universe is that this balance is not right in either open source or proprietary companies. Proprietary companies shift too much of the profit towards themselves without appropriately empowering the user. This leverage translates to the high margins that these companies get today, but it's not sustainable. On the OSS end, end-users too often consider OSS products as free and neither participate with nor fund the provider of the software. They too often don't consider the fact that software production is hard and costly (in time, dollars, and human capital) and that without some form of return for the developer the software won't be around for long.
Andy Astor: CEO EnterpriseDB
I actually think we're watching it unfold right now: motivated, independent open source developers in coexistence with capitalists, where the developers are reaping the rewards of doing great work that they want to do, alongside business people who want to create capital rewards for that work and share those rewards with the people who created them. The models for how that works are maturing, and are getting better all the time.
Mark Spencer: Founder and CTO Digium
It would be a software development model and world where people who built and used software all benefited from -- and contributed to -- open source. Everyone who commercially utilized the code would in principle have to contribute directly (through code contribution under GPL) or indirectly (through funding open source development through license fees). This is something I attempted to do with Digium. Some companies have found what they believe to be loopholes that allow them to exploit the system to neither contribute directly nor indirectly, but in fact to detract from our ability to contribute to the project. Given the chance in the future, I would try to find a model that made this airtight.
Robert Sutor: Vice president of open source and standards IBM
Let me focus on standards. More open source developers and communities would be part of the standards development processes around the world, rather than largely leaving that to representatives of corporations. Choosing a free and open source license would be as easy as choosing one from the Creative Commons, and no one would be tempted to tweak it. Intellectual property policies of standards organizations would be more closely aligned to free and open source licenses to remove uncertainty. More generally, open source developers and leaders would stop aligning themselves with and giving the benefit of the doubt to those who historically and consistently have been hostile to open source. It's fine to encourage change in this regard, but be realistic and think long-term.
Zack Urlocker: Vice president of products MySQL
I don't know what you mean by "software universe" but I will take a guess. To me, the ideal software universe is an interoperable stack where you can chose best-of-breed software at each layer and know that it's all standards-based and will work together. And ideally you could pick the different pieces and still have a simple GUI install that makes it easy to deploy. I'd also like to see some of the distinctions in how programmers work with data be simplified. Why does the developer need to know how data is stored in order to use it efficiently? The software should be smart enough to hide these implementation details. Also, I think developer productivity took a huge hit when we moved from GUI development with visual tools and frameworks to Web-based applications. It's like we lost 10 years of improvement. Only now are things starting to catch up with frameworks for languages like Ruby on Rails, Groovy/Grails, Scala, Zend Framework, etc.