PSIA General Meeting / with congrats to Deng
I had a busy agenda in Manila, from which I’ve just returned. Getting a bit behind on blogging about it in fact!
During the trip, I was able to attend the PSIA (Philippine Software Industry Association) General Meeting in Makati. It was a bigger than expected turn out, and a good night out. It was interesting to see what else is going on there. I was even able to play a small role, being guest judge for a contest (based on submissions of business ideas for building intellectual property).
There were a number of presentations during the evening. Deng was one, presenting a case study on the Apache Software Foundation and it’s licensing model, which she recently blogged about.
What Deng was too modest to mention in her blog was that she was also the recipient of the PSIA Honor Award during the evening.
The award was to recognise her achievement in being the first Filipina chair of a project at the ASF. While this is admittedly a strange thing to give an award for (it’s much more of a responsibility than a privilege!), the point was made during the presentation that Apache is a meritocracy, and there is no doubt that Deng has shown merit in her time there. Knowing Deng and the responsibility, respect and humility with which she has taken on the position makes it something worth recognising.
That sort of accolade doesn’t come along every day, so I thought it was worth a plug. Congratulations Deng!
It was certainly encouraging to me to see the organisation recognising contributions to open source at that level. Even more importantly, they gave the stage to Deng to describe to people of influence in the software industry there why they should be looking at both using and producing open source, and why Apache’s license and community development model is a good choice in doing so.
Finally, the night ended with networking, drinks, and Rock Band. After a rendition of Enter Sandman, and a compulsion to sing Australian music by Jet, I decided I should really stick to the instruments and not the vocals in public from now on.
Here are a few pictures from the evening:
Apache Archiva goes live!
Archiva became a top level project at the Apache Software Foundation in March, and we’re now rounding out the move of some of the resources. The web site has moved to http://archiva.apache.org/, and the mailing lists have moved to the same domain.
The project continues to grow - we’ve just added our first committer as a standalone project (welcome, James!). Another release is also now just around the corner with much improved HTTP and WebDAV support, performance and memory improvements, and popular feature requests such as RSS and repository groups are just being rounded out.
Maven and Subversion at STI, Philippines
Back to school! I had the opportunity to sit in on a class last Saturday at STI in Cubao. Exist participates in an Open Source Engineering elective there, and while a number of subjects are taught, last weekend was about Subversion and Maven. The purpose of these half-day training sessions is to instruct the instructors that will eventually teach the course.
Igo presented the first subject, walking through source control in general and then the basics of setting up and using a Subversion repository. Deng presented the after-lunch shift, teaching the basics of Maven. Nap and I came along for tech support and heckling, respectively

I learned a few things myself on the day. Firstly, a number of Tagalog words that describe building software
. What was also interesting was hearing someone else teach Maven. Deng, of course, did a superb job of giving an introduction to what Maven is all about. Teaching it myself is one thing - and it often becomes obvious what new users struggle with - but watching in the 3rd person makes it even more acute. Maven is certainly making building software easier - but it still needs to get even easier.I have to admit that I’ve found it cool to have this project which started as a hobby for me now being taught in technical schools halfway across the world. Considering the extent of source control I was taught about in university was one assignment using SCCS, and that we only occasionally built using a makefile, students today have a huge advantage in getting started.
I’ve posted a few photos on flickr of the day:



