Sign in

E-mail *, (xx@domain.com)
Password *

Register | Forgot password

Recent blogs

RSS - Blogs
December 24, 2008
The year has almost ended...
December 9, 2008
5 Spring pitfalls
December 9, 2008
Like A Version
October 22, 2008
New certification process
October 17, 2008
Search quest [3/3] - improvements

All Blogs...


Open Development: From Transparency to Quality

May 26, 2008

Last year, GX implemented a new development philosophy for our software development unit called Open Development. To understand why we did this and what it means, let me provide a little background.

One of the strong points of Open Source is the fact that everything is transparent. With Open Source, not only can you download the software in binary form for free, but you also have access to the source code itself which you can modify or add to. But it doesn't stop there. When Open Source started on the Internet, most development teams were virtual teams working geographically separated from each other. This 'requirement' for the process led to a development cycle where communication between all the team members was and is completely open. For most open source projects, everything is out in the open all of the time, for everyone to see, to use, and give feedback and comments on including bug tracking, email conversations, source code inspection, version control, continuous integration, nightly builds, alpha and beta releases, wiki's, documentation, etc.

If you compare this way of development with the 'old' way of developing software, it is quite a departure. The old way of developing software is very closed for the outside world: Everything is done in teams, the process is closed for non-team members, and the end-users receive the end result only, that being a full release of the software and documentation, without knowing exactly how the software was built, what known issues are still open, what features were dropped from the original list, how future work is progressing, etc.

GX calls the way of openly communicating all relevant information about its development process 'Open Development'. Open Development can be utilized without problems for closed source application development like the one used for GX WebManager. Last year we started to open up our development process showing it to all users of this website.

Why do we think this is a good thing? Here are a few reasons:
  • Transparency: Customers, partners and developers can easily see all that’s going on, when bugs will be fixed or when changes are added to our product. This is sometimes invaluable, especially in the fast moving world of Web Content Management where time to market for websites is crucial.
  • We increase quality awareness in the R&D team. Because the complete process is open, developers and other R&D team members are very aware that everything they do can be potentially viewed (and criticized) by outside members. A comparison I sometimes use is that of a restaurant where the kitchen is open and visitors can see the cooks and all of what they’re doing.
  • We reduce the feedback loop time. As in every R&D process, it's very important to have a short feedback cycle. Software Development is about creating the right application for users. When alpha releases or nightly builds can be used by everyone and the tools to monitor the process, like our bug and change request tracker Jira, is open to anyone, the feedback on bugs or functional changes that users don't or do like is instant, which gives us very valuable feedback early on in development cycle instead of after the software has been released when it's almost always too late to change things radically.

What does Open Development mean in practice for us? Because we use the same software development tools internally as most Open Source projects do (like subversion, <L CODE="C02">Maven</L>, Jira, Bamboo, <L CODE="C07">viewSVN</L> etc) it's not difficult from a technical point of view. We do need to carefully check everything to ensure that no sensitive customer information is inadvertently made publicly available. We also need to reevaluate our R&D processes to see whether they fit well in an open environment – this means it will take a while before we have everything online.

Leon Rutten, our Development Manager, is working with his team to put everything online before the end of 2008. The most important piece of this process is Jira, our bug tracking system. The GX Jira system is already available on this website. Because we are still doing checks to ensure that no customer sensitive data appears in the public space, Jira is protected by username/password credentials. However, after freely registering, it's open to everyone. GX documentation is also openly available (no username/password required). We are currently working on putting online the various Continuous Integration tools we use, like Bamboo for example. It is already available internally at GX, but it will eventually be moved to GX DeveloperWeb (most likely by before the end of the year). Additionally, we are working on publishing nightly builds and alpha and beta releases as well as looking into putting R&D team member email communication online too.

With our Open Development strategy we are working on giving you, our customers, developers, partners, and other interested parties, transparency, higher quality and more options to provide feedback on new releases of GX WebManager; This will result in higher quality GX WebManager releases for you, our customers. A win-win situation for everyone.

As always, feel free to email/twitter/MSN/phone/skype me with feedback.

About the Author

Return to all blogs

Martijn van Berkum

Martijn is chief technology officer of GX. Besides a visionairy leader of GX, Martijn participates in several international expert groups, among them the JSR-283.

Read all Martijns blog entries

Other blog entries:

April 21, 2008
GX WebManager Community Edition Officially Launched!
March 8, 2008
GX WebManager platform strategy
March 4, 2008
WCBs and Portlets
February 15, 2008
Welcome!


Share:

del.icio.us
digg
Technorati
Slashdot
Reddit
YahooMyWeb
NewsVine
ekudos
© 2008 GX creative online development B.V.

Disclaimer

This website (GXdeveloperweb.com) may discuss or contain opinions, (sample) coding, software or other information that does not include GX official interfaces, instructions or guidelines and therefore is not supported by GX. Changes made based on this information are not supported.  GX will not be held liable for any damages caused by using or misusing the information, software, instructions, code or methods suggested on this website, and anyone using these methods does so at his/her own risk. GX offers no guarantees and assumes no responsibility or liability of any type with respect to the content of this website, including any liability resulting from incompatibility between the content of this website and the materials and services offered by GX. By using this website you will not hold, or seek to hold, GX responsible or liable with respect to the content of this website.