Goodbye phpGroupWare

I am writing this post with a strong sense of sadness. At the same time I feel that I have no other option. I am walking away from phpGroupWare.

Before I walk out the door, lets go for a trip down memory lane. Insert tacky music wavy lines down the screen and bad hair styles from here on in.

I think the first time I heard Linux mentioned was in 1996/97. In 1999 I had my first experience with Linux, through an anarchist friend, I was very curious, but didn't have much of an opportunity to play with it.

In 2000, over a few months I started to play with Linux and GNOME dual booting my machine. I could never really make it do what I wanted, but I persisted. The first version of Linux I bought was Macmillan Linux 6.5 - I still have it in a cupboard somewhere. I then moved on to Red Hat 6.2.

In 2001 Julie's work was sick of waiting for their shared calendar solution. I was contracted to install it. They had an NT4 box running Lotus Notes, which no one wanted to touch - including me. I found phpGW by searching (probably "yahooing") for "open source groupwise". I would later discover I had embarked on an epic journey. I knew of open source, but I didn't know a lot about it. PHP seemed pretty cool, as did phpGroupWare. I recommned they get a new server - a good one, dual PIII-800s, RAID-1 and Linux, it cost over $3000. I learnt a lot on that box including basic Linux sysadmin, compiling stuff from source and what happens when you forget to update lilo. Today that server lies idle in a cupboard in my office.

Very quickly I became involved in the phpGroupWare commununity. By 2002 I considered myself active and later that year I was promoted to release manager. By 2003 I had landed my first overseas gig indirectly through phpGroupware. By now I felt very strongly that I was a free software developer. 2004 saw the EGroupware.Org fork, or as I still like to refer to it, the EGO fork. This did considerable damage to the project and sucked a lot of life out of it.

Since then the project has done some cool things, but struggled to get a release of trunk for over 5 years. There are some really smart people around the project, but none of us seem focused to shipping a product, and I think we all have different ideas of what that product should be. I have met many awesome people over the years, include the Paris conference in 2006.

It is now late 2009, I have 2 kids and a growing business. PHP 5.3 is out and we are still trying to port to PHP5. There are many solid application frameworks around - my personal favourites are Zend and Drupal. Both of these projects have large developer bases, active communities, clear development processes and documentation, phpGroupWare fails on each count.

The project has exposed me to so many great people and ideas. These things will stay with me for the rest of my life.

If anyone is to take over phpGroupWare, my first suggestion would be to start over. Clearly define a purpose for the project, define a target market, build a product which fits that purpose and appeals to that market. Such an approach will involve a significant investment of resrources. I just can't commit any resources to the project at this time. If things change I may come back one day, but now things feel too far gone.

As much as I hate to say this, I think phpGroupWare is a dead project. I feel that it is time for me to move on. I will make myself available to assist with any handover or shut down of the project.

Thanks to everyone who has contributed to making phpGroupWare such a great project over the years. It was fun while it lasted.

Day 2 at PHP Unconference Hamburg

I arrived back in Bergen late last night after spending another day the PHP Unconference in Hamburg. I even managed to get one speaker to do his talk in English, which made things a lot easier for me.

My brain started to adjust to German a bit more, which made things easier than on day 1. Overall I think I understood about 25% of what was being discussed, which sound like a waste of time, but that 25% was pretty good quality. Also the discussions in the corridors was great too. At the end of the day the language spoken isn't very important when compared to the ideas shared.

For me, the only attraction of web based social networks, is to provide a backup of my addressbook online. FOSS on the other hand is a global "social network" that is real. Events like, the PHP Unconference in Hamburg, Bar Camp Melbourne and other similar events are a vital part of the networks - they provide the space for us to meet and discuss ideas.

I also used the trip as an opportunity to catch up with Christian Böttger, Release Coordinator for phpGroupWare. Not only did we discuss the project, but we caught up on how business and life in general was going. It is always good to catch up with Christian, I just wish I had more than a couple of hours to spare.

My next couple of events are locked in. Wednesday night is drinks with Johan Gunnarsson from phpGroupWare, at the airport in Copenhagen. Overnight Google emailed me a confirmation for the Google Developer Day 2008 in Sydney on June 18, there is some interesting stuff on there too - less FOSS centric but still seems pretty cool.

PHP Unconference Hamburg Day 1

I spent yesterday at the PHP Unconference in Hamburg. None of the sessions were in English, so that meant I really struggled with some of the sessions, while some of the others I could pick up some of it.

Between sessions I meant to meet a few people I had chatted with in IRC, but never met in meatspace. I always like to be able to put a face to a nick or blog, then have a beer or 2. This is exactly what happened last night.

I managed to land a big thick Ajax book (in English), which was pretty cool - something to read on the plane back to Australia

It is sad that phpGroupWare doesn't have the "brand recognition" it once had. Hopefully we can turn that around later this year if we get a release out.

I am skipping the morning session, and hope to catch some good sessions this afternoon.

For the record, the Norwegian company I work for isn't eZ.

BarCamp Melbourne 2008

This weekend I am off to BarCamp Melbourne. I didn't make it last year, but I decided to make the effort this year.

I missed out on almost all of, which was disappointing, but I did take Noah to the open day, which was lots of fun. I know BarCamp won't make up for it, but it should still be a good day.

I am hoping to give a talk about phpGroupWare. During my talk I will probably be showing off trunk and the YUI enhanced template that we have been working on at ReSight. You never know I might even be able to find a new dev or 70.

BarCamp should be an opportunity to meet up with a few people that I missed at LCA, and also to some that I didn't miss, including Justin, from Simple Invoices

