What role does open source play in bringing affordable technology to evolving enterprises? We would like to cut through the hype of free software and get down to the bottom of why open source makes sense, when, and for whom.
The most celebrated success of open source is without doubt, the Linux operating system. But how many people are really using Linux? And how can / does it benefit us? We like the way Time O’Reilly asks in Open Source Paradigm Shift:
“How many of you use Linux?” I ask. Depending on the venue, 20-80% of the audience might raise its hands. “How many of you use Google?” Every hand in the room goes up. And the light begins to dawn. Every one of them uses Google’s massive complex of 100,000 Linux servers, but they were blinded to the answer by a mindset in which “the software you use” is defined as the software running on the computer in front of you. Most of the “killer apps” of the Internet, applications used by hundreds of millions of people, run on Linux or FreeBSD. But the operating system, as formerly defined, is to these applications only a component of a larger system. Their true platform is the Internet.
Without us realizing it, almost everyone is using Linux. You are using Linux right now if you are reading this post online (our servers are running Linux too). Like O’Reilly says, the true platform is the Internet. Software applications are moving out from the desktop and on to the Internet. O’Reilly also elaborates on the 3Cs that drive the move towards open source:
- Commoditization of software
Just as computer hardware has become a commodity by the open standards of the PC, been driven by the commoditization of the PC architecture, software growth will be driven by commoditizing the software architecture.Software commoditization has been driven by standards, in particular by the rise of communications-oriented systems such as the Internet, which depend on shared protocols, and define the interfaces and datatypes shared between cooperating components rather than the internals of those components. Such systems necessarily consist of replaceable parts. A web server such as Apache or Microsoft’s IIS, or browsers such as Internet Explorer, Netscape Navigator, or Mozilla, are all easily swappable, because in order to function, they must implement the HTTP protocol and the HTML data format. Sendmail can be replaced by Exim or Postfix or Microsoft Exchange because all must support email exchange protocols such as SMTP, POP and IMAP. Microsoft Outlook can easily be replaced by Eudora, or Pine, or Mozilla mail, or a web mail client such as Yahoo! Mail for the same reason.
This commoditization of software converts the software as a product into software as a service. Users of software no longer need to purchase software licenses. They use the software as a service. O’Reilly quotes Clayton Christensen, the author of The Innovator’s Dilemma and The Innovator’s Solution:
in this type of market, the drivers of success “become speed to market and the ability responsively and conveniently to give customers exactly what they need, when they need it.”
There are now emerging leaders who have leveraged this business model of Application Service Providers such as salesforce.com, google.com, amazon.com, and scores of smaller local players, Reach1to1 being one of the emerging ones in India (could not resist that
) - Collaboration over networks
Having the Internet as a platform for software provides another major network effect – of collaboration. Open Source projects depend largely on contributions by independant developers working collaboratively to enhance the value of the code. Services like eBay are intrinsically collaborative services (what’s the use of an auction if people cannot bid openly?) Others like Amazon have created a collaborative layer over the traditional product-selling model – by allowing user participation in the form of reviews, recommendations and a resellers program. Another interesting model is the one introduced by Napster for music and data sharing:Because Napster set its defaults to automatically share any music that was downloaded, every user automatically helped to build the value of the shared database. This architectural insight may actually be more central to the success of open source than the more frequently cited appeal to volunteerism. The architecture of Linux, the Internet, and the World Wide Web are such that users pursuing their own “selfish” interests build collective value as an automatic byproduct. In other words, these technologies demonstrate some of the same network effect as eBay and Napster, simply through the way that they have been designed.
We also note from our own experience that the most interest we generate from prospective clients for the software as a service model is where collaboration within a geographically disperse community is required – such as project management, sales force automation, channel integration and supplier integration.
- Customizability of software
This is, from our perspective, the largest factor that determines the neccessity of open source. Software is traditionally viewed as a product – something that is built once, and used repeatedly – with a few upgrades thrown in. However, applications in the new paradigm – like Yahoo, Google, Amazon or eBay, customization is an ongoing process of evolution. Similarly, for automating business processes of evolving enterprises, software is not a product that is built only once. Enterprises evolve by constantly fine-tuning their processes, products and services to match market dynamics. Software that empowers such businesses need to be agile and mimic the evolution. As O’Reilly puts it:We’re used to thinking of software as an artifact rather than a process. And to be sure, even in the new paradigm, there are software artifacts, programs and commodity components that must be engineered to exacting specifications because they will be used again and again. But it is in the area of software that is not commoditized, the “glue” that ties together components, the scripts for managing data and machines, and all the areas that need frequent change or rapid prototyping, that dynamic languages shine.
It is this very property that prompted us to adopt Perl as our primary development language. The flexibility of Perl, combined with the plethora of open source modules available on CPAN, where any developer can publish modules that extend Perl, creates an ideal platform for creating agile software that needs to evolve continuously.
Perl provides a component-based architecture with an ideal glue language, allowing us to write code that can be customized easily and continuously. To extend this flexibility to the data model, we have used Object Databases that allow databases to be customized as and when required.
In conclusion, the open source software paradigm provides an ideal platform for developing business applications for evolving enterprises that involve collaboration and constant customization.





Making LIMS Work
What is LIMS?
Laboratory Information Management Systems are specialized applications for laboratory automation that offer significant benefits:
Challenges in LIMS implementation
Several laboratories realize the need for installation of LIMS to automate the processes in the laboratory, but LIMS installations are not cheap, and certainly not easy. The main hurdles in LIMS implementations are:
Based on our experience of studying LIMS requirements and solutions, we have a different view on handling this issue in LIMS installations. We have found that laboratory technicians, especially in smaller laboratories, are not overly bothered by having to record test results manually. In fact, we would venture to guess, that if a LIMS solution were to merely provide a mechanism to manually export data from computerized data loggers that are anyway used with most modern testing equipment, it would more than suffice the requirements of small and medium sized laboratories. As for those equipments that do not have any computerized data loggers, test readings anyway need to be recorded manually – in which case, the technicians can directly enter the data in the LIMS forms.
As Colin Thurston, Senior LIMS Product Manager at Thermo Electron Corporation, in Altrincham, UK reports in Scientific Computing World – LIMS: WORKFLOWS
One approach that is used by some LIMS providers such as Thermo Electron Corporation is to use workflow management technology to handle this burden of customization by providing graphical editors that can be used by the laboratory technicians themselves to customize the process at any time during the life cycle of LIMS.
This is certainly a step in the right direction. As consultants for workflow management solutions, we completely identify with their vision in using workflow management to alleviate customization requirements. However, merely giving a graphical tool to edit process descriptions has its limitations.
We have found that any workflow management solution that is purportedly easy to customize by using graphical process modelling requires significant skill enhancement of users. There is no doubt that simple process modifications are easy to handle in a graphical modelling tool. However, it is far easier to write a procedure in a programming language than using a graphical process representation, if a programmer is available when required, and if modifications to the process logic can be made on-the-fly.
It is these two attributes :
that makes a workflow solution successful. This is precisely the reason why we insist on LIMS, or any other workflow implementation as a software service and not a one-time product installation.
Again, this problem only occurs if LIMS is installed as a one-time package, and not when LIMS is treated as a software service.
As Jason Simpson reports in Integration Of LIMS Offers Compelling Advantages For The Production Environment,
Most standard LIMS packages have built-in facilities for integration with external systems using APIs (Application Programmers Interface). However, some LIMS packages like Thermo Electron Corporation’s SampleManager LIMS are beginning to use XML-based standard integration facilities, or Web Services to allow easier integration of LIMS with disparate systems.
Our LIMS solution, offered as a completely Web based system, uses XML not only as a way to integrate data with external systems, but as a native object database technology.
Summary
LIMS can make a huge difference to the productivity of an R & D Laboratory. However, a standard LIMS package may not be the most suitable solution, due to the amount of ongoing customization required as is typical in an evolving enterprise – of which a Laboratory is a prime example.
However, if a LIMS solution is built and delivered as a software service by utilizing workflow modules as building blocks, with a scripting language that can be used for on-the-fly customization, evolution of the code can match changing requirements of the laboratory.
Also, creating LIMS as a web-based service, with a native object database to store and retrieve data, integration with other disparate software systems can be done with a minimal overhead and cost.