Blogs

Blog Spam

I think I am pretty lucky that I only have 1 comment spammer on my blog. Every day he posts an ever expanding list of links for whatever he is being paid to post, this week it is ring tones. "nareman" give up! The combination of moderation and Akismet means that the posts get round filed. Akismet is a great tool, I recommend it to anyone who enables comments on their blog. If I had more traffic and comments, I would probably pay for a commercial license.

I'm a virgin - again

For a bit over a year I have had a Novatel Merlin U530 data card from 3 mobile. When my contract expired I started to look at churning. At first 3 insisted the card was network locked and couldn't be unlocked, "as stated in your contract". I read them what I had signed and mentioned the TIO, before the supervisor I had heard whispering in the background took the call and sorted out the unlocking.

3's service is good, if you are within the "broadband zone" (read within 35kms of an east coast capital city). The downsides of 3 are that once out of their coverage area, you roam on the Telstra GPRS network (and pay for every Kb on top of the monthly plan fee), and when you need customer service, you wait 20mins to talk to someone in India on a crappy VoIP connection. If the coverage was better and the N95 wasn't still "coming soon", I may have considered their X Series product.

I considered Vodafone, who I use for my phone, but I am not very impressed with VF. The phone I got under contract is a dud. VF keep on calling me to tell me I'm a valued customer and making sure I am happy with the service, but every issue I raise isn't something the person on the other end of the phone can deal with. After my last experience with VF's data services, I am still wary of them. Vodafone's pricing wasn't that great either.

Telstra required a long contract for a poorly priced product. Although their coverage is good, they use a non standard frequency, making my current data card useless. I also try to avoid using Telstra, due to their anti competetive attitude.

Optus uses the same 3G network as Vodafone, so they were appealing. The downside with Optus was price. Their "youth market" subsidiary Virgin Mobile has just released a 3G product with a great price (by Australian standards). With Virgin I get 1G of data per month for 30AUD (including 50AUD worth of calls). The Optus 3G network is still being expanded but is pretty good. In the country Optus'/Virgin's GPRS coverage is pretty good too - at least where I travel to. Although I am limited to 384/64Kbps, I am not locked into any contract.

The only downside with Virgin is the excess data charges - 20AUD per Mb. As I generally average a lot less than 1G p/m, this shouldn't be a problem. Streaming radio on the train should now be an option while checking my emails.

Very Rough Guide

When I go to the library I regularly check out what computer books are sitting on the shelf. Some books seem to be there every time I go in, such as iTunes 6 and iPod for windows and Macintosh. I usually end up grabbing one or 2 books on something I am at least vaguely interested in. I usually end up flicking through them over a month, and forget most of it a week later.

On my latest visit I picked up The Rough Guide to Blogging, by Jonathan Yang. I wasn't expecting to learn a lot out of it, but I hoped that there might be a few little gems or at least 1 thing that I didn't already know.

In general the book is ok. If you are new to blogging there is quite a few things that you can learn from reading a book like this. It seems to be pitched at people who use computers to get a job done, not geeks - that's cool. You shouldn't have to be a geek to read a book on a topic such as blogging.

Unfortunately the book's target audience probably isn't as well versed in convention and netiquette as a geek would be. As a geek reading the book I found myself thinking "hmm" on a few occasions. Then I found a wtf?! show stopper on page 79. Here is the quote under the heading "Loading images from other websites" (my emphasis):

