Open source identity: Horde lead developer Jan Schneider

Are you looking for an open source, Web-based e-mail and groupware suite with its own development framework, Ajax interface, more than 50 applications, an active developer community, and millions of end users all over the world? The Horde communication and collaboration suite may not be as well known as the big name commercial offerings, but according to lead developer and release manager Jan Schneider it has just as much to offer, and more.

In this opening part of TechWorld’s Open Source Identity series, we explore how Horde, having laid the foundations of a solid Web application suite throughout the past 10 years, is poised to gain a lot more notoriety.

Tell us a little about the history of Horde and when and why it started, and how you got involved. How many developers have and are contributing to Horde?

Horde started in summer 1998, when Chuck Hagenbuch created a Web mail system for his university. It was called IMP 1.0.0, consisted of about 1500 lines of PHP 3 code, HTML and documentation. Since then, a Web application framework, over 50 applications, two groupware suites, and 350,000 lines of PHP code have evolved. IMP still exists and has just been released as version 4.3, while we're already working on IMP 5.

I personally started a typical open source career with the Horde project. I was in need of a Web mail solution and installed Horde, then updated translations, started fixing bugs and sending patches. Finally I got more involved into Horde development, project management and the PHP community as a whole. Today I'm one of the core developers of the Horde project, release manager and provide professional consulting for the Horde ecosystem.

Like in any open source project, the number of developers vary. At all times we have around half a dozen developers contributing to Horde, but according to Ohloh about 40 people have committed code during the years. But, of course, there is an uncounted "horde" of users, administrators, developers and translators who have contributed patches, bug reports, ideas, translations and more to the project.

How has Horde grown since its inception? Horde may not be as well known as other open source Web applications of its type, but it seems to have built up a significant user base. How many new users is Horde getting today and what type of organisations are they?

The kinds of organisations that use Horde vary a lot. It starts with small family servers for pure Web mail access, with the largest installations serving up to 3 million users. We don't have any hard numbers, but we assume from the feedback we receive, that the majority of users are larger organisations, especially from the education sector like universities and of course ISPs providing Web mail for their clients. But the most rapidly growing share is probably in small and medium size companies, especially with the focus on groupware functionality we had in the recent past. This emphasis not only added a lot of functionality required for business users today, but also made installation of the Horde software much easier and faster.

We initiated an advisory board earlier this year consisting of some of our larger users. Monthly virtual board meetings help us to take a break and discuss current development, ask for requirements from the users' point of view, cross check that our own ideas make sense to the end users at all, and decide on tasks to work on in the near future.

Recently there have been a lot of big announcements in the open source groupware space. A good, solid open source groupware suite is seen as the "missing link" for the open source stack if compared with Microsoft's Exchange and IBM's Lotus Notes. How does Horde compare with other open source groupware products and commercial offerings?

One thing that doesn't seem obvious for everyone coming to Horde in search of an open source groupware, is the fact that Horde Groupware is completely Web based. We don't provide any desktop clients or try to be drop-in replacements for Exchange or Notes where users could stick with their existing desktop clients. Horde Groupware is the client and the server at the same time.

Recently, we changed this position slightly when we added server functionality that can be used by desktop or mobile clients, for example, WebDAV support for calendar clients, and CalDAV support which is coming with one of the next releases.

From the sheer functionality we are on par if not better than any other open source or commercial groupware solution. And being a pure Web application, Horde has all advantages that software-as-a-service provides, like platform independency and easy deployment.

Page Break

One of the difficulties for open source groupware products is interoperability with Microsoft's Outlook. A few products offer this as a proprietary add-on. What is Horde's direction here? Is the project looking to work with other open source products like OpenChange and Z-Push to facilitate more interoperability?

We embrace standards wholeheartedly so if Outlook supports them, great. But, of course, we're often asked for something like an Outlook connector. My answer usually is that instead of changing only the groupware back end to an open source solution, people would do themselves and their users a much larger favour in the long run if they switch to an open source ecosystem completely. This point of view might be different if we were backed by a larger company or had sales persons sitting in our necks, but at the moment we can afford the luxury of advocating open source software since we know it's the better alternative, at least in our area.

Nonetheless, we keep our eyes open and wouldn't reject contributed, or funded, support for commercial software. In the end we believe so much in our software that we won't refuse opportunities to gain broader adoption. And projects like Z-Push are definitely interesting solutions that we already have in the back of our heads – and in our request tracker so we don't forget about them. But we are much more keen on interoperability based on well established standards like CalDAV, iCalendar and SyncML.

