When Codice recently released its parallel development tool, Plastic SCM 2.0, it promised to offer a more efficient way for engineers to create applications in a development environment where increased collaboration among geographically dispersed team members often means decreased efficiency. Although Plastic SCM is commercial software with a varied pricing structure, Codice uses some open source tools to develop its products. CEO Pablo Santos feels strongly about giving back to the community, so Codice is making its new tool available to open source project leaders at no charge. I caught up with Santos this week to ask him more about Plastic and what it takes to qualify for a free license:
Lisa Hoover: Why did Codice decide to offer Plastic SCM to open source software developers for free?
Pablo Santos: There are two main reasons here. [First], we really believe the open source community can benefit from using best practices like branch per task and distributed development. The current tools available to the community aren't good at both, and they normally lack good user interfaces and aren't easy to use. Plastic is excellent doing branching and merging, supports both distributed and multi-site development, and feature a very attractive and easy to use GUI.
The second reason is that we are currently making extensive use of projects like Mono, and we feel like giving something back to the community. In fact we've considered several times about releasing a open source version of Plastic for the OSS developers... but we still have to check how it fits with our current business plan.
LH: What makes this tool faster and easier to use than other solutions?
PS: We've been always concerned about performance. Plastic is written in Mono, so a lot of people was saying "hey, it won't ever beat C/C++ written version control systems". But now we know this is not true. We've run performance and load tests against other SCMs and tuned Plastic accordingly, so release 2 is faster.
Counting on an optional MySQL backend is specially good for scalability. It scales right now, and in the future we'll be considering integrating with MySql cluster.
LH: What development programs does Plastic SCM work with?
PS: Right now we're integrated with Visual Studio (and all the SCC compatible IDEs), Eclipse, JDeveloper and JBuilder. We still lack support for NetBeans and JetBrains' IntelliJ
LH: How flexible and adaptable is this tool?
PS: It is multi-server (great for scalability), it is distributed, it can work with three different database backends: SQL Server, Firebird and MySql, it supports all the branching patterns (from mainline to task per branch, and this is not very common out there), it has fully configurable workspaces, and still can be installed in a few minutes. Whether you're running a 4 developers team or a multi-site big shop, Plastic can fit your needs. I think that's being flexible.
LH: For purposes of pricing, how do you define an open-source project?
PS: Interesting question. We're very flexible here. Any open source project is eligible for our free licensing, they just need to ask. I bet there will be certain projects that won't match, but I can't see an example right now.