Case Study: Clusters and Image Processing, Part I - page 7
There is much talk these days about the wonders of Open Source and how it is going to change the world. Many of us truly believe that returning to the process of peer review and allowing people access to source code so they can contribute to it shows much promise. What remains to be proven in many people's eyes is the viability of Open Source in the business world. Some still see it as the domain of hobbyists who must otherwise have a "real job" in order to eat and pay the rent.
Mark Lucas was kind enough to share his thoughts and insights with me since he and ImageLinks began their Open Source initiatives. In the beginning, Mark felt that the Open Source movement signaled a healthy paradigm shift for the software industry. He believed that his company's placement as a service provider rather than a software-development house would make it less painful to blend into the movement without losing serious revenue in the process.
Certainly ImageLinks's initial entry into Open Source gave it more exposure than anyone there ever dreamed possible. This result saved ImageLinks some serious money in marketing alone. Even as a service company, however, integrating Open Source into the future of ImageLinks required an adjustment of the entire business model.
Part of the new model Mark had in mind involved trying to find a way to financially reward the key contributors to the OSRS project. Otherwise, there was always the risk that these people might have to move on to other things in order to pay the rent, put food on the table, put their kids through school, or even put themselves through school. Like it or not, money is still necessary in this world. A summary of his thoughts on how this was done specifically for ImageLinks is included in the section "Making Open Source Profits," later in this chapter.
In his 1999 writing, Mark identified a list of models to consider following along with how each might apply to ImageLinks. Table 3 details his thoughts on this issue.
Table 3 Summation of approaches ImageLinks might take in the Open Source movement.
An Internet portal is a Web site that, through a combination of quality, hard work, and sheer luck, is considered the best place to go for its topic. This position can be leveraged into advertising revenue or used in other creative ways, and it's an excellent marketing tool.
Become the single, best point of access for finding any software and source code or obtaining services related to remote sensing and geographic information systems (GIS). Advocate for these groups' interests with the U.S. government.
This model involves packaging Open Source tools for download or convenient purchase, providing user-friendly installation programs, building user-friendly manuals and training programs, selling service contracts, and building new Open Source tools to share with the community.
Package and sell Open Source remote sensing and GIS tools, public domain data sets, user-friendly documentation and training, and customer support. When charging a price low enough that it is an affordable alternative to having to download and package--and perhaps burn onto a CD-ROM--the tools themselves generate sales.
Virtual development company
A virtual development company is a company that is not really a company. There may be a small company at the core, but the rest involves subcontracting work out so that the company's capabilities are never limited by its core size.
Contributors to OSRS would have the option of being on-call contractors, brought in for jobs that suit their talents and time availability. This would even be possible by subcontracting through the company the person works for if that person is not his or her own boss, which would increase that company's support of the OSRS initiative as well.
Today, Mark Lucas believes more strongly than ever that a paradigm shift--a fundamental change in the way things are approached and done--toward the Open Source way of doing things is occurring. However, he has run into two different problems in implementing his own solutions:
- Many managers and investors cannot seem to make the shift away from a focus on intellectual property and patents.
- Many Open Source advocates have a bias against business and profit-seeking.
Mark, along with many others, believes that it is inevitable that a way around these two issues will be found. Either that or the issues may slowly evaporate over time as implementations of Open Source in business demonstrate to both sides that this is not only a viable way of doing business, but it's still true to the philosophies of Open Source. Until then, folks such as Mark have to constantly pause and analyze their approach from, at a minimum, the two angles mentioned.
One model that does work for ImageLinks--one that was not listed in the table mentioned earlier--is bringing customers into the Open Source fold. As I mentioned earlier, some of the biggest attention OSRS received from the very beginning (in early 1999) was from the U.S. government. Throughout 10 or 12 meetings, Mark had to address issues around this weird phenomenon of allowing people to see the source code. Some of these concerns revolved around configuration control, security, and development methods.
The government contacts had the impression that Linux and Open Source projects were handled somewhat randomly, with people just editing things as they saw fit. They wanted to ensure that the documentation and source code were tracked in a controlled fashion. Considering that Open Source teams quite often use management tools such as the Concurrent Versions System (CVS), this concern was actually not a problem at all. This has become one of the greatest Internet benefits for the Open Source movement--instantaneous, global version tracking and bug reporting engines such as Bugzilla.
Another worry revolved around security. The primary worry was that a malicious programmer might add a Trojan horse or a harmful bug into the mix. However, it is difficult to pass something like that past the entire Open Source community or project team. The entire team would have to be behind the effort. ImageLinks was not likely to comply with allowing someone to sabotage their work in such a manner. In fact, because many people participate in Open Source projects for the reputation and pride of doing so, it is more likely that a troublemaker who tries to introduce problems into the package will be banned from the project than it is that the code will be negatively tampered with.
People often pour over Open Source code to make sure it is elegant, as programmers like to call it. It is actually easier to hide Easter eggs, Trojan horses, and other such things in "closed source" code because so few people lay their eyes on the code.
There was also a concern about how to incorporate traditional software-development requirements into the mix. Proprietary software-development methods often begin with a series of meetings that involve drawing up the specifications that the software needs to meet and then doing all the development at once. An Open Source project tends to work a little more freeform, involving smaller steps. Development is done in phases, with each phase's specifications laid out. Also, rather than having a series of large, long meetings, Open Source development teams tend to be in constant communication through email discussion lists. Email has become more popular in the corporate culture as well as in the Open Source culture because of a number of factors.
People can choose when in the day they want to read their email, so they tend to keep it for moments when they are not heavily concentrating on some task. Also, people tend to think out a bit more what they are going to say when composing email. Not only is the concern there that your words are written in stone, but it is hard to take something back when you sent it out there for all to read and save. Also, folks simply have more time to think when writing email than they do when talking in person or on the phone. They can develop their thoughts into a coherent fashion, laying them out so they make good sense.
Finally, in October 1999, the government invited ImageLinks to make a presentation at the Multi-Modal Image Fusion conference--hosted by Kodak for the U.S. government--and show off what it is capable of. The presentation consisted of two key parts. The first was about ImageLinks, itself, and where it saw the commercial end of its business headed, and the second was about ImageLinks's initial experiments with Open Source and how it was hooked on both the idea and results they gained with Open Source--and how, in turn, it expected the government to benefit as well. In December, after further meetings, the decision was made to put ImageLinks under contract.
In April 2000 the details were finally hashed out. The government contracted ImageLinks to begin the Open Source Image Map Experiment (OSSIM), which Mark claims is pronounced awesome. The goals for this project were considered impossible to accomplish with the resources allocated and traditional software-development methods. ImageLinks was to build a library of applications with the following capabilities:
- Importing a variety of digital map file formats
- Exporting a variety of digital map file formats
- Containing algorithms for processing images
- Building map projections
- Implementing geodesy technology, which allows for locating things accurately on the earth
- Building three-dimensional models
- Implementing photogrammetry, which allows for properly projecting digital images onto the earth's surface
- Recognizing geological features
- Checking and balances for making sure assessments are accurate
- Running statistical analyses
Certainly all these tasks could be done using any software-development method. The twist was this: The entire project had to be completed within nine months, with enough funding for only three full-time programmers. Notes were to be kept about which Open Source methodologies worked and which did not, especially in the area of utilizing Open Source while following strict government requirements. Mark confesses that he felt that they may have bitten off more than they could chew, but ImageLinks plunged ahead.
Six months into the project, Mark is still confident but feels they have definitely learned some important lessons along the way. For one thing, he notes that Open Source projects often do not gain momentum until there is something in place to work with--some kind of alpha version of a product or key component. OSSIM requires starting from scratch. ImageLinks addressed this problem by using its internal resources to pull together the infrastructure of a base product that the rest of the project could be built off of. The concern was that with only three allocated programmers, this would be by far the hardest part of the project.
However, it turned out that a lot of Open Source code was already available to speed their efforts. ImageLinks started by drawing from OSRS and other locations with LIMP, PROJ4, NIMAMUSE, TIFF, GeoTIFF, and mathematics and science libraries. According to Mark, Open Source creates a whole new problem! "In fact, there is so much code available, it is often difficult just selecting which major project we want to use to implement a given function." For the GUI, ImageLinks stuck with wxWindows, partially because it enables platform independence.
So far, things are chugging along smoothly. Even though programmers are not beating down the door at ImageLinks to help specifically on OSSIM, there are Open Source teams working on many projects that benefit OSSIM anyway. This is one of the immense benefits of Open Source. ImageLinks can concentrate on its core competencies while utilizing the results of other people working on what they do best. So, OSSIM pulls from other Open Source efforts, and its own code goes back out to the Open Source community, furthering things for everyone. The programmers that did show up are all experts in the remote sensing and GIS fields. Are you seeing the trend here? It comes down to core competencies. Everyone works on what they enjoy, are good at, and are qualified for. The programmers all draw from the same base of top-notch tools and libraries. Because every tool here is interrelated, the entire set works well together
. Also, because everyone is doing what they're good at, the product is ultimately better.
NOTE: Some might point out that this can also be a weakness of Open Source. If no one is interested in a project because it's perceived as too boring, it can be hard to get things done, even if it involves building a core tool that other more interesting items will be able to use.
After just three months of work, ImageLinks was just about ready to release the first practical tool build through the OSSIM project. The next phase involved seeing whether this project would really attract the critical mass necessary to get the next six months of work done. Fortunately, the answer is an unequivocal yes. After another three months, ImageLinks accomplished all of its original goals. ImageLinks was able to release the first set of tools utilizing the OSSIM libraries:
- The beta for the OSSIM library.
- An image viewer capable of taking in multiple map projections, in multiple image formats, and displaying them properly together. You can then run your mouse over the images and see the exact latitude and longitude you are looking at relative to the Earth's surface.
- A dozen command-line tools that utilize the libraries.
- The company also added a full time technical writer to the OSSIM staff. This person's job is to not only document the libraries, but also write manuals for both the users who need to work with these tools and the programmers who might want to alter or add to them. Part of the job now is to get the word out that the OSSIM tools and libraries are available, and teach developers what these items are capable of. The government has also added another list of tasks. The OSSIM team now needs to:* Take 2-Dimensional images and map them onto the Earth's surface, including getting the 3-Dimensional elevations correct.
- Model the lens distortion and focal length properties of a satellite or aerial camera.
- Take 2-Dimensional images and build 3-Dimensional models from them.
- Build an interface that allows the Geographic Resources Analysis Support System (GRASS, www.baylor.edu/~grass/) to utilize the OSSIM libraries.
One of the largest benefits for ImageLinks, itself, is that the many hours of time the programmers spent explaining Open Source to managers and investors--time that would have been better spent doing "real work"--has been replaced with solid productivity. Because the customer is footing the bill, the programmers simply do their job. The members of the programming team are so motivated that they even spend some of their evenings and weekends working from home. As Mark points out, it is not because they are feeling "under the gun," but it's that they are enjoying the project.Who knows where things will go from here. At the very least, OSSIM will leave behind world-class remote sensing and GIS tools for the community. ImageLinks will be able to leverage its experience in this matter in its support and services. The hope, however, is that as the project succeeds, it will lead to further projects and experiments. As the U.S. government gets more excited about Open Source possibilities, the success of OSSIM has the potential of benefiting the rest of the Open Source community as well.