Previous    Table of Contents    Up    Next

Who This Book Is Intended For

We wrote this book to help business executives understand when and how an open-source strategy can help them to achieve their company's business goals. We also want to provide support for the managers charged with implementing that strategy in their day-to-day work running a project that makes use of open source.

The book is also aimed at the engineers who may need to work on open-source projects. We want to give them an idea of what they will experience and what will be expected of them. We also want to give them the information they will need to educate their managers and co-workers about open source.

Third, the book is for anyone interested in a better understanding of open source--its larger history, its philosophy, and its future prospects.

Software Developers

Since we wrote the first draft of this book, the depth of the recession of the early twenty-first century has made itself felt in the software industry. We don't want to make this book specific to a particular era, but we want to point out to software developers of any time period the educational and experiential advantages of working with open source. It is unlikely that open-source code will disappear. This means that open-source systems will form the basis of a significant portion of our computing infrastructure for many years. An individual who has experience working with open-source software will enjoy a variety of advantages.

Experience with open source can add value to your skill set. Operating systems, web servers, scripting-level languages, wikis, weblogs, email infrastructure, and many other facilities come from the open-source world, and experience with these pieces of software is valuable. Experience working with open-source projects can be of value to companies that have or plan to have open-source projects of their own. Knowing the roles of the members and having a good idea of how the process works is essential for companies to succeed with open source, and knowledge comes more from experience than from books.

Working with an open-source project will give you experience working in a distributed development environment and perhaps working with non-English speakers from different cultural backgrounds. Increasingly companies are locating development groups around the world, both in-sourced and out-sourced, and experience in this sort of environment can be essential.

Open-source projects work using documents and written communications. The documents can be as simple as an emailed specification or design rationale, but they are documents nevertheless. Working through writing is a way to bring more discipline to the development process. Moreover, you can become a better writer by practicing writing, and working on an email-heavy project will give you lots of practice.

In an open-source project, the source code is available for inspection, and the designers and implementors of the software are generally available and willing to answer questions. Reading (and critiquing) source code is one of the best ways to learn about design and implementation. Open-source software is available for continual improvement, so it might be higher quality than commercial code and, thus, a better educational experience.

Before open source became prevalent, self-training in many of these areas was a hit-or-miss affair. Learning software development requires interaction, and it was difficult before Internet-based open-source projects existed to find places to get the sort of interaction needed for training.

Innovation Happens Elsewhere
Ron Goldman & Richard P. Gabriel
Send your comments to us at IHE at

Previous    Table of Contents    Up    Next