Apache Maven 2.0.9 Released
It must be release season, because now Apache Maven 2.0.9 is out. As far as point releases go, this is a big one with 62 fixes and improvements, and foundational support for toolchains in plugins. This is the best version of Maven available and a highly recommended upgrade. Kudos to the whole team that was involved in this release, and to all those that painstakingly tested it along the way.
Check out the full release notes, and download it.
Planning is now under way for the next release - so now is a great time to vote for your high priority issues, submit an integration test or create a patch and get involved!
Apache Archiva 1.0.2 Released
The Archiva team has just released Archiva 1.0.2. You can find out about it in the release notes - 41 fixes in all.
It’s a busy time coming up - Archiva is now a top level project at the ASF, and we are in the process of moving the infrastructure across. A pre-release of 1.1 will hot on the heels of this release, which includes several new features including some performance and memory improvements.
Have some ideas for how to improve repository management? Why not get involved today!
WTP support added to Q for Eclipse
A nice surprise this morning was waking up to a message from Abel that he has implemented basic WTP support (for dynamic web applications only) in Q for Eclipse’s development version. I fired it up, imported my Archiva pom.xml files and it worked first go deploying to Tomcat.
Check out the screencast (mirror) he put together for a demo.
Apache Continuum Settles in to its New Home
Last month, the Apache board approved a resolution to establish the Apache Continuum project. So after just short of 3 years as part of the Apache Maven project, Continuum has grown to the size of being a project in its own right, and moved out to it’s new home at http://continuum.apache.org/. There are 13 committers on the initial roster, and the new chair of the project is Emmanuel Venisse.
While Continuum will still be an easy-to-use, enterprise-ready build server for Maven projects, it will also be looking to add new features in the near future.
Discussion has been active lately about the direction of the project in upcoming releases, and a roadmap formed for "2.0", with the intention of incremental releases towards that path. Some of the focus will be around using more well-known technologies as the underpinnings for the system so that it will be easier for new contributors get involved.
Congratulations to the Continuum team, and I look forward to the future!
Being reminded of the benefits of a community in open source
To anyone that has worked in a healthy open source community, this will seem like a no-brainer, but sometimes it’s good to be reminded of the real benefits when you involve a community of diverse developers in what you’re doing.
Earlier in the week, Joakim brought up the discussion topic on the Archiva Development List about converting from Plexus to Spring. The original plan was comprehensive, but there were some worries about a "big bang" approach since most of our Plexus components were autowired. I wasn’t initially sure we even wanted to convert everything either.
So I spared a few hours to try an experiment, and we had a functional but ugly way to use both Plexus components from Spring, and vice-versa. I figured that would make do for a short term solution.
Then Nicolas ran with it and has come up with a much more transparent way to implement it. Once a few issues are ironed out, we have a solution that is release-quality at any time as we gradually make the migration, will require much less work hacking the test rigs, and we have Joakim’s comprehensive list (which he’s already started doing on trunk).
In a different environment, we could have very easily ended up with a massive refactoring that halted all the current development, or I could have had a half implemented change that rotted away locally. But together in less than a week (part time)
the 3 of us and the others chiming in on the list, have a pretty complete solution and a plan of attack. We were able to maximise the available time of the contributors, and their particular interests (whereas I’d have run out of both much earlier otherwise).It’s not revolutionary, or surprising - but it is cool - and if you can harness this kind of small innovation on a regular basis it makes a big difference.
Archiva is probably the most fun project I’m involved in right now because of the good people, the enthusiasm, and influx of new users and contributors since the recent releases. One of the main reasons we were looking at Spring was to lower the barrier to contributions - so if you’re using Archiva and have something you’d like to see done or fixed, why not come and join the party?
Working around –non-interactive problems in Leopard’s Subversion
Apparently, the –non-interactive flag is broken in Subversion as distributed with Leopard and a fix is not yet available. Bad news for Maven users wanting to use any of the SCM tools.
Hopefully a fix will be available either through an update or a version of Subversion that can be compiled from source, but in the mean time I put this shell script ahead of svn in my PATH:
Updated 15 Mar 08: Wendy pointed out you need to chop the username too. Now it’s even more hacky.
#!/bin/sh if [ "$1" = "--non-interactive" -o "$1" = "--username" ]; then shift fi if [ "$1" = "--non-interactive" -o "$1" = "--username" ]; then shift fi /usr/bin/svn "$@"Mmm, hacky.
Cloned Mac migration problems? Check your permissions
I recently received a new(er) Macbook Pro, and wanted to get up and running in as short a period as possible. I chose to go with a full hard drive clone so that the minimum amount of modification and reinstallation would be necessary.
Apart from a small misunderstanding between me and my external USB drive, that resulted in me having to do the initial backup twice, Carbon Copy Cloner worked an absolute treat. I was able to boot from the USB on the new Mac, and clone back over to the internal hard drive and boot it all back up spotlessly.
Well, almost. I started seeing weird problems cropping up in quite different applications.
First up my Dovecot IMAP server wouldn’t start. This turned out to be a simple problem of
/opt/local/var/run/dovecot/master.pidbeing left behind and needing to be removed (since another app kept taking that PID every time I rebooted, Dovecot always thought it was already running). This was the most important thing and I was back in business quickly.But then it got weirder. iGTD’s F6 integration has ceased working (and I still can’t get it to work despite resolving other problems). It tries to send something - but it just doesn’t. Oh well - I’ve been wanting to check out OmniFocus anyway.
And then yesterday, I decided it was time to upgrade to 10.5.2. But software update refused to recognise any updates - though I had several waiting, and running it on my old Mac showed them. Nothing helpful in
/var/log/system.log. After googling for a solid hour I decided to just update from the downloads on the Apple software site and resolve the problem later.Then I was having trouble opening a PDF in Preview. I figured it was something corrupted in there, so I didn’t think about it. Then today - no luck on another PDF. And I found no PDFs were working in Preview (in hindsight, I’d had the same problem with a Postscript file earlier in the day too). Something was clearly wrong, but it’s incredibly hard to google for problems with generic names like "Preview" and "Software Update".
Luckily, Preview showed me something in the logs, which Software Update hadn’t:
Feb 14 12:27:07 mcbrett Preview[1755]: tempFileFolderPath failed Feb 14 12:27:07 mcbrett Preview[1755]: *** -[NSPathStore2 rangeOfString:options:range:locale:]: nil argument
That was much easier to google for and I had the fix in minutes. What’s more, Software Update is working again (though no luck with F6 integration). It was simply a permissions change on the temporary directory:
sudo chmod 775 $TMPDIR
The creepy thing? My name isn’t that common, but the user in question had exactly the same login ID as me. Does Apple discriminate against brett’s?






Recent Comments