You can use an image from elsewhere on the Web without copying it to your server. Simply find the address of the individual image (not the page it's displayed on) and use the IMG tag in the usual way.

Before posting an image on your blog, however, it's best to ask for permission from the copyright holder. In reality, nothing is likely to happen to you for using an image without permission - especially in the case of celebrity photos and other commonly circulated stock photos - but at the very least it's polite to ask before using, say, a drawing from an artist's website.

Generally hotlinking is considered by many as a copyright violation and bandwidth theft. Most webmasters don't approve of others using their content and bandwidth without permission. Not so long ago, US Senator and potential Presidential cantidate John McCain found out what happens when you hotlink. There are numerous other examples of disgruntled copyright holders and webmasters taking action against hotlinkers.

Given the size of the copyright notice in the footer on his site, Jonathan seems to take his copyright pretty seriously, pity that his respect doesn't seem to extend to others' works.

Update: I emailed Jonathan a link to this post and he has replied.

Thanks for reading and reviewing the book. The section you referenced about "hotlinking." Definitely not good blogger etiquette. I should probably post something about the importance of not only asking permission but also hosting your own images. I hope I meant "use the images, but host them yourself" but clearly the text doesn't reflect that.

Further Update: Jonathan has posted a clarification post on his blog (since moved to a different url).

bye bye PHP 4

I have several servers running PHP 5 already, but as my laptop is my primary phpGroupWare development and test environment, it was running PHP 4.

I knew this day would come, I just didn't think it would be so soon. PHP4 has been dropped from ubuntu. Ubuntu has never shipped php4 in main, but until feisty it has been in available in the universe.This is no more.

The advantage of using PHP 5 on ubuntu is that it is in main, so has full security support.

I started using PHP 3 and I was pretty enthusiastic about making the jump to PHP4, but have held back on PHP 5 due to the problems with running phpGroupWare (and other scripts) under it. It looks like I no longer have any excuses,

Now that all the major distros ship PHP 5 and PHP 6 is around the corner, it is time to bury PHP 4. The world didn't end when register globals was turned off by default. Switching to PHP 5 won't kill us either, but holding back may.

Planet Summer of Code

Hi to everyone reading this post via Planet SoC - the unofficial Google Summer of Code aggregator. I am Dave Hall, API Coordinator, phpGroupWare and mentor from the GNU Project. I will be mentoring Johan Gunnarsson who will be working on a syncML interface for phpGroupWare.

I have already blogged about the wild ride that I had to become a SoC mentor.

I have decided to only add my SoC related posts to this planet so not to clutter things too much with my general ranting.

Good luck to everyone participating in SoC, it looks like some projects will end up with some pretty nice features in a few months time :)

phpGroupWare release?

I have been thinking about how to deal with releases of phpGroupWare. For me it is a technical, procedural and political question.

Over the last few months I have been playing with drupal a fair bit. I love drupal. It is simple to install, skin and hack. The community is great. The website is massive and has almost anything you want about durpal. They dog food their stuff. I have quite a few clients using drupal for their sites, they love it. There are many cool things on technical level within druapl too - but that would take this post off on a long tangent.

Drupal was allocated 20 summer of code places by google. phpGroupWare received 1 spot, indirectly. To me this is a sign of the popularity of the project and the level of activity within the community.

I hear you thinking, but hang on, drupal is a CMS, phpGW is a groupware suite, compare apples with apples. Well, you see I am not trying to compare apples with apples. I am looking for good ideas about how to build a quality release.

I think drupal have it sus'd. The have the core which is released when it is ready. They also have a stack of modules which are released when the developers feel like they are ready. This provides a lot more flexibility to all developers. Developers can prepare versions for multiple versions of drupal, but also release stuff when they think it is ready for release, not wait for the next mega tarball to be prepared.

I think that the drupal release model may work well for phpGroupWare. We could prepare the core (probably API, admin, addressbook, calendar, email, filemanager, notes, preferences, setup, todo - the PIM apps amd sync when it is ready) and release that as phpGroupWare 0.9.18. Then modules developers would be free to package there modules and release them when they were ready. Modules which were tested and stable at the time of the official releases would be listed in the release annoucements. It would mean that getting our apps site working would be important as that would be the entry point for a new eco system. It would also mean that if someone is working on new features for an app, they could release often, while the core would be more static and stable, in order to encourage more app development.

I don't think that we can have a release time table for the core unless we have significantly more (paid?) resources available.

I think that covers the technical and procedural issues, the political hopefully won't be too painful either.

The decision on what is core and what is not will need to be made early. The criteria for assessment should be made publicly available. Developers should be free to ask that their app be considered core. Being a core app is not a vital thing, apps will still be promoted it they are not core.

