I was sitting in my hotel room on a recent business trip and my mind started to wander (after all, if you've seen one hotel room, you've seen them all): I found myself contemplating a world without the source movement! What would be the state of our IT infrastructures, business, and even education without open source? So, with up-front apologies to Linus Torvalds and all the open-source advocates, let's consider a world where the penguin is dead!
The Intent of Open Source
To begin, we need to understand the original intent of open source. Many equate open source to free, and that simply is not the case. The intent of open source is a free exchange of ideas that lets developers collaborate, learn from their peers, and provide mutually beneficial improvements. The GNU project (GNU Not Unix) defines open source, or free software, as a matter of users' freedom to run, copy, distribute, study, change, and improve the software. The GNU site (gnu.org) further defines open source as providing the following four freedoms:
- the freedom to run the program, for any purpose (freedom 0)
- the freedom to study how the program works and adapt it to your needs (freedom 1)
- the freedom to redistribute copies so you can help your neighbor (freedom 2)
- the freedom to distribute copies of your modified versions to others (freedom 3)
For our purposes here, the most important is freedom 1. This freedom has ushered an explosion in collaboration with development peers around the globe. Perhaps more importantly, it has helped steer significant advances in innovation, choice, and availability of information technology solutions.
How UNIX Led the Way
Though the UNIX operating system is not a true open-source development effort, it is still important to note how its history inspired the proliferation of numerous operating system derivatives. In the early 1970s, Bell Laboratories made the UNIX OS freely available to universities, research institutes, government agencies, and computer companies. Many began to use the UNIX system to develop significant technologies that are part of today's commercial UNIX variants. The Internet itself began because of the availability of UNIX. Keep in mind that a large number of today's UNIX implementations were derived from UNIX. Imagine an IT landscape that didn't have UNIX, or at least didn't have the offshoots of UNIX that the source being freely available generated. We'd have significantly fewer IT solutions today.
Remember, however, that UNIX did not (and does not) follow the open-source model that insists on modifications being freely available (freedom 3 from above). This limitation has led to a great many variants of the operating system (DG/UX, Sun Solaris, AIX, BSD, HP-UX, and System V, just to name a view) that, while they are similar in theory, can vary widely in actual application. Open systems (not to be confused with open source) is an attempt to bring commonality and compatibility to these UNIX variants; however, it can only go so far in bridging the gap between them.
Now let's go back to the theme of this article—imagine an IT world in which we had only a single UNIX alternative to choose from when evaluating open-system choices!
Linux Comes on the Scene
From UNIX we move the discussion inevitably toward Linux. Linux was an attempt to develop a UNIX-like operating system without benefit of the UNIX source code (unlike the UNIX variants that had access to the original Bell Labs source). One of the primary differences between Linux and UNIX is that, while Linux follows the open-source maxims defined earlier, it also has fairly strict control over the operating system source. So, the source compiled in one distribution of Linux is the same source compiled in a different distribution of the operating system.
We all know the strength and popularity of the Linux operating system and how it has made significant inroads into corporate offices over the last decade or so. But what if we didn't have Linux? Suddenly, all the LAMP-based solutions disappear—Wikipedia, Facebook, YouTube, and such would simply remain as inventions of the imagination. The Apache web server would not exist without open source, so we'd all have to implement web-based solutions on proprietary products such as Microsoft's Internet Information Server. MySQL wouldn’t exist, either—vendors would have no freely available database server where they could implement their solutions. We'd also lack scripting languages, such as PHP, to incorporate business logic into web applications.
Other Rewards of Open Source
What about the embedded space? The landscape is rife with devices that directly benefit from open source. Devices such as broadband routers, VPN gateways, and intelligent PDUs incorporate open-source code both for the logic and for the management of the device. It's not to say that those devices wouldn't exist, but we'd likely pay more and have fewer choices without open source.
And what about the deluge of mobile devices that dominate the landscape? Without open source, we'd miss out on all the Android-based devices (they have Linux as the base operating system) that have flooded the market over the past year. Many of the mobile browser applications would cease to exist. And tablet PCs, the latest must-have device, would be relegated to a select few choices instead of the current ever-growing marketplace. Watch the tablet space over the next 12 months; the number of choices will increase at a significant rate, and most of the new devices will have some aspect of open-source technology enabling them. Mobile devices would be limited to those based on the mobile Microsoft- and Apple-supplied operating systems—not to say that either of those is a poor choice, but the point is that choice would be limited. And remember that if choice is limited, chances are cost will be higher!
Getting closer to home, what about the IBM i platform? I can think of a few items we'd readily miss, such as the IBM i Web Server powered by Apache and openssh/openssl. Then, of course, we'd lack Linux as an option for implementing additional functions on the Power-based System, not to mention no PHP and MySQL native in IBM i that many shops use to develop dynamic web content and deploy open-source applications on the platform.
But the biggest loss in a world without open source? The lack of collaboration and innovation that a worldwide community of IT professionals brings to the development effort. Just think back over the last decade or so of all the progress that has been made in the IT space. Many of those advances have benefited directly from open source and will continue to do so for many years to come.
How has open source affected your business? I would love to hear about your experiences with open source, both good and bad. You can email me at opensolutions@askerwin.com.