IntraWeb Demos – Going Open Source
Distributing demos has always been an issue. Each time we add one, or make changes, the changes cascade to the build process and install kit. With support for IDEs all the way back to Delphi 5, the build and install kit are very complex items.
For this reason, in the past we have considered making the demos as a separate download on our website. This however causes version problems. Imagine you are using an older version of 9, but the demos are for a newer version. Unless we version the demos as well, then it creates a situation where users using older versions have no demos. This is the main reason we kept the demos in the install is to version them.
I had a thought: Why not establish a separate repository on our svn server and give users access to pull builds from there? There are plugins to allow easy web access, and even zip archive downloads. Using the functionality of svn, we can label the demos on each IntraWeb build for historical versioning.
The problem then was that we need to install and configure these additional parts for this to work. Then I thought, why not use SourceForge or Codeplex? We are already distributing full source anyways and this solves our need to mess with additional modules for our svn.
And why not just open source the demos completely? By putting our demos in a public space, we can give access to trusted users who can then update and or create new demos. This does not mean that we will abandon the demos, but it certainly opens up a lot of opportunities.
We are looking at our opportunities now. Very soon we will experiment with one of the options and see how it works. Currently we are leaning towards CodePlex. It is geared towards Visual Studio, but can accept any source code. It also offers several stand alone clients, robust web access, and even an svn bridge.
All IntraWeb demos are now online at Codeplex. The location is http://IWDemos.Codeplex.com. Any user can use the web interface to pull down complete zip files, browse individual files, or use a client to interact with the repository. Users wishing to access the repository directly can ask for access from Atozed.