We could look at 4 levels of apps. Core, as discussed above. Supported, apps which meet the core app standards, but are not considered core for what ever reason. Unsupported, apps which work but do not meet the project standards for some reason (coding standards, bypassing the api, lack of docs, require patches etc). Dead, apps which are no longer maintained and other developers feel should no longer be maintained. The status of the apps would be publicly listed.

Such a model as proposed above would allow us to release a 0.9.18 core with some additional supported apps (such as ged, property, messenger, tts) a lot sooner than trying to get all the 0.9.16 tarball apps ready for release.

The only technical issue to resolve in this plan would be version control as savannah's CVS. isn't really designed for this model of development. I have been discussing switching to SVN with the savannah hackers, they are supportive of the idea.

I do have comments open on my blog, so feel free to leave a comment, otherwise discuss it on the dev list. I will post a summary of the comments there if I feel it is warranted.

Another coder along the way

Today I went with Julie for our first midwife visit. Julie is almost 10 weeks pregnant! We are pretty excited. Noah has been telling a few people about "the baby in mummy's tummy" over the last couple of weeks.

It doesn't seem as scary the second time around. Noah is already pretending to tickle the baby and take the baby out so he can play with it or read to it. Pretty cute.

If everything goes to plan bubba #2 will be born on or around 26 November at the Family Birth Centre at the local hospital. Noah was born there and we were really happy with our experience there.

While we were at the hospital today we saw the picture of Noah at 1 day old on their baby wall, which was pretty cool.

We had hoped that Noah would be cranking our code by now, but that hasn't happened, even though he started well.

Noah coding @ 2 months

Lets hope the next one can keep up the progress ;)

The Summer of Code Roller Coaster

I am awaiting final confirmation from google and the GNU project, but I am 99% sure now that phpGroupWare will be getting a Summer of Code (SoC) slot, and I will be mentoring a student to implement sync.

What a process it has been, and I am yet to start mentoring. I thought others might be interested in the the ups and downs involved in getting phpGroupWare a SoC place.

At the start of March, Google opened applications mentoring organisations. I made an application on behalf of phpGroupWare. All up 141 organisations were accepted, ranging from small obscure projects through to some of the stars of the FOSS community, with a mix of grass roots and commercial projects. Unfortunately phpGroupWare ended up at 142nd or lower in the rankings.

I am sure google was inundated with applications, but it would have been nice to at least receive a "thanks but no thanks email" from them. I found out by checking the listings when they were announced. It kind of reminded me of first year uni when they would post provisional marks for the semester a couple of weeks before mailing out academic transcripts. I thought our Summer of Code was over before it had even started.

Then I noticed that the GNU Project had been accepted as a mentoring organisation. As phpGroupWare is a GNU Package it was eligible for SoC slots, under the GNU banner. The GNU project received 65 valid applications, with a further 12 being deemed to be invalid. I thought phpGW had a pretty good chance of getting one of the slots.

phpGroupWare received 2 applications for worth while improvements, those being sync and redoing the installer/setup code. It was really hard choosing between the 2 applications. The rationale went something like this. Setup is the first thing a new phpgw admin will see, our current setup app has had some eye candy added by it is far from polished and needs some serious attention, yet it is not something that someone is likely to invest money in, but it is important. Sync on the other hand allows us to support mobile devices, desktop apps (including dare I say it MS Outlook) and to tick another business functionality box, yet our previous attempts at sync have failed, usually due to technical reasons. In the end a tough choice had to be made (sorry again jarg), and we went with sync as it was going to bring the greatest benefit to our current and potential users.

The GNU SoC admins asked all the mentors to rate the applications. Our top choice (sync) was rated up.

While I was away for Easter (with limited dialup speed internet) it was announced that the GNU project had been allocated 8 spots. That seemed like a reasonable number off slots given that some GNU packages, such as GNOME had been given many more in their own right. The problem was that the 8 places allocated to the GNU project had to be shared between 11 packages. This meant that some people were going to miss out. I still thought that there was good chance of phpGW getting a slot.