Time permitting I should get a post BarCamp entry up next week.

phpGroupWare Now Using Subversion on savannah

phpGroupWare is now using subversion for its version control system. We are the first project to use svn on savannah. So far the transition has been pretty smooth. The motivation was trying to merge a 80k line unified diff into the phpGW tree from the ReSight tree - something CVS couldn't really handle.

Before switching to SVN, there had been some discussion in the past about which version control system we should use. There were appealing aspects of using a distributed version control system, such as git, which is supported on savannah or bzr and mercurial which aren't. For some the show stopper was the lack of IDE integration and cross platform GUI support. In the end SVN was the only solution which met the needs of our current developer community.

Now that we are using svn, SVK is an interesting option for people who want to keep in sync with our tree, but maintain their own internal trees. As part of the ReSight project, we are looking at using svk to make patch pushing easier for both sides. I will blog about anything which I think the community will find useful, about using SVK with phpgw's SVN repository.

For more information about using SVN with phpGW see the subversion information page on savannah.

There will still be some changes to be made to make nightly builds to function properly again, along with some documentation updates on the website.


I am still alive. I had planned to blog regularly while I was in Norway, but that didn't happen for various reasons - mostly lack of time. I have a backlog of stuff to post now.

Norway was great, ReSight are a great company to work for. It now looks like we will get a stable release of phpGroupWare's HEAD branch out this year. yay! I plan to blog more about what is happening with phpGW and ReSight - watch this space.

Bangkok is an insane place. I realised that having a fight over 6AUD was pointless and gave up - scammer^Wtuk tuk driver 1, stupid tourist 0. I think if I go back to Bangkok

Russell Coker has started an unofficial Linux Users Victoria (LUV) Planet, which I am syndicated on - hi all :)

phpGroupWare @ Solutions Linux 2008?

Over the last few years phpGroupWare has been involved with the Solutions Linux Conference and Expo in Paris. We have had speakers at workshops promoting the project. In 2008 we may even be exhibiting - that is still being finalised.

Solutions Linux is one of the biggest events on the French FOSS business calendar. Given phpGW's large french user base, it is appropriate that we are represented at the event.

One issue I have with SL is their website. Most of it is bi lingual which is great. The downside is their signup form. That is an ASP.NET page running on IIS stuffed into an IFRAME. It is bad enough using MS technology to promote an event which claims it is "dedicated to the exchange of free software solutions for business, public services and administrations", but to use a broken script is pretty form in my book. Someone really should recode it in PHP so it fits with the rest of the site.

Solutions Linux 2008 Registration page with ASP,NET error screenshot

Ignoring the problems with the website, I would love to attend SL2008, but i doubt I will have the spare (time or) cash for the trip. Our french team is competent and growing so I am sure they will do a great job.

phpGroupWare gets a Commercial Partner

All the pieces are now in place, so I can make the announcement.

phpGroupWare now has a commercial partner - ReSight AS of Norway. Over the next 12 months ReSight will be working with several partners, including Bergen Bolig- og Byfornyelse KF, MIT FabLab Norway and others to enhance phpGroupWare. Most of their work will be centred on the property module, written by Sigurd Nes.

Sigurd has done a great job in pulling this off. When he first told me about this deal in Paris last year I thought that I sounded interested, but I didn't see much of a role for me in the deal. Later I learnt that it was happening and Sigurd was pushing for me to have a role. I really appreciate the effort Sigurd has put into arranging this. I think this deal is testament to Sigurd's skills as a developer and negotiator. I also think it shows that phpGroupWare is a serious business tool.

For my part in the deal, I have been contracted by ReSight for 12 months starting 1 October 2007. I will be working as an engineer and also helping to guide and drive the project. I will be meeting with ReSight in Norway from 5 October until the 18th. Other trips to Norway are likely. I am pretty excited about all of this. Not only does it mean that I am paid to work on phpGroupWare, but it means that the project has a committed commercial partner who is trying to work closely with the existing developers and participate in the community.

I believe things are starting to look pretty good for phpGroupWare. The ReSight deal is just one of several things which has come off in the last few months that really helps the project. Johan has contributed a native php implementation of SyncML as part of the Google Summer of Code program. Don from Blue GNU has been blogging about phpGW and getting it widely syndicated. The user list seems more active too. I hope all this means that we can build up enough steam to finally get 0.9.18 out some time soon.

If anyone is interested in meeting me while I am in Europe, we are planning an informal meet up in Copenhagen, Denmark on Saturday 6 October 2007. If you are interested, please contact me, and we will try to work something out. The rest of my time in Norway is still somewhat unplanned, so I can't really make any commitments. So far Johan is confirmed and Micke Larsson is a maybe. If there is enough interest and we formalise arrangements I will post the details on the lists and/or on my blog.

phpGroupWare Articles

Don (D.C.) Parris has started a series of articles about phpGroupWare over at Blue GNU. The articles are well written and provide a lot of good information for new users. I hope Don keeps on writing good stuff for us to link to.

The articles have also been syndicated by others which should help raise the profile of the product.

I will have another big phpGroupWare related announcement some time this month. Things are looking pretty good for the project. Stay tuned.

New phpGroupWare Release is Out

I have spent a little bit of time on phpGroupWare the last couple of evenings. The main motivator was becoming aware of CVE-2007-4048. The release also improved our PHP 5 support and there was the mandatory "various bug fixes" thrown in for good measure.

Download and enjoy!

I hope to have some time to work on some stuff in HEAD soon. Johan's syncML stuff has me excited about hacking on phpGW.