One area Horde seems to be ahead of the curve (at least with open source groupware suites) is with synchronisation. It has a native SyncML server which has been tested with a few clients, including mobile devices. How much client compatibility is available and what is the next step for synchronisation? Will SyncML help solve a lot of the interoperability problems with open source groupware?

We track a user-contributed list of compatible clients in our wiki and the list is ever-growing. SyncML or DS (data synchronisation), as it's called these days, is a very complex standard, and accompanied by no less complicated standards for data formats. And like with any standard of such complexity there are several standard versions and dialects. Obviously we can't test every device and client software available. But the code is pretty stable now with the most popular phones and software clients, and it's getting more stable with every bit of user feedback.

SyncML can indeed be an alternative to interoperability problems and is one solution to use Outlook with Horde Groupware. But it's obviously not the same as direct client support through protocols like CalDAV, where changes on the client are reflected instantaneously on the server side.

A third alternative for using Horde along with desktop clients is to use both as clients to a Kolab server. Horde has been shipped with Kolab as the default Web client since Kolab version 2.2, and there are native clients that support Kolab systems, as well as connectors for Outlook.

When discussing Horde we need to consider that it's not just a groupware suite, but an entire framework with its own ecosystem of applications – from a wiki to bug tracking and task management. How is the ecosystem maturing, and how many apps does it have? What type of applications can we expect to see developed with Horde? And, what makes Horde attractive for developers?

I agree that this is one important "selling point", so to speak. Administrators managing a Horde installation can easily drop in any Horde application, and developers can create their own modules that integrate legacy systems or provide special functionality.

Unfortunately we don't get that much feedback from those developers as Horde just seems to work for them. People are surprising us all the more though, when every now and then they show what they created from Horde. Can you imagine a Horde application powering a set of huge billboards, for example?

Page Break

We currently have over 50 applications of varying degrees of stability in our stock. We just released first stable releases of our ticket tracking system and a time tracker tool, and we are preparing releases of a photo gallery and wiki system. But even the applications that are still in development are used on a daily basis on a lot of production sites and intranets. Those cover Web site tools, office applications, Web 2.0 modules and developer tools, like a forum, a shop, a file browser, a video community, and a spreadsheet, to only name a few.

I think the combination of available applications and the possibility to create your own stuff quickly makes Horde attractive. You don't have to reinvent everything, but you can if you want to, and seamlessly integrate with existing modules. We are in the process of laying out the foundations of the next major version, Horde 4. So this a good point for developer to jump on the bandwagon and have influence on future directions of the Horde Application Framework and all the applications we provide.

More recently, the Horde project has release an Ajax-interface Web client for e-mail. Is Ajax something Horde is adopting more of? Which Horde applications can we expect to be more "Ajax-like" and what are the benefits?

Users are demanding this, and it's a great chance for us to finally concentrate more on the "applications" in "Web applications". But this is a lot of work, especially if you don't start from scratch but want to build on the strong foundation that you've built up over the years. That's what we did with the Web mail client. It has a fresh, modern interface, but under the hood works code that has matured over the last 10 years.

We are currently working on an “ajax-ified” version of our calendar client Kronolith, and I see the address book Turba as a good candidate next. Since this a lot of work though, it's hard to do this in reasonable time without external foundations, so we are really happy to have partners like SAPO that sponsor such development.

Another recent development is the packaging of Horde applications into a groupware suite and portal. Has this helped Horde gain users? And will it be extended to include some of the other applications like the wiki?

Absolutely. Gaining more momentum as a groupware solution and making the installation process easier were the two driving forces to create the groupware suites. And we are more than happy that we succeeded with both goals. The Web mail groupware suite is our most downloaded package today and has gained us a lot of new users, especially in the small and medium size businesses.

These suites seem to have become kind of showcases for us, since many people didn't know which functionality Horde provided before those. New Horde users are often surprised that the applications that build up our groupware suites have been released for many years.

Our plan is to provide more of such bundles in the future. We haven’t made any final decisions yet, but most probably there will be bundles for CRM, software development (like Trac), and secondarily a business-office bundle, and one for Web 2.0 community sites.

What are the main initiatives you have planned for Horde as we approach the end of 2008 and start 2009? What would you like to see happen to make Horde "jump up and be counted" so to speak among open source software?

The two most important projects for the coming weeks and months are the Ajax calendar client and the Horde 4 development, the latter also implies a lot of structural changes in the development process.

We hope that this is not only exciting for us, but also attracts more developers so we can further enhance the functionality of our open source applications and improve the commercial support for paying clients.

Copyright © 2008 IDG Communications, Inc.

8 simple ways to clean data with Excel
Shop Tech Products at Amazon