Open Source development
By Brad Gilmer
What is Open Source, and why is it a powerful force in the software development environment today? How does it relate to television? Does it have a viable future?
SourceForge is the largest Open Source development site on the Web, with over 40,000 projects.
Let's start with a definition. Open Source is free software. Not just free as in “freeware” distributed at no cost, but free in the sense that the source code is made available to anyone who wants it. There are a number of other things that characterize Open Source code, so let's go down the list, as provided by the Open Source Initiative (OSI).
To be considered Open Source, software must meet several requirements. It must allow for free redistribution — people who get the software from you must be able to give it to others. In addition, source code must be included in the software distribution. Source code is human-readable code that is compiled into machine-readable code (sometimes called executable code). It is the executable code that actually runs on the computer. Another requirement is that the license must allow others to modify the source code and then be able to distribute this modified code for free. To preserve the integrity of the author's source code, it is okay for the original author to require anyone who modifies the code to call it something else so that other users can tell which code came from the original author. Another requirement is that there be no discrimination against persons or groups. The license must give everyone the same free access to the code. Also, there must be no discrimination against fields of endeavor. For example, the license must not keep people from using the software if they are a business, or an educational institution. The license must be included with the software. A vendor cannot require that you sign a separate license. The software must not be only part of a larger product. Finally, the license must not restrict other software.
The Open Source community
Open Source is more than free software. It is a community of people working together. In any given Open Source project, there is usually a central core of developers who get the ball rolling. In the case of Linux, the core developer was Linus Torvalds, a programmer from Finland. He posted his first version on the Internet in a newsgroup and said, “Here is something I have been working on.” Others soon took an interest in his code and added functionality. Before long, a fully functional UNIX look-alike was available to the world at large. By this time, many people had contributed to the code, and many others had spent hours testing and verifying the software. Newsgroups for specific areas of interest within the Linux community arose, and newsgroups specifically for support were added.
At this point, several non-profit organizations have been created to support the Open Source community. Among these are SourceForge (www.sourceforge.net), the Open Source Development Network (www.osdn.org) and the Open Source Initiative (www.opensource.org). SourceForge provides just about anything you would need to start an Open Source project, including development tools, project tracking systems, test environments, discussion forums and more. OSDN is one of the best sources of news and information relating to Open Source projects. Finally, OSI is the definitive place for Open Source licensing.
Open Source development works on the premise of member contributions, and “many eyeballs.” The work is done by project members who are affiliated by their interest in solving the problem. Testing and validation is performed by having “many eyeballs” looking at the source code, testing functionality and running the software on different platforms. Open Source software development is truly decentralized. This new development environment was made possible by the Internet.
What's good about Open Source?
Well, there is the obvious end-user benefit that it's free. But people who support Open Source believe that the benefits reach much further than that. They say that the Open Source community provides a wide base of support for software. With thousands of developers all over the world, questions posted to newsgroups get answered sometimes within minutes. Open Source software evolves quickly, and they say that by its very nature it incorporates “best of breed” technologies. Word of new innovations spreads quickly, and Open Source licensing terms encourage others to “borrow” good ideas for their own projects.
Boxx Technologies’ 3DBOXX workstations and RenderBOXX rendering notes are available with the Linux Open Source operating system.
Open Source provides a way for people to contribute back to the community — to see the benefits of their hard work. People who make changes to a program are encouraged (and sometimes compelled) to distribute that work so that others may also benefit. Open Source seems to fit well with the rebel image of programmers. Many programmers are anti-corporate and anti-big business. The Open Source community is still one area of the Internet that seems to remain somewhat free of large commercial influence.
Open Source and television
You may have also heard about the Advanced Authoring Format (AAF), the file format for exchange of video, audio and metadata in the post-production environment. The AAF Software Developers Kit (SDK) is Open Source, and is licensed under the AAF Public Source License (PSL). In addition to the base SDK, the BBC has contributed an MPEG codec to the AAF project under the AAF PSL, and Quantel has contributed an EDL-to-AAF converter, also under the AAF PSL. The EBU has produced sample software for the Material Exchange Format (MXF), which is licensed under Open Source.
The TiVo digital video recorder, the device that allows people to record television programs and play them back at a later time, runs on Linux, the popular Open Source UNIX-like operating system (for more information see www.tivo.com/linux). Also on the Linux front, Disney Feature Animation recently announced that it would be purchasing HP Linux-based workstations and servers as components in its next-generation animation production pipeline. And Boxx Technologies offers both its 3DBOXX workstations and RenderBoxx rendering notes operating under Linux (see www.boxxtech.com).
What's bad about Open Source?
Open Source detractors say that Open Source software is often unstable, untested and unreliable. Critics also point out that, while some programs in the Open Source community are well supported, other programs have relatively small followings and support is at the whim of the developers. Finally, they say that the Open Source financial model is not sustainable. Open Source supporters reply that the same arguments can be applied to commercially available software but, in the commercial environment, users do not typically have direct access to programmers who can fix their problems quickly. They also say that, as programs become very big, the risk of introducing bugs goes up not exponentially, but by the power of four. They argue that monolithic programs from commercial developers are likely to be buggy purely because of their large size.
Is Open Source sustainable?
One question critical to developers and users alike is whether the Open Source concept will survive. After all, how do people work on Open Source projects without getting paid? While it is fine for people to contribute their hard-won personal time to programming, are they willing to continue to do that indefinitely? Once a product matures and programmers are no longer interested in continuing to develop it, who will provide support? As the economy continues to head south, and people try to put their lives together after the dot-bomb era, will programmers go to work for large software companies, thus reducing the number of people available to the Open Source community?
The jury is out on these questions. It certainly seems that the Open Source movement is growing. SourceForge reports 44,446 open projects, 459,456 registered developers, and 110 million page views per month. Obviously something is going on.
Brad Gilmer is president of Gilmer & Associates, executive director of the AAF Association and executive director of the Video Services Forum.
Send questions and comments to:firstname.lastname@example.org