On Monday when I got home (with a good connection) the final 8 was proposed, to my disappointment phpGroupWare wasn't on the list, we had been ranked 10th. This ride was still far from over. A later message suggested that there had been a rethink and 2 packages had been dropped and the last 2 slots were to shared between phpGroupWare and 2 other projects. Back to a two-thirds chance. I fired off an email explaining why I thought we should get one of remaining slots.

The next morning I woke to the bad news, we had lucked out again. Another application had been found as the diamond amongst the coal and elevated to 8th spot. phpGW was now sitting in 10th spot and out of contention, or so I thought at the time.

By this stage I was proof reading a draft blog post on the whole SoC of process. I am now glad that I didn't publish it, not that I was likely to, it was more a venting. I did email one of the admins privately asking for more information on why we had been rejected.

On Wednesday morning I was checking my mail and found a new GNU SoC final list (rev 3, I counted). One student had been allocated to 2 projects and had decided to work on the other project, this freed up 1 slot, which meant phpGroupWare moved to 9th, still 1 short. The news got better, google had allocated the GNU project an additional place. We made it, finally!

I am sure Google didn't intend it to be such a tough process for mentors, but when there are so many worthwhile FOSS projects, some many enthusiastic and competent students and a limited budget it does make it difficult for Google to give everyone a go.

It has been a long and stressful process to get phpGroupWare a SoC slot this year. I hope that the stressful part of the process is now over and that Johan Gunnarsson will turn out a functional syncML interface for phpGroupWare.

If it works out well this year, it might be worth all the effort to ride the roller coaster again in 2008, as long as Google is willing to put up the cash.

Update: I have checked and phpGroupWare is in Google's accepted list.

Linux is better for the environment

TechWorld has a story about how the UK government is recommending the adoption of Linux and FOSS as it better for the environment. The story quotes a Californian Department of Commerce report.

The recommendation of using Linux and FOSS in government is hardly surprising, many governments around the world have been reaching the same conclusions. The interesting part is the environmental angle.

I have always liked the lower resource requirements for Linux based solutions. For a couple of years my primary development machine was a Frankenstein repurposed AMD K6-233 (running at 125Mhz) with varying amounts of RAM. Various parts had been changed in it as they wore out - physically or practically. The machine then became a firewall for many years, until late last year. Now it serves as my network and server monitoring machine, which is also a SMS gateway.

The machine has served me well. The CPU is almost 10 years old. I don't have access to reliable stats, but I suspect that it draws less than 50W. My current Centrino laptop draws upto 90W.

Another example is the old Apple PowerBook Lombard my partner uses for surfing the net, checking her mail and typing the occasional document. She seems happy enough with xubuntu, which I installed on it when I got the machine cheap from a friend.

When the motherboard or CPU fails in the old K6 or the PowerBook dies, they will be added to the box of dead parts in my office. Then one day, I will take all the dead bits to the computer recyclers.

How is all this relevant to the UK report and linked article? It shows how long a machine can continue to run linux in a useful way.

As the article points out, most people will just junk their old PCs, not recycle them. I have sourced parts for machines I still use from garage sales or nature strip (Julie doesn't let me out when hard rubbish collection is on). PCs contain heavy metals such as lead and cadmium which can leech into soil and even underground waterways when disposed of in landfill.

When looking at a new PC organisations should not only look at the cost of procuring the new machine. The repurposing or recycling of the old machine could be considered. The on going running costs of the machine needs to be factored in. For example a Pentium D 840 draws twice the power than a newer Core 2 Duo E4300 which only uses 65W per hour. These days a Core 2 Duo can be less than 50AUD more expensive than a Pentium D. Not only does the newer machine draw less power, it probably has a longer upgrade lifespan.

When considering Linux and FOSS there are many reasons why it can work out cheaper. Lower software costs, lower hardware costs and lower power consumption. So by choosing FOSS you can look after the environment while looking after your bottom line.

New Mac PC ads

Novell has released a couple of new ads for Linux which are a spoof of Apple's Mac PC ads. They are quite well done. If you prefer the ogg or mpeg versions. If you prefer the ogg or mpeg versions. Note: This is not an endorsement of Novell's products or its deal with Microsoft, just their sense of humor.