Openness

We believe that openness is the right principle how to create and maintain quality software with reasonable costs. From the end user point of view both the result and the overall adoption process provide better results as compared to a closed-source software. The reasons include:

  • The software is designed, developed and documented in public. It is almost impossible to hide anything or to lie to the customers. Anyone can inspect the code, check the validity of our claims, see the development progress and estimate how realistic the plans are.
  • Users can try to freely use the software for any purpose before a final decision is made (including full production use).
  • Users can influence the speed and direction of the software development in various ways, including subscriptions, donations, or providing manpower to contribute to the project. The manpower may not be only development effort, we will gladly accept reviewers, testers, technical writers, graphic designers, ... or even a simple feedback from real deployments.

The Story of Openness

The overall situation on software market is quite desperate. Many commercial companies use approach that benefits their pockets. It can be summarized as "we sell you broken software, you pay us ransom to fix it". As software is provided "AS IS" and comes with "no warranties, expressed or implied" it is, in fact, a very profitable tactics. The customers accept this approach as there are very few alternatives. Or, better to say, there were very few alternatives until quite recently. The times are changing.

We are giving you a software comparable to a commercial closed-source software. But we are giving it to you at the cost that all current software is really worth: zero, nada, nix. We believe that the money should be charged only where the value is. Therefore we will not charge money for generic software that costs next to nothing to download, software that brings minimal value when used out-of-the-box, software that comes with "no guarantees, including, but not limited to, the guarantee of usability". The real value is created when a software is deployed and maintained in operational state. Therefore it is the deployment, advice and support services that bring the real value not the software itself. These are the things worth paying for.

Unlike closed-source companies, we are not afraid to show our source code to anyone. We know very well than no source code can be made perfect. By showing the code to the public we actually hope that people will have a look and see the problems in the code. We hope that they will point out the problematic parts before they cause any real harm. We want people to see what they are using to set the expectations right. The key to every successful technology deployment is to know the limits of the technology, not the questionable features presented on flashy slides.

Our software, exactly as any other software, it has its limits. We are openly displaying the limits, including all the skeletons in our closets. Most of the problematic parts we know of are even openly documented in the source code. We are not hiding anything. This may be a short-term market disadvantage, but we actually don't care about that too much. We are more than sure that openness is a long-term market advantage.

Open Software Development

All software maintained by Evolveum is open in following aspects:

  • System architecture is openly presented, reviews, discussions and suggestions from the general public are encouraged.
  • Product development is completely done in public with public access to the source code repository that contains the most recent changes.
  • All code is available under OSI-approved open-source license (CDDLv1).
  • Evolveum does not require copyright assignment from contributors. Contributors just have to agree to the open-source license (CDDL), but otherwise retain the copyright to their contributions.
  • Product development planning is based on the expectation of the users. Contributors may follow their own agendas and roadmaps.
  • Product development is discusses using public communication channels (e.g. mailing lists).
  • Architectural documentation, developer documentation and all other product documentation is created and maintained in public (in Wiki).
  • Task tracking and bug tracking is done in public.
  • The system is open to any use at no charge as long as the use complies with open-source license (CDDL).

Protect Your Investments

Recent experience clearly indicates that open-source software may provide better protection of investment than a commercial closed-source software. OpenSSO was a popular identity management product developed by Sun Microsystem as an open-source project. After acquisition of Sun Microsystems by Oracle, the product was discontinued. As there was still demand for OpenSSO an independent company took over the open-source development project and the product lives on. Investments of the customers that would otherwise be lost were preserved. Exiting OpenSSO customers avoided very costly migration to an incompatible product. That was possible only because the product was developed as an open-source project.

The market clearly shows that where is demand, there is also an offer. Use of open-source avoids vendor lock-in situations. It also encourages competition, which brings better prices for software-related services. Software vendor no longer has a monopoly on consultation and support services related to his product, because it is in fact no longer just "his" product. An ecosystem usually evolves around a successful open-source products that provides a better guarantee of reasonable pricing and quality.