Entries for label: planet-catalyst

Found 93 entries.

I Love GitHub But...

...sometimes it can only go so far.

The fantastic people at GitHub have released yet another feature to their already impressive hosting service. They are now offering downloads for which I initially became very happy.

Until I read the fine print.

See their blog entry about it and let me know what you think (and yes, you may have already spotted the comment I left there).

It's a fantastic service, GitHub rolls updates out very frequently, I've only ever seen it problematic once and I've consistently been impressed with how much they're doing for the open source community.

So why in the world would you use flash? I quote:

If you’re still one of the holdouts, do yourself a favor and install Flash ... [snip]

I'm afraid it's not going to happen. Not only am I adverse to proprietary software I think it also smells of a closed web, something which I'm sure the GitHub guys are also adverse to.

Also, the only reason they're doing it is so that uploads can bypass their own servers ... something to do with going straight into S3 I presume. Ok, that may be so, but really?

What next?

Having to install Silverlight to perform an upload to a server. Correct me if I'm wrong but I'm sure a pretty early version of HTML allowed uploads of files to servers many, many years ago.

Labels: no-flash, html, planet-catalyst, github

Inserted: 2009-02-11 21:05 (3 years ago)

"Just Stick it in the Same Column"

There have been many times when I have heard someone say that phrase. "Just stick it in the same column". Of course, they are referring to putting two different bits of information into the same column in a database.

And for some funny reason, I don't know why, but people have a strange habit of wanting to put an 'x' and a 'y' value (or a height and width value) of an image into the same place.

For example, if you want to display (76x89) somewhere and the input information you've received from the input source is '76x89', many people seem determined that you just whack that string into a column since the (current) output format is the same.

Please.

That's just laziness. But laziness in a bad way.

Stop doing it and stop telling me that I have to do it too.

Just do what's right from the start. Split it up in the separate bits of information (yes, surprisingly the width of an image is a different bit of data from the height) and store it separately too. You'll be thankful not only that your queries are nicer and faster but that the logic in both the frontend and backend is much easier. All because you decided to parse the input correctly in the first place.

And if you don't believe me, then believe Arjen.

Enough said.

Labels: database, planet-catalyst, doing-it-right

Inserted: 2009-02-04 22:36 (3 years ago)

Playing with CSS

Over the past couple of months, I've implemented a new site in Zaapt. Usually I take a design with HTML and CSS and just use it straight but this time, I wanted to write the HTML and CSS myself.

I first found a theme I liked which had been converted from a WordPress theme to a BlogSpot theme. Then I found the original WordPress theme.

But of course, I wanted to implement it in Zaapt so I converted it to a Zaapt theme. Over the space of a couple of months, it also meant that I added a few extra features to the blog model, which included an archive list as well as a category list. Anyway, that isn't the discussion of this entry.

Doing the Layout in CSS

A little while ago, I stumbled across a site called 960 Grid System and I immediately thought it looked good. It turns out that getting a 2 or 3 column layout is pretty easy and so good I used it on the new site. Then all I had to do was re-implement all the important parts of the WordPress/BlogSpot templates but ignoring all the cruft that goes along with it (Zaapt is nice in that it's templates don't have to be over complex).

Anyway, to take a look at the new site head over to my Personal Finance blog Retire at 40 (over 150 subscribers now). The columns were damn easy to do and the reset.css stylesheet from the 960.gs set means you start all browsers off on the same foot.

Of course, IE is giving me grief in versions 5.5, 6 and 7 (Update: IE 8 actually looks ok) as can be seen by BrowserShots - which by the way, is one funky-ass site but you know, I'm not too worried though but I'd be happy if I could get a solution. Firefox looks just beautiful.

Isn't that always the way?

Labels: retire-at-40, css, zaapt, 960-gs, planet-catalyst

Inserted: 2009-01-08 00:13 (3 years, 1 month ago)

What a Guy!

This week something magical happened and therefore there is someone we owe a great deal of thanks to. As is usual with open source it took one person a huge amount of effort to step up and complete something that needed to be done.

Two days ago, it was announced that the Perl 5 repository was being shifted to Git. After many hours, days and months wrangling with all of the numerous repositories that Perl 5 has used in the past, Sam Vilain managed to somehow mung it all into one coherent Git repo!

Earlier this year, I remember when he would speak to us in work when he was probably right in the middle of doing his various custom conversion tools. He'd be telling us about Git and how other version control systems were lacking in comparison. There was definitely a point whereby everyone would take the piss and note "Hey Sam, you talking about version control systems again?" It is obviously a subject near and dear to his heart.

I'm lucky though since I get to work with such clever and interesting people. Usually those who I consider a bit of a hero due to all of the work they have done, either in groups or individually and for such a good cause (in my opinion) too.

I get to speak to Sam quite regularly, sometimes Perl and sometimes whatever other random subject he's been looking into recently. He's even contributed to a a project of mine (cil) though wish I could say the help was reciprocal. Admittedly, I don't always understand what he's saying - not the words mind, just the sentences(!) - but that's okay, it's good to listen to someone who is a naturally free thinker.

I also found another link from the GitHub guys who also obviously took a liking to our Sam (describing his effort as a heroic one): A Perl Clone Appearing on GitHub.

Just as an interesting note, if I were to describe Sam and his Perl exploits in terms of the TV show Red Dwarf, he'd be a bit like the 'Ace' version of Arnold Rimmer from a parrallel universe. You know, the one where 'Ace' always says:

Smoke me a kipper, I'll be back for breakfast!

to which the rest of the crew just mutter:

What a guy!

Sam, you're a good guy, well done and thanks for all your effort in porting the Perl 5 repo over to Git. Sometimes I feel both Perl and Git go hand in hand since they both have that powerful yet non-restrictive way about them.

And finally, to sign off ... if I were one of the Arnold Rimmers from a parallel universe, I'd be the classic Rimmer we all know and love. And his phrase would be quite apt at this very moment in time:

Stoke me a clipper, I'll be back for Christmas.

Signing off for this year, Merry Christmas and Happy New Year everyone!

Labels: perl, git, planet-catalyst

Inserted: 2008-12-24 20:36 (3 years, 1 month ago)

Finally, OpenID for Google Accounts

Google has just announced that it is allowing OpenID for ALL of it's user accounts.

It's weird though since it is calling it Federated Login when in fact it really should state the fact it is is enabling OpenID (I had to double check just to make sure it was). Over on the Google Code Blog however, they're being a bit more technical :-) and actually saying so - Google Moves Towards Single Sign on with OpenID.

Overall, this is great news. Yes, Blogger has allowed OpenID for a while and there was that little test with Google App Engine, but this is what we've wanted for a long time.

There are very few companies now who don't accept OpenID and very few of the big ones (with lots of users) who don't provide OpenID.

So hopefully in the near future you'll just need one OpenID, and therefore one password, to log in to as many sites as you use. Of course, you'll be able to have as many OpenIDs as you want but that's your choice.

There seems to be some interesting things going on with each of the new people accepting Google Accounts by their email address rather than traditionally by their OpenID URLs. I suspect that this is just a predefined step over the first contact the website consumer has to do when first contacting the provider. I'll probably post further into why this is happening another time.

But anyway, that's beside the point.

Now all we need to do is make Google, Yahoo! AOL and all the others accept OpenIDs!

It's a long slow road, but we're eventually getting there.



    

    

    

    

Labels: openid, google, planet-geek, planet-catalyst, yahoo

Inserted: 2008-10-30 13:06 (3 years, 3 months ago)

Not Doing Smilies

Sometimes you wonder how you got into a particular situation. Sometimes you got yourself there, other times, you're where you are because of decisions other people made before you turned up.

It turns out I was in a situation today who's root cause was due to the people before me. It was only when I booked time against the project did I think of this blog entry. I booked some of the time spent with the comment:

Not Doing Smilies

At the time I wrote it I was being completely serious since I had to stop a particular website from converting those :-) smilies into images. Yes, it was that weird.

It was only afterwards, when a colleague of mine told me it was the "best comment ever", that I realised I myself was not doing my usual smilies.

Why wasn't I smiling? You see, we were in a situation whereby we were repaying 'Technical Debt'. I know this because Stephen gave us a great talk on it a few months ago. I guess I always knew what it was since I've had to clean up other people's messes before but his talk really rammed it home how many multiple times we actually have to pay it back. Once in technical debt, you spend continuously more trying to get out of it. It's almost like it spirals out of control and in some of those cases, many people's fixes are just papering over the cracks (another colleague's comment today).

The General Problem

So there we were, trying to figure out what the hell was going on with something which had about the same tensile strength as a piece of chewing gum. It was inherently brittle and it just pained me to wonder why and how it was originally set up as it was.

As it turns out, the problem above wasn't the overall problem but was at the end of a long list of problems. The root cause problem however is in the way this particular part of the project was set up. It was done in a hurry in the first place so that the client could get something up and going 'as fast as possible'. I'm guessing this is what the client wanted.

If you're anything like me, then as soon as the client says 'as soon as you can', 'by tomorrow' or 'ASAP' then you know you're onto a losing situation already. Even if you argue, refuse or try to clarify why this isn't a good idea, you're usually stared back at with a I'm the client and I'm paying for it, so you just do it' look. By then, no matter what good reasons you give, it then becomes a powerplay in which you're bound to be on the losing side - for reasons other than technical ones.

Another negative in all of this is the fact that the client - in a fair majority of cases - may actually be an internal person who is working alongside you. This person might be someone in a higher position, a manager or maybe just someone with the loudest voice. The end result is the same; you're left to do a sub-standard piece of work against your wishes. And no matter what you argue, how you put it and explain the reasons why this decision is a bad mistake, you're still forced to do it.

This doesn't sound good does it?

And you know that ultimately, it's going to be you who has to clean up the mess afterwards. Let's face it, you're the person most intimately involved in the code and therefore you just know why it's going to fail. It's so clear to you yet still, there is nothing you can do about it. Yet all these other people who don't know the code as well as you force you to do it. My brain hurts thinking about how this can ever be a good thing.

History Repeats Itself

I don't blame the people before me for what happened today since I wasn't there, I wasn't in the situation they were when those decisions were being made but I can only imagine that they were left with no choice since they had to get this thing going 'ASAP'. Granted, I might have done something different in their situation but that solution might not have been much better than the one we were left with today.

So what was initially designed as something to get 'up and going very quickly', soon descended into a botch job that no-one liked, no-one took ownership of (because it was a botch job) and therefore that particular subsystem was left to rot and die unloved and in a state of disrepair. Eventually, it all came to a head when the brittleness of the solution came back to bite us - all of us - on the sensitive behind! No-one really likes being bitten on the bum no matter what they say!

Before we move on, let me just re-iterate one part of that previous paragraph, and I'm going to put it in a quote so that if you skimmed over it just prior to this paragraph, you'll definitely see it this time:

... no-one took ownership of [it] (because it was a botch job)

This is one of the most important things in software and probably in lots of other walks of life too. If something is so bad that no-one wants to look after it, then you're on to a losing situation already. If a particular job was done correctly (because they were given the correct amount of time and support) then it would be easier to maintain and for people to actually take ownership of it. That way, it wouldn't rot in hell like all those other bad pieces of software out there do.

This in itself is bad, but here is something even worse ... prepare yourself now ... in our industry, we've seen this happen a thousand times before, no-one has ever learnt their lessons from this and yet we'll see it again and again and again in the future!

That's just sad. Really sad.

All I can do at this moment is slap my forehead and shout "Craptastic Batman"!

Who Pays to Fix Things Up

At first glance, it turns out that the people who have to pay to fix the whole mess up is us. The client certainly won't be billed for this situation I'm sure. So it turns out we're paying for it. In fact, we're paying for it in many more ways that one:

  1. our time spent to fix it up
  2. our developer's energy since it is quite a stressful situation
  3. our developer's non-work time, since it had time spent on it over the weekend
  4. our enthusiasm wanes for something that wasn't already initially liked
  5. our time (and therefore money) to re-implement it properly, in a good way and without duct tape

In fact, it's not just us paying for it. The client also has to pay for it, though not in a direct monetry sense:

  1. people using that part of the system couldn't use it for a while
  2. some client's time was spent liasing with us at every step of the way
  3. other areas of the system were slower or substandard and therefore affecting even more people using it

Finally - and this is the worst of all - the visitors to the website also had to 'pay' ... since they received a substandard experience because of the problems. Either that costs the visitor a little bit of time or it may result in their eventual rejection of the site and never to return.

Shortlist for Clients and Managers to help 'Make Things Better' (TM)

To finish off on a high point, here's my quick checklist for making things work out better from the start. This is not a technical list but a list which can be used to just generally make things suck less:

  • when the developer says something will take 32 hours, don't say "do it in 16" - they know the code better than you, believe that if nothing else
  • if you have an idea for a new feature, ask how long it will take first; don't say "we want it by Friday" - if you haven't had this feature up until this point, then you can do without it for another short while until it is done properly
  • if you desparately need a feature for a particular date, please think of it in advance or at least don't expect other things to keep on trucking. Prioritising is the key and that'll really help things
  • kthxbai

See, I told you it was a quick checklist. Now go and mull it over and let me know what you think.

:-)

Labels: website, geek, planet-geek, developer, planet-catalyst, bugs

Inserted: 2008-10-28 19:51 (3 years, 3 months ago)

Save Us

I just stumbled across a post which I think would make all of us happy.

It's called Save the Developers - enough said!

Labels: planet-catalyst, web-development

Inserted: 2008-10-12 23:19 (3 years, 4 months ago)

"A Wry Smile" about Skype

Glyn Moody has just written an article on why Skype should be open sourced.

Why eBay Should Open-Source Skype is an interesting read. Whilst I think open-sourcing Skype would be good, it would be hard to convince eBay to do it. So Glyn's views that everyone should get behind an open source version of it doesn't get a look in until it actually is open sourced.

Alternatively, the FSF's list of High Priority Free Software Projects should be looked at and considered the best approach at this time.

Yes, an open source version of Skype will win but if that doesn't happen, getting behing Ekiga and the other open source VOIP programs and open VOIP protocols is the best thing to do at the moment.

Labels: skype, planet-geek, planet-catalyst, voip, ekiga

Inserted: 2008-10-10 08:18 (3 years, 4 months ago)

Help When Writing Blog Entries

Over the past few weeks, I've been reading a few blogs about writing. Mainly they're designed for people writing blogs but these guys also write for magazines, newspapers and other places too.

So far, I've been really enjoying exploring two sites in particular:

Once I start reading an article on CopyBlogger I end up doing the Wikipedia thing. I find myself with 7 or 8 tabs open with them all still to read.

Hopefully my writing style is improving and I'm really happy with my latest entry on Retire at 40, titled One Technique on How to Start Saving.

I'd seriously recommend subscribing to CopyBlogger and ProBlogger also has fantastic articles.

Labels: personal-finance, planet-geek, planet-catalyst, writing

Inserted: 2008-10-08 12:25 (3 years, 4 months ago)

Optimising a Blog the Non-Technical Way

This is a technical blog but I'm not talking technical for a moment. I'm talking content and other things around running a site. It's something I have never really done but over the past couple of weeks, is something I've been enjoying a lot.

Granted, when we see a problem, we generally see a technical solution to it, but I want to look at this from a different angle for a moment.

Take a look at my new blog, Retire at 40. Yes, I know the subject matter is a bit out there but consider the layout for the moment and not yet the content. Also consider some of the other things I have been doing to try and get it off the ground.

Layout and General Stuff

Here's a list of some of the tweaks and other things I have been doing in the last two weeks. Generally I change just a bit at a time and hopefully so that it'll help capture more people, more subscribers and with less clutter.

  • using Feedburner for my feed so I can see my subscribers
  • added Email Subscribers to the mix
  • moved the RSS and Email subscribe information to the top of the page
  • also put them at the bottom of each (individual) post
  • using Google Analytics to see my hits (currently almost 600 hits in just 21 days :-)
  • getting myself 'out there' by posting a guest entry on another Personal Finance blogger, SingleGuyMoney - Being Green and how it Saves you Money

Content

Now onto the content (but not the subject matter). Here, I have been reading a few other blogs to help in this department. Some of the things I have been trying to do are:

  • use a Creative Commons picture on every post
  • outlining my post before I write it
  • putting subheaders into the post, such that it is easier to manage and read - that storyline feel to it keeps readers interested
  • writing as though I'm talking to you not as though I am writing about me (Note: this blog is about me, so that's why I do it here.)

I have also been reading a number of blogs about writing copy such that I can increase my skill in this area too. Of course, you can read all you like but it's all about actually doing it. Again, this new blog gives me an outlet to practice and hone my writing skills.

Future Plans

These are some things I plan to do over time when it makes more sense:

  • remove the archive completely since no-one really uses it (do you?)
  • properly categorise all my posts into a converging set of tags, and show that instead
  • put the 'Digg This' button back on each post when I get more subscribers
  • promote myself more, either as a guest on other blogs, getting guests onto mine or (as is traditional) commenting on other peoples
  • keep reading about Personal Finance, writing in general and - since I can't leave this out - technical bits and pieces to help put all this in place
  • start learning more about adverts, affiliate schemes and even direct sponsorships

Oh, and by the way, I'm really enjoying using someone else's hosting service for my blog. I'm sure a few of you wonder why I'm using Blogger instead of my own CMS, but yes, this is also an experiment too (did you notice I separated my stylesheet out onto GooglePages so it didn't have to be included in every page from Blogger - something I still consider a deficiency in the Blogger service).

Progress

So far, I am happy with what I have done and with what I have been learning. It turns out (as always) there is more to it than is initially apparent. As things start happening, I'll keep you posted about how it's going and what other changes I shall be making due to what I have been learning elsewhere.

Oh, and if you're interested in the whole Personal Finance field (like myself and Stephen) are, come talk to us since I find it all very interesting. As with all the other subjects I have touched on today, there is plenty more to learn.

Labels: personal-finance, planet-geek, planet-catalyst, blogging

Inserted: 2008-10-04 00:41 (3 years, 4 months ago)

Software Freedom Day Happenings

On Saturday I spent a large part of it talking to other geeks and generally just hanging out.

At Software Freedom Day there was both a barcamp and a hackfest, though I only made it to the barcamp. I've been to hackfests before and just wanted to see what the unconference was like.

It turns out it was good. One of the sessions I went to wasn't quite so good, one was just chatting with a couple of others, in one I learnt alot about Xapian (which looks really good) and in another we talked about distributed source control and other things (but mainly focused around Git).

The setting in the town hall was pretty good though the layout of the rooms was such that there was always a 'front'. What I would have liked to have seen was more a 'circle' so (like I commented at the end of the day) everybody who turns up is on an equal footing with anyone already there.

I'm certainly not a fan of the rooms with projectors in them. Not only does this focus to the person in control of the projector but what should be an informal chat session gets hijacked by the people who were able to get in with slides beforehand. I understand that some of these people are sponsors of the event (for which we truly are grateful) but please, just say it's a presentation and not pretend that it isn't. At least that way we know what we're getting ourselves in for.

The hackfest area seemed to be really lively those couple of times I did go through though I suspect I'll still stay in the unconference next year (let's face it, I hack with people at SHDH once a month already).

So overall, a really enjoyable day and a great day to chat to random other people. Can't wait for next year already. Congrats. and thanks to the organisers for putting up the whole show.

Labels: open-source, planet-geek, planet-catalyst, software-freedom-day, linux, shdh

Inserted: 2008-09-22 21:31 (3 years, 4 months ago)

Stuff to do for Cil

Whilst I was away, there were a number of things cropping up that people wanted for Cil.

The two most interesting requests that people have submitted are:

  • addition of UserName and UserEmail to the .cil config file
  • ability to have a cil work command

The 2nd idea strikes me as being really useful so thanks to Yanick for all of his ideas, keep them coming.

Both of the ideas above are good but there are just a few things I'll want to discuss with the authors. There were also some requests that I create a mailing list for Cil development - now done - so we can talk these things through.

Please join up if you are interested in Cil and where this little adventure might take us.

Finally, a big hello to everyone ... I'm back in the country so I'll see you all very soon.

Labels: cil, planet-catalyst

Inserted: 2008-09-05 00:45 (3 years, 5 months ago)

Cil Hits a Nerve

I'm amazed at the reception Cil is getting so far. Further news now is ...

... Cil has been made a featured project on GitHub's Homepaage (though you have to be logged out to see it).

I spoke with Tom Preston-Werner a couple of weeks ago about projects which help drive Git adoption and thought he would be interested in Cil. He told me he'd feature it on the front page of GitHub so thanks very much Tom, that's awesome.

My Ohloh stats on Cil are also looking good and will soon show that the project has already had 6 contributors, some of whom have jumped completely out of left-field.

Thanks to everyone for helping out so far.

Labels: git, cil, planet-geek, planet-catalyst, github

Inserted: 2008-07-31 21:28 (3 years, 6 months ago)

Cil is now in Debian Testing

Cil has been through Debian Unstable and is now in Debian Testing.

If you didn't know, Cil is a command-line issue list which lends itself well to distributed bug tracking. It saves issues, comments and attachments locally and already there are some powerful features and ideas in it.

Cil v0.5.1 is now in testing and hopefully will be in the Lenny release. That particular version of Cil has all of the basic structure required to start using it and a number of great commands to help use it.

There is no v0.6 of Cil yet but there are a number of things planned. I added some initial abstractions about how Cil can integrate with various VCS systems and SamV has gone one step further and added some actual features which integrate even more to what I initial imagined. v0.6 will hope to tie up and pull together a number of loose ends around this whole area.

Further out, there are even more ideas on the horizon but I shall tell you about those closer to the time.

Some of you know I shall be off on my hols shortly so it may have to wait until after that but as I said, v0.5.1 is a nicely round and complete version to appear in Lenny. Have fun and happy hacking.

Labels: debian-lenny, cil, debian, planet-geek, planet-catalyst

Inserted: 2008-07-22 18:18 (3 years, 7 months ago)

Problems with Google Reader

It's a web service. Which isn't bad in itself but that means there are many things missing or broken which I CAN'T CHANGE!

For example, let's take a look at one of my subscriptions. I was going through them today and filtering out those I didn't want to read anymore. Every now and again I stumbled upon something which just hadn't had any updates for a while.

Take DabbleDB for instance. I can't remember the last time I read a blog entry. Surely they're still around? I looked at their feed URL http://dabbledb.com/blog/?feed=rss2 ... which redirected me to http://blog.dabbledb.com/?feed=rss2 (and ignored the param). I then found their real feed right here http://feeds.feedburner.com/DabbleDB.

Yes, they're still around and very much alive and kicking. So why didn't Reader tell me what had been happening and that the feed didn't exist anymore?

I suspect there are a number of feeds I added over time where I haven't read anything from them in ages and all because they have moved the feed elsewhere.

What am I to do about it? Continuing on from my half-baked plan to use on-line services less and less, I am about a quarter way through writing a small RSS Reader I can deploy onto my site (I couldn't find something that already existed). It'll only be small since it'll only serve one person (you!).

Already I have an outline plan and some code but I have a nice feature set forming in my head. It'll give you a lot more information about the feeds you read. For example have you ever wondered:

  • when the feed you're reading last updated?
  • when was the last time you retrieved it?
  • how many posts have they done in the past month or even year?

And of course, this isn't on the desktop, it's on the web so you can read your feeds from anywhere. A nice 'Next' button in your toolbar would be handy, as would the ability to preview something instead of having to go there.

My plan is to be able to have your feeds public since that would be kinda cool, be able to click them and have it remember that you've read certain posts, and (thanks Donovan) I may even have something like a star so I can click interesting posts to share them.

Francois also told me about the Franklin Street Statement the other day. Whilst I might not actually pledge to it myself I do intend on releasing this software under the Affero GPL which will be awesome. Not because a big company will come and use it and therefore have to contribute back changes but so that anyone can use it and contribute back.

As I said, I'm just starting but hope to have something ready in a few days time.

As a final note, I'd like to say that I've been using Google Reader quite happily for ages and it has been really good. Now though I'm of the opinion that no matter how good, bad or indifferent a webservice is, it is always better when it is open.

Labels: google, planet-geek, planet-catalyst, rss-reader

Inserted: 2008-07-16 23:22 (3 years, 7 months ago)

QR Code for http://kapiti.geek.nz/

The Google Chart API now supports QR codes.

QR Codes now available on the Google Chart API. Here's mine for http://kapiti.geek.nz/:

And the link I did it with.

I originally saw this because Brad Fitz has used it to put on his Facebook profile image which is interesting.

I guess if image search engines want to know where an image originally came from, they can scan for the QR Code

Taking this futher, I can think of one really good use already. You could put it on your Creative Commons licensed Flickr images and that way, the attribution part of publisher's side of the deal is already fulfilled. That can only be a good thing (as to whether they want a black and white pattern in the corner of their published images is a different story).

So I'm already defining a small protocol in my mind which might be quite nice.

There are 4 corners of an image so maybe something like this:

Any thoughts (apart from the fact it might look ugly)?

Labels: creative-commons, qr-code, planet-catalyst, google-chart, kapiti-geek-nz, flickr

Inserted: 2008-07-11 10:11 (3 years, 7 months ago)

Cil News

There have been a number of good things things happening with Cil in the past week or so.

Just a few quick notes to start off with:

When writing Open Source Software, it usually feels good to be able to give something back but it also feels better when someone is helping you too. Francois deserves all the credit getting Cil into Debian and a lot of the credit for many other features already in Cil.

Now I just need to get my act together so I can contribute to email-reminder - I promise there will be patches before sunrise.

Labels: cil, planet-geek, planet-catalyst, dbts

Inserted: 2008-07-05 19:13 (3 years, 7 months ago)

Cil v0.4.0 released

This release has a number of new things and functionality.

Here's the short version of the changes, though there are quite a few since Saturday's release:

  • now reads a ~/.cilrc config file, so set your UserName and UserEmail in there
  • you can now filter on --is-mine which takes your email from your ~/.cilrc
  • you can now use shortened hash names for issues/comments/attachments, so long as they are unambiguous
  • a new command called 'am' has been added so you can process email messages into either new issues or comments on existing issues (ToDo: processing of multiple messages in actual Mailboxes)
  • allows dependencies between issues so you can state which DependsOn or Precedes another

Documentation has been made a little nicer too.

There are still lots more ideas to get through but I'm sure it'll slow down at some point. As always, thanks to those who provide me with inspiration and ideas, you know who you are.

Have fun, let me know how it goes and happy hacking.

Update: fix to packaging, patched to v0.4.1, see the main cil page for tarball details.

Labels: cil, planet-catalyst

Inserted: 2008-07-02 23:47 (3 years, 7 months ago)

Why I'm Passionate about Perl

I saw this meme on Grant's journal (huh, who keeps a journal these days, I knew he was old fashioned). Not sure where he got it from but I thought I'd do it anyway.

\b{The person who introduced me to Perl showed me that...}

Erm, nothing. I was the same as Grant. I introduced myself to Perl and I'm glad I did. At the time, I was living in Germany, had a crappy old laptop, no webbernets and lots of time. I had to do something and somehow, Perl won.

I first starting using Perl to...

...do my own photo gallery website. And yes, I wrote my own templating language. I love the fact that I did it and I think by doing so, my passage towards being a true Perl programmer was complete. TMTOWTDI! It's my party and I'll cry if I want to.

I kept using Perl because...

...after only a few days, I was connecting to The Gimp and writing Perl-Fu modules to generate the graphics, the thumbnails and all the buttons on the site (duly swapped with onMouseOver and onMouseOut). The fact that this language was reading in XML, writing out HTML, reading in jpgs, writing out lots of other images and all these other things made me think that this language was special. At the time, I just didn't know that it wasn't a language at all, and instead was an addictive kind of glue, dressed up and disguised as a language.

I can't stop thinking about Perl...

...because it just encompasses everything I believe in. It has power, expressiveness, individuality, schizophrenia and duct tape (lots of it). It's also free and it has a great community, which are both hugely important factors.

I'm still using Perl because...

...I haven't yet found anything better than it. I'm afraid it's that simple. Other scripting languages don't seem worthwhile enough (or different enough) to spend time on and it's only completely new paradigms like Erlang, which I would consider learning. Whilst a lot of Perl people are saying "Ruby until Perl 6", I'm saying "Perl until Perl 6".

I get other people to use Perl by...

N/A. I don't say to other people that they should do anything. Then again, there's no harm trying to convince someone to use something by showing them it's better. I mean, show them a thousand line Java file or a 10 line Perl program. Also show them ACME::EyeDrops and say "There, you do that". If they reply with "Why would I want to?", you've just won the "Which is more fun?" argument.

I also program in ... and ..., but I like Perl better since...

...as stated before, I've not found a better language, though in the past I have written stuff in C, C++, Ruby, Java, Ada 83 (Ravenscar Profile) and a few other bits and pieces. To be honest, waiting for stuff to compile just bores me to tears. It used to take me a thousand hours to get an Ada program to compile and once it compiled, there was no point running it since I knew it would work! Perl is a refreshing change :-)

Labels: perl, planet-geek, planet-catalyst

Inserted: 2008-07-02 21:33 (3 years, 7 months ago)

SoCNoC 2 a Success

Despite my own failure at doing SoCNoC this year, a number of other people have and it is they I'd like to thank for making SoCNoC what it is.

Throughout the year, a few of us behind the scenes in KiwiWriters do lots of work to make sure we're ready for SoCNoC during June. Sometimes it feels like a lot of work but when it starts, it's all worthwhile.

And this year we have managed to break a number of records. Here's a quick run-down of some of the more memorable figures:

  • 143 participants (2.4x last year)
  • 32 winners (2x last year)
  • 2,635,755 cumulative words written (2.6x last year)
  • 58,000 page impressions (2x last year)
  • cost - free (same as last year)!

and lots and lots of fun in to the bargain too.

Well done to everyone who completed it. Special congrats. to our organisers who not only did all the work but managed to write a novel too: Kerryn, Travis, Cassie, Pam - and hello to Jane too!

Here's looking forward to a record breaking 3rd SoCNoC next year!

Labels: kiwiwriters, socnoc, planet-catalyst

Inserted: 2008-07-01 21:46 (3 years, 7 months ago)

New Cil release v0.3.0

Here's another release of cil for your perusal. Staying true to the "Release early, release often" mantra, I hope you have fun playing with it.

I'll quickly go through all the features in this release:

Filters when Listing Issues

For example:

 $ cil list --label=Type-Critical
 $ cil list --status=New
 $ cil list --assigned-to=andychilton-at-gmail-dot-com

(Note: --label and --status were in v0.2.1.) These can be combined too. For example, this is the command line I used to make sure there were no outstanding issues for this release of cil:

 $ cil list --is-open --label=Milestone-v0.3

and opposite to that, for the changelog I could figure out what had changed since the last release by doing this:

 $ cil list --is-closed --label=Milestone-v0.3

If I was on a big project, I'd probably cron something like this to send me an email each morning:

 $ cil list --is-open --assigned-to=andychilton-at-gmail-dot-com --label=Priority-Critical

That's a pretty nice filter :-)

Added a '.cil' Config File

To be able to do some of the filters above (e.g. --is-open and --is-closed) cil now reads a config file and can determine which statuses and labels are valid. There are also lists to say which statuses are considered open or closed. Of course, if you want neither of features you can just turn them off (which is the default behaviour).

Added a 'fsck' Command

Cil saves it's issues, comments and attachments in the filesystem which isn't usually a good way for (slightly) relational data. The new 'fsck' command can help you figure out missing entities though. For example, if an issue is missing its comments or attachments and whether comments or attachments have been orphaned. It also runs some validation against each issue. Validation at the moment consists of checking statuses and labels in their respective allowed list.

Here is some example output you might see from this command (usually if you or someone else has not been tracking the right things):

 ===============================================================================
 --- Issue c4fa2e27  -----------------------------------------------------------
 * StatusStrict is turned on but this issue has an invalid status 'InProg'
 * LabelStrict is turned on but this issue has an invalid label 'Something'
 --- Issue 1f67bc27  -----------------------------------------------------------
 * comment '8dfe256c' listed in issue '1f67bc27' does not exist
 * comment '99b20701' is listed under issue '1f67bc27' but does not reciprocate
 * attachment '29afc3ef' listed in issue '1f67bc27' does not exist
 ===============================================================================
 --- Comment 99b20701  ---------------------------------------------------------
 * comment '99b20701' refers to issue '893f7ea6' but issue does not exist
 ===============================================================================
 --- Attachment 37873839  ------------------------------------------------------
 * attachment '37873839' refers to issue '8af89d74' but issue does not exist
 ===============================================================================

More validation checks will be in v0.4.

Bash Completion of Commands, Options and Entities

(Where 'entities' are issues, commands or attachments.)

As stated in a previous post, there is now bash completion for cil.

Working Practices

As I said earlier, I use a few command lines to let me figure out when I can release a version. For example, the next release is going to be v0.4.0 (barring any bug fixes to v0.3.0) so I tag all of the issues I want done for that release with Milestone-v0.4. This makes it easy to see what needs doing and what is already done:

 $ cil list --is-open --label=Milestone-v0.4
 $ cil list --is-closed --label=Milestone-v0.4

For example, an issue might have been added at some stage in the past, complete with labels:

 $ cil add
 ... added issue 'cafebabe' ...

I usually commit the new issue to my VCS immediately. When I start working on it, I'll mark it InProgress, even if it is just locally. Sometimes I check this in too if it's going to be longer than a few hours:

 $ cil status cafebabe InProgress

Once I've finished hacking on the issue and I'm happy with it, I set it to Finished and add a comment to say what I've done:

 $ cil status cafebabe Finished
 $ cil comment cafebabe
 ... added comment 'decaf7ea' ...

I use Git for my VCS so prior to check in I stage all the working file changes but also make sure Git is tracking the issue properly too. It already knew about the issue file but I need to add the comment file that goes with it:

 $ git add issues/c_decaf7ea.cil

Finally when I commit, I commit the code, the issue and the comment all together. In the message I usually put the text '(closes #cafebabe)'. This keeps everything together.

What's Next

The next release of cil will be Milestone-v0.4 so I'll add that label to a few items I want in it. If there is something I want for the future but haven't roadmapped them yet (into v0.5, v0.6 etc) then I just put a Milestone-Future label on them so I know I want to do them but just don't know when.

Happy hacking and look out for v0.4 sometime in the next week or so.

Labels: cil, planet-geek, planet-catalyst

Inserted: 2008-06-29 11:05 (3 years, 7 months ago)

Cil now has Bash Completion

Another day, another feature added to cil. It's rocketing along.

I've never written anything for bash completion before (someone else has always done it for me) but I had a go at it tonight. After an hour and 15 I had it working quite well.

I was suitably impressed with the whole thing since even though I knew doing it for commands and/or options would be easy enough, I managed to do it for a few other things too (more later).

For example:

 $ cil a<tab><tab>
 add attach
 
 $ cil s<tab><tab>
 show status summary
 
 $ cil --<tab><tab>
 --filename --help --label --path --status --version

That's all happy and nice but the following feature is the killer and will make working with issues a breeze. It also completes the actual issue/comment/attachment name, giving you the choice of the correct type where necessary.

Let's say your issues/ dir contains three issues, two comments and one attachment:

 $ ls -1 issues/*.cil
 issues/a_85eceee9.cil
 issues/c_d8dd779f.cil
 issues/c_feb65ae7.cil
 issues/i_02ee35bd.cil
 issues/i_5c88cb30.cil
 issues/i_98203ce8.cil

When doing the following, it completes to one of the three issue names:

 $ cil show <tab><tab>
 02ee35bd 5c88cb30 98203ce8

as it also does for the other commands that act on issues (status, edit, comment and attach).

Another example would be for extracting attachments:

 $ cil extract <tab><tab>

completes to:

 $ cil extract 85eceee9

This is pretty good stuff already but I can already see that it can be used a lot more in the future...

Let's say you allow the following statusus in your issues: New, InProgress, Finished and WontFix. Then, setting the status of an issue would work like:

 $ cil status 02ee35bd <tab><tab>
 InProgress Finished New WontFix

Really straightforward and really fast, which are basically two of the things I wanted cil to be from the start - I just didn't realise it would be so easy :-)

Seeing as I try and credit people where I can, thanks to Francois for the suggestion of adding bash completion. It's given me a chance to learn something new to me but very powerful.

Note: this feature is in Git and will be in the v0.3.0 release.

Labels: cil, bash-completion, planet-catalyst

Inserted: 2008-06-24 23:44 (3 years, 7 months ago)

If It's us or Google, then it is us!

OpenGeoData has a post today which talks about Google's new MapMaker. It seems the Ad Broker wants to own what you do but gives nothing back.

Needless to say I'm completely disappointed in Google yet again but that's coming as no surprise these days. Head over to OpenGeoData and read the entry for yourself - Google Want to be TeleAtlas

Recently, I've been looking at OpenStreetMap a lot and have tried (and tried) to get something going so that I can map both Seatoun and Mt Vic. I refuse to install Flash to use their web editor but also the version which runs on Java isn't working for me either!

A short while ago, I thought that I'd like to make a nice, small and simple Gtk version but I just had a better idea. What about making a JavaScript version? That would be pretty cool.

Currently I have no time but this might be one of those ideas that simmers for a while and then one day, I try it and see what happens. I fear it will be a big project but wouldn't that be just awesome!

As for helping Google map the world and taking your data, thxb'nothx.

Labels: opengeodata, planet-catalyst, openstreetmap

Inserted: 2008-06-24 22:20 (3 years, 7 months ago)

Cil with New Features

Already there is a lot of news on the 'cil' front just 24 hrs after releasing v0.2.

I've had a number of enquiries about \l{cil|/software/cil.html} consisting of emails asking for help, emails giving advice but even better fixes from both \l{Francois|http://feeding.cloud.geek.nz/} and \l{Sam|http://vilain.net/}. Thanks guys.

Francois has also already uploaded v0.2.1 to Debian Sid for inclusion in Lenny. Many thanks Francois, it's a pleasure being able to work with someone so passionate and involved in Free Software. We all have lots to learn from you.

Release v0.2.1

Anyway, I'd just like to say that v0.2.1 released earlier tonight had the dependency on Term::CallEditor removed to simplify a couple of things. Also, there really wasn't that much code in there anyway.

Working towards v3.0

If you get the HEAD of the cil git repo, you'll already get some new funky features such as the following:

 $ cil list --status=New
 $ cil list --label=Release-v0.2
 $ cil list --label=Type-Enhancement

These, of course, can be combined:

 $ cil list --status=InProgress --label=Milestone-v0.3

and you can also use these same filters with the summary command.

From issue #85eceee9, there are also plans to have something like the following too:

 $ cil list --assigned-to=andychilton-at-gmail.com
 $ cil list --has-attachments --has-comments
 $ cil list --is-open
 $ cil list --is-closed

(These last two will only happen when there is config to say which Statuses are Open/Closed.)

I'm liking these filters already and with the new ones above it'll be great. Heck, I'm even thinking of cron'ing various filters so I know what I have to work on each day :-)

Other Issues

I have also added an issue, #98203ce8, which describes how to add proper searching to cil. This will supplement the above filters quite nicely.

BTW: I have searched and searched and searched for a nice, small and instant indexing system within the Debian repos. I've tried a couple of things which didn't quite work how I wanted it, so if anyone has any ideas, I'd love to talk to you so get in touch.

e.g something like this would be fantastic:

 $ cil reindex
 $ cil search 'Project Blah refactoring'
 $ cil search 'screenshot table formatting'

Then we'd just list the issues found. It should be very simple with no setting up (except inside cil itself.) If git can 'init' and cil can 'init' then search should be able to set up real quick too.

And finally...

I'm already using cil to track itself and I'll be shortly adding it to most of my other little projects too. I'm already getting quite competent at getting at the issues, adding, editing them, making sure they're in the repo and all of that jazz. It's coming together quite nicely.

Labels: cil, debian, planet-catalyst

Inserted: 2008-06-24 01:03 (3 years, 8 months ago)

cil v0.2.0 released

I'm happy to announce that cil v0.2.0 is now available for download.

When I released v0.1.0 it was a test release for two reasons:

  1. that people could try it
  2. that I could figure out if the project was viable and that people would use it

While (1) didn't happen, (2) did. I got lots of feedback even though no-one was using it. I did tell people it wasn't quite where I wanted it to be but this release changes all that.

Now it has all the makings of a tool which can just get better over time. Obviously it being v0.2, there are some things it is lacking but as it is, it's perfectly usable and nicely contained.

Some new features of cil v0.2 (over v0.1):

  • save format of issues has been updated and is nicer and more flexible than before
  • extra commands to help with managing issues themselves
  • comments work and are more generic than before
  • attachments can now be added to issues

So far, most of the commands I added to cil were quite obvious but already there are some ideas for commands to allow you to work a lot faster. Such as:

 $ cil status ISSUE Finished

Quite neat huh?

See cil for more information and also see this cil example for more of an idea about what cil can do.

Before I sign off I'd just like to point out one commit I did earlier today. My vision for cil is so that you can keep your bug tracking inside your repository. This means you can do things that weren't possible before. For example, closing the bug along with the commit(*).

This commit for example shows you that along with the fix, the bug gained an additional comment and the issue was closed, all in the same transaction. That's pretty cool.

So guys, go and have a play with this one. Thanks to Nigel, Francois and Martyn for allowing me to bounce ideas off you. And please, keep those ideas, suggestions, feedback and more importantly, patches, coming ;-)

(*) Yes, I know you can link your version control with your bug tracking system - usually with sticky-tape and superglue - but when they're in the same place, it's much easier :-)

Labels: cil, planet-catalyst, distributed-bug-tracking

Inserted: 2008-06-22 17:48 (3 years, 8 months ago)

Project AwsSum Update: Added 'Copy' to S3

Amazon added the ability to 'copy' a key within or between S3 buckets.

This functionality can also be used to change the metadata of an object too.

For example, using the thin-layer commands in Project AwsSum, you can do things like:

 $ s3-rad -b mybucket -k NewKey.jpg -K FromKey.jpg

As I said, you can also copy between buckets (so long as they are in the same location, either the States or Europe currently):

 $ s3-rad -b mybucket -B frombucket -k key.jpg

As you can see, you have to specify a destination bucket and key but you may leave off the source bucket and/or key. While the Amazon API requires everything, my S3 library fills in the blanks.

If you try to copy a key onto itself hwoever, you'll get an error back from Amazon:

 $ s3-rad copy -b mybucket -k image.jpg
 InvalidRequest: The Source and Destination may not be the same when the MetadataDirective is Copy.

but you are allowed to do this if all you want to do is change the metadata, in this case, the Content-Type:

 $ s3-rad copy -b mybucket -k image.jpg -m REPLACE -c 'image/jpg

Whilst the CopyObject operation in S3 is still beta, there has been much discussion about it on the AWS forums and I suspect the API will be final now.

Note: for those using s3bak you can now add a DefaultBucket to your ~/.awssum config file, thanks to a suggestion from Francois.

Labels: project-awssum, planet-geek, planet-catalyst, s3, aws

Inserted: 2008-06-15 12:30 (3 years, 8 months ago)

Big News, Big Number

Today at around 12:45 the cumulative total words written in this years SoCNoC passed the one million mark.

Let me say that again, we passed the ONE MILLION words mark. That's just fantastic news and congratulations to all those taking part.

Take a look on the KiwiWriters homepage to see for yourself.

Whilst last year we managed almost a million in the month, we've sailed past it after 10.5 days. Plenty of time to hit two million though I know the word rate will slow down somewhat.

Oh, and I still haven't added my 50,000 words. In fact, I still haven't written them ... but you know, that's only a small problem.

20 days left for me to catch up :-)

Labels: kiwiwriters, one-million, socnoc, planet-catalyst

Inserted: 2008-06-11 14:50 (3 years, 8 months ago)

It Never Stops

This month has been hectic. Last month was mad too because I moved house. Work has been crazy recently too.

This month, I signed up for doing a novel. Seeing as I am a founder member of KiwiWriters, I have to do it. So far, I haven't managed to get into it yet but then finally, when I thought work would settle down, it went beserk again. Hopefully it will settle down sometime soon otherwise I'll never get this thing written.

I'm happy and settled into the new flat now though so that helps. Finally I can see the carpet which is always a bonus.

And then, when I thought I'd be able to get into my novel for SoCNoC, I somehow volunteered to do a talk at PerlMongers tomorrow night (Tuesday). Silly me.

Then again, I've just written the talk and I'm happy with it. It's only short but I'm hoping to open it out into a discussion at the end of the presentation. It's about my idea of a distributed issue tracking program, initially conceived as 'cil'. There are already a few people interested in it including both Nigel and Francois so hopefully, they'll ship me patches (hint hint ...) though their ideas have already been immensely invaluable. Thanks lads, it's always a pleasure prying into your brains.

Labels: cil, planet-catalyst, distributed-issue-tracking

Inserted: 2008-06-10 00:12 (3 years, 8 months ago)

Wellington Rocks

And no, I'm not talking about that heavy metal thing over Easter.

I'm talking everything, all the time.

It's just an amazing place.

Labels: planet-catalyst, wellington, happiness

Inserted: 2008-06-07 10:29 (3 years, 8 months ago)

Nearing Half a Million Words Already

SoCNoC is not yet 5 days old but already we're nearing half a million collective words. Obviously over time, people will either finish, slow down or drop out but so far it's been amazing.

Yesterday I put a collective word count onto the front page of KiwiWriters so everyone could see our total. Not that I'm contributing much - am still only on 1,283 - but I hope things will settle down and I can get writing again to help push that total higher.

Last year we almost made one million words for the whole month so we're well on the way to smashing that figure. Fingers crossed.

We hit a different record on Sunday too, managing to get 3,600 hits in a single day. And the next day we smashed it again with over 4,300 hits on a single day. It's a belter!

I apologise to those people who don't find these figures as interesting as I do so unless we manage even more amazing facts and figures, I'll keep them to myself (yeah, right). Maybe I'll post some totals at the end of the month.

Labels: kiwiwriters, socnoc, planet-catalyst, collective

Inserted: 2008-06-05 21:51 (3 years, 8 months ago)

It's Gone Ballistic

Just the other day, we were talking how ninety-something participants at the start of SoCNoC was good.

Well, less than two days into it we're already onto 123 participants and I'm sure we'll get a few more too. Last year I predicted that we'd get to 120 - double last years total - but I never actually thought we'd do it.

It just seems to have gone ballistic over the last couple of days. I've tried to write but managed only 1,283 words since the start. There have been so many other things to do, it's plain crazy - but then, that's why we all got into in the first place!

Anyway, I should easily be able to pull it back like I've done in the past but at the moment, I'm just enjoying everything about it. Now I wonder if we'll collectively hit two million words. I would find that staggering.

We've certainly received a lot more hits on the site over the past few days too. I reckon there are some companies out there in New Zealand who don't get as many hits in a year as we're going to get in June but I will post the full figures once the month is out.

As Nigel said to me recently, it'll be a good test for Zaapt too, but in all honesty I reckon it won't push it until we get close to a million or two million hits in the month. Here's hoping!

Labels: zaapt, website, hits, kiwiwriters, planet-geek, socnoc, planet-catalyst

Inserted: 2008-06-02 22:42 (3 years, 8 months ago)

SoCNoC has Started

Already, we're underway for the Southern Cross Novel Challenge.

A few people have stayed up to chat in the KiwiWriters chatroom and Kerryn Angell (founder of KiwiWriters) set us all going once midnight passed here in NZ.

Starting the month off with 98 participants is a good start and I think we'll even get a higher percentage of winners compared to last year too. With people all around New Zealand and Australi to Finland, the UK and the US, it's truely a worldwide event now.

To all those participating in SoCNoC 2008, have fun and happy writing.

Labels: kiwiwriters, socnoc, planet-catalyst, kerryn-angell

Inserted: 2008-06-01 00:20 (3 years, 8 months ago)

SoCNoC is Almost Upon Us

I haven't written much about KiwiWriter's SoCNoC yet this year but I have two reasons why.

The first is that I've been out of action, both mentally (hard at work), physically (moving house) and electronically (a myriad of problems getting back online).

But the good thing is, I don't actually have to write much for SoCNoC this year because other people are doing it for us.

Here's a few examples:

...but the best site goes to redfox for a dedicated mini-site:

You also know when things are taking off when people out there start making things for your site you just didn't expect :-)

In the real life side of things, we had write-ins in Wellington last year but this year we expect to have write-ins in Wellington, Dunedin and Palmerston North, as well as a NZ on-line kick-off party and an American one too :-)

For the techies and the stats people. May has already been a quite fantastic month. We have:

  • 87 participants
  • gotten over 20,000 hits on the site this month
  • had over 2,000 visitors
  • and gained over 120 new sign-ups

So far, it's going really well but hopefully June is going to be even better.

So if you're still pondering whether to write your first novel, why not just sign up anyway, accept the challenge and see what happens. You'll probably be surprised at what you can do :-)

Labels: kiwiwriters, socnoc, planet-catalyst

Inserted: 2008-05-29 22:34 (3 years, 8 months ago)

Quick Help Moving from SVN to Git

Recently, I moved my Zaapt repository from a Subversion repository on Google Code into a Git repository on my server.

Here's some (really) quick instructions on how I did it. I'll be using it as a quick guide later and it may come in useful for you too.

If you want more detailed explanations on hosting Git repositories, see Nigel's excellent and more in-depth explanation. His takes you through a lot more cases (including the continued use of SVN, whereas this is about cutting the line completely).

Notes:

  • the local machine is called 'alpha'
  • the remote machine is called 'beta'
  • you will access the repo over ssh+git
  • it is private and not public
  • you repo will be stored in /var/lib/git which is writable by you
  • the project is called 'zaapt' but replace that with your projectname

Firstly some setup:

 alpha$ cd /tmp
 alpha$ mkdir zaapt
 alpha$ cd zaapt
 alpha$ git-svn init http://zaapt.googlecode.com/svn/trunk/ --no-metadata

Then, you need to tell Git how to map Google Code usernames into commit names. I'm the only one who has commited to Zaapt so I just need one line:

 alpha$ cat > /tmp/users.txt
 andychilton = Andrew Chilton <andy@example.org>
 alpha$ git config svn.authorsfile /tmp/users.txt

Then you do the actual import. Two notes here. The first is that you don't want the initial repository version since that was created (as user nobody) when your Subversion repo was set up. The second I'm assuming you know the final version of your repo is 447:

 alpha$ git-svn fetch -r 2:447
 ...etc...

Earlier I said that we would be hosting our repository on our own server, so let's get a bare-bones repo without any of the SVN cruft left:

 alpha$ cd ../
 alpha$ git clone --bare --local zaapt/.git zaapt.git 
 alpha$ chmod +x zaapt.git/hooks/post-update
 alpha$ vim zaapt.git/description

Now copy the repo to your server. I'm assuming you want them in /var/lib/git:

 alpha$ scp -r zaapt.git beta:/var/lib/git

You're now done with everything we created in /tmp/ so remove them if you like. Now get a fresh clone of the new repo:

 alpha$ cd ~/git/
 alpha$ git clone ssh+git://beta/var/lib/git/zaapt.git

And if you want a checkout at the far end too:

 beta$ cd ~/git/
 beta$ git clone --local /var/lib/git/zaapt.git

That's it. Simple but it gets the job done for what I wanted it for.

For further reading, see Nigel's page above, Sam's extensive page on An introduction to git-svn... and Chris' page about publishing git repositories

Labels: git, planet-geek, svn, planet-catalyst

Inserted: 2008-05-11 22:10 (3 years, 9 months ago)

SoCNoC is going to be mad again!

Last year's inaugural SoCNoC was an astounding success. None of us believed we'd made so many people write so much.

Here are the vital stats from last year:

  • 60 people signed up
  • 36 people wrote something
  • 16 finished (reached 50,000)
  • almost 1,000,000 cumulative words were written
  • many hours of fun were had socialising during it - writing isn't a lone sport anymore

This year we've been aiming at doubling it and getting to 2 million words. At first, I wasn't sure but here's a blog entry I found for this time last year:

Amazing take up for SoCNoC

By the 10th May last year we had 19 people signed up. This year we already have 44. That's over twice as many so let's hope it pushes on like this all the way through to the end of June.

I've said before that it's amazing how just a small group of friends and KiwiWriters.org organisers can influence such a great number of people to try something new and different. Not only that, but it's a whole lot of fun to do too - in between all the hard work of course!

It definitely pays off though. We might not be the biggest writing site in New Zealand [citation needed] but we're certainly the most exiting [weasel words] :-)

Labels: kiwiwriters, planet-geek, socnoc, planet-catalyst

Inserted: 2008-05-11 00:11 (3 years, 9 months ago)

Challenge Yourself, Do SoCNoC 2008

This coming June we're holding the second ever Southern Cross Novel Challenge where we KiwiWriters challenge you to write 50,000 words during the calendar month.

I have signed up already and am happy to show off my participant's icon:

If you've ever thought about writing a novel or even just fancy trying something different, joining KiwiWriters and challenging yourself is a great way to expand your mind. Yes, it's that good!

So come on over and let's have some fun.

Labels: kiwiwriters, socnoc, planet-catalyst, writing

Inserted: 2008-05-04 23:53 (3 years, 9 months ago)

Good News from Google about OAuth

It seems it is still somewhat unofficial, but Google intend to allow you OAuth access to your data. Excellent news!

It also seems that Google are planning to open up all of it's Data APIs to be OAuth capable, starting with the Contacts API.

See this announcement in the OAuth group.

Well done Google. That's a great step forward. Now let's see it keep going that way.

Labels: google, planet-geek, planet-catalyst, oauth

Inserted: 2008-04-26 22:14 (3 years, 9 months ago)

Yahoo! Turning! Itself! Into! Social! Network!

...but at least it is honest about it, unlike Google.

This new initiative by Yahoo!, the \l{Yahoo! Open Strategy|http://ycorpblog.com/2008/04/24/developer-welcome-mat/} is much like Google's \l{App Engine|code.google.com/appengine/}. Except they are being honest about it, unlike Google.

Instead of saying that you now have cloud computing and you can run on our hardware, Yahoo! just blatently said "make apps for our latent social network". I think that's really what Google should have said at the launch of App Engine because as far as I can tell, that's all it is.

So looking at it on the social network level, Facebook, MySpace, Bebo, Google and now Yahoo! are all competing to be the largest social network. Amazing how everyone is base-lining at that (all due to Facebook's immense success).

I'm not a big fan about much of this though since it still doesn't help promote what I want.

Instead of competing social networks, I want collaborating social networks. As I've said before "data wants to be free" and in any of the sites mentioned above that is not the case. In fact, it just locks users in more to that platform. Also, it means you have to choose which site to write apps for, unless they already allow Open Social apps (Orkut does, but Orkut isn't that big a player).

Fair play to Yahoo! though since I think that this will be a great step for them. Still, I wonder what their next strategy is. First it was a web directory, then a search engine, then a web portal and now a social network. They seem to transform into whatever the current flavour of the month is. What's next? Anything but a Microsoft subsidiary!

P.S. And no, I'm not a Google basher, I just like commenting on where I see they're doing it wrong. You can't be mad at a company that is putting $6.5 million into open source this year. And no, I'm not a Yahoo! lover either, I left them a long time ago due to all the adverts in their terribly implemented Yahoo! Mail. Just so you know I play fair, GMail is awesome and Flickr is the best there is (except they now allow horrible videos - what a complete waste)!

Labels: google, social-network, open-social, planet-geek, planet-catalyst, cloud-computing, yahoo

Inserted: 2008-04-25 12:18 (3 years, 9 months ago)

Client Editing of HTML should be Banned

It is well known that the large majority of HTML pages out there are invalid HTML, use custom tags and have layout information mixed in with semantic information.

The real surprise though is that a lot of these pages have been crafted by professional designers and developers over the years. People who are actually being paid to create these things. Properly you might think. But no, not even close.

So if the people who are being paid to create the HTML can't create it correctly, what hope does that leave someone who isn't trained in it at all?

The answer is (of course) none. No hope whatsoever. Even assuming they have had minimal training in HTML, it just isn't enough.

But why is that whenever we have a new client and they say "And we want a WYSIWYG to be able to edit everything" we say without hesitation "Of course". In my view, the customer is not always right and it is wrong to give them that option.

I'm of the opinion that WYSIWYG editors are bad for clients to use especially because most editors generate HTML. The client moves on from wanting some minor formatting buttons and quickly on to "we want to edit all the HTML in the world directly".

This just causes problems. Not just immediate ones but long term ones too.

Firstly the client starts creating weird and wonderful effects (as shown today on Contented). Soon enough they start creating invalid, inconsistent and badly formatted HTML. It gets even worse when <font>, color="#bbb" and unclosed tags start appearing. Don't even get me started about embedding JavaScript in tags to popup a video window - it's not nice and it ain't pretty.

(Aside: I tried to explain unobtrusive JavaScript to a client once but I'm not sure I was explaining it on the right level even if there is such a level as a correct one.)

Even ignoring the actual edited HTML it also leaves the rest of the nicely groomed and well maintained site at the whim of someone who knows nothing about the web let alone the subtleties of HTML.

This practice is incorrect and this function should never be given to the client. It's in their best interests not to be able edit HTML and this practice should be changed.

Instead, clients should be given one of two options:

1) a a semantic markup language they can use which is relevant to their site. Anything to do with styles, layout and formatting is no concern of theirs. Instead they should know what a heading is, a paragraph, some emphasised text and what a link looks like. If you want to give them higher abstractions, how about an external link or a popup one. What about an embedded picture from a local store or from Flickr, or even a YouTube video. This is easy from your point of view and simpler from theirs (no more HTML cheat sheets for the editors).

2) or give them proper editing screens in the CMS which lets them edit only the content of the site. Whenever something should look different it should be because it is different not because someone says it should look different. The Content Management System should be for editing content and content only. It is not a Content, layout, formatting and stylesheet Management System. (And no, I don't believe they should be able to move blocks around in the CMS either but that's a different story.)

Let me give you an example of what happens now and what really should be happening. Let's say you have blog entries on the site each of which has a headline but depending on what type of blog entry it is (technical, opinion, guest), the sub-heading should look slightly different.

What happens now is the following. The editor says to himself:

"Hmm, this blog entry is an opinion piece so the subheading should be blue and bold, but this one is a newsflash, so the subheading should be red and flashing!"

This is bad. Bad, bad, bad.

To fix this you need to do some research on how many different types of blog entry there are. It's not so hard really.

You just quiz the client on how many blog entry types there are and arrange for the appropriate tickboxes, drop-downs or select boxes to appear in the CMS. This way the styles for every blog entry type are correct, consistent and don't look terrible. Furthermore, they are semantically defined rather than syntactically defined. (You have heard of the semantic web, haven't you?)

And finally, if those advantages weren't enough this last one really drums it home. When the site's design is changed in 2 or 3 years time and the blog entries have to look consistent with the new design, showing the sub-headings with the new correct styling is trivial.

Try doing that when your subheading has invalid, unknown and inconsistent HTML in it. Furthermore, if you think sub-headings are a problem, just wait until you get onto the blog entry itself, spotted and pitmarked with nasty HTML all over the place.

All I can say is, good luck to you or the poor person who has taken over on the project. That's going to one beast to untangle.

Labels: web, html, cms, planet-geek, planet-catalyst, content

Inserted: 2008-04-15 22:08 (3 years, 10 months ago)

Why Google App Engine Locks You in Even More

The original title for this blog entry was "What's the difference between Google and Facebook?" Answer: Google is even worse than Facebook.

Let me explain what I mean by that and then I'll tell you why I changed it.

Google have finally entered the cloud-computing world for us mere developer mortals, a whole two years after Amazon gave us S3, EC2 and other web services. If you're a regular reader of this blog, you'd think I'd be excited about this piece of news.

But I'm not and here's why.

Cloud computing, massively parrallel systems, distributed data storage and other things like that really interest me. What I want are the basic tools such that I can mold them, manipulate them and add to them to fit my needs. Basically, I want to use them however I see fit and I want to be able to do what ever I like.

But Google App Engine doesn't let you do that. It has some nice interfaces, yes, but in reality all you get are some abstractions built atop of Google's infrastructure. A lot of people are chuffed that they can now play with GFS and BigTable but in reality, how much of that do you actually see. Not much. It's just an API to you and me. An API written in Python which can only be run on Google's infrastructure.

So let me just recap that for you. To run your app on Google's infrastructure, you must use their code, their interface, their abstractions, their (single so far) language and their environment.

All in all it doesn't give you a lot of freedom. In fact, I don't see much freedom there at all. It's no argument that you'll be able to create great applications using all this infrastructure (think Gmail and Google Reader) but it's not that that I'm arguing against. You will have some slight leeway but really, why would you do it yourself when Google's way is just so much easier?

So far, I have told you that you have to do everything on their terms. Their language, their hardware etc but let me tell you something that concerns me even more than that.

It's also the fact that you'll be using their users. An API of their own design plugging in to their Accounts. You'd be able to do it yourself, sign up and manage your own users but in an environment like that, why would you?

This all reminds me of Google Gadgets - except you can write it in Python instead of JavaScript. You also get a little bit more functionality too but you're still using their infrastructure and their users.

I don't know about you but this seems like a bad idea to me. And now we're back to what this post was originally titled.

"What's the difference between Google and Facebook?"

Answer: Google is even worse than Facebook.

Let me explain.

Facebook has created a massive walled-garden of users, with high walls and plenty of pleasures inside to get those users in and not let them out. Hotel Calinfornia if you will except you can't even check-out let alone leave.

Keep the users inside, don't let them look at the rest of the web (in some cases, pretend it doesn't even exist) and just lock them in as much as you can. Facebook has turned into a horribly closed and restrictive site. That is why I quit earlier this year.

Over the years, Google have been doing the same except the walls have been growing a little more slowly. One new application at a time. The walls have been growing taller, lock-in has been getting bigger and finally we'll realise that we're inside a huge dome built on Google's servers and no-one can find the windows. Then all we can do is watch everyone suffer under the immense pressure of using all of these apps and not ever getting away from Google hosted stuff.

Just like the applications in Facebook. Yes, techically they can be hosted wherever, but the users are still locked in.

This is all made even worse by the fact that Google also made something that would stop Facebook having the monopoly on external applications for users - namely in the shape of OpenSocial.

I have written before why I don't like Open Social. Before they told us what it was about, I was really looking forward to having authorised access to user data. That wasn't what OpenSocial turned out to be - which is sad - and all we got was the ability to put applications into other sites. Again, Google App Engine is like this but worse - the only site (in regards to users) all of these new apps will run in, is Google's.

So more apps, more users, more developers to write more apps which attract more users and hence ... you see my point. And that's exactly their point too (stated in the introduction).

Which is funny, because that really reminds me of something else too. Vendor lock-in - but this time replace software and file-formats with users and applications. That's about where Google is at the moment and it's only getting worse.

Luckily some other people are also concerned about this. I can only hope that what Francois said to me today comes true. That Google can get it wrong at the start and it can get better as time goes on. I hope he's right and I truly hope that Google's "Do No Evil" policy wins through in the end even if that is debatable sometimes.

What Google can do to alleviate some of this is allow more open access for users and their accounts. It's a two step process with a third note:

  1. become an OpenID provider and make each Google Accounts an OpenID
  2. become a real OpenID consumer and allow sign-ups and sign-ins to Google Accounts with OpenID
  3. and no, allowing OpenID comments on Blogger and providing OpenID on Blogger in Beta is not good enough

(Note: None of these things provide technical freedom from their AppEngine infrastructure but I consider the user data is more important than that.)

I'm not holding much hope out though and whatever they do, I'm sticking to my view that Google are getting too big and too strong. At some stage in the future, their dream and marketing of an Open Web will descent into an Open Web of mostly Google Accounts and Google hosted apps and that's when we'll suffer.

But what can we do?

The easiest thing is for me to do what I did with Facebook and just quit Google. But the thought of finding replacements for all those services I'm using is too much - Gmail, Reader, Calendar, Bookmarks, Analytics and a few others I use. Some of which can be easily replaced (Magnolia for Bookmarks) but others less so (Analytics?). Now I realise I'm locked in and it doesn't sit pretty.

There's not an easy solution for this and one I'm thinking very hard about at the moment.

Earlier this evening, I finished re-watching the original Star Wars trilogy so I will leave you with a quote which seems apt for this situation. From the enigmatic Han Solo:

"I've got a bad feeling about this."

And the final thought for this post; let's just hope that Google never turn to the dark side.

Labels: openid, google, walled-gardens, planet-geek, planet-catalyst, facebook, app-engine

Inserted: 2008-04-11 00:16 (3 years, 10 months ago)

The Internet Wins Again

Every so often, the originality of the internet just amazes me.

Recently, after I've watched a film on DVD, I have watched the trailers afterwards to see how they put them together. Each time I have been amazed at how many times they throw clips in there - completely out of context - to make the trailer more intense.

It always just seemed a little fake to me and also proves that you can't trust a trailer to guide you on how good or bad the final film will be.

As conclusive proof, I just stumbled across a competition run in 2005 - as the BBC News reports:

In 2005, a film-making body in New York issued a challenge to America's assistant film editors - take an existing movie trailer, and re-edit it in an entirely different genre.

I have just watched three trailers which were entered into the competition and they're all hilarious. See for yourself:

and my personal favourite:

As I said, proof you can't trust the trailer and further proof that the internet is a funny place.

Labels: tinternet, planet-geek, planet-catalyst, trailers, movies

Inserted: 2008-04-06 11:04 (3 years, 10 months ago)

Playing with EC2

Once upon a time, I worked on the European Space Agency's Beagle2 probe which was supposed to land on Mars. Well, this isn't a story about that. That would be too sad.

But I do remember telling my brother that for the first few weeks of the project, I was "playing" with the prototype board trying to get it to run some Ada 83 programs. He started laughing at me and I asked why.

"Playing with something that costs millions of pounds - doesn't sound right to me."

But I explained to him that the only way to learn something is to have a play with it. That's what kids do and sometimes as adults we forget that it's not just one way to learn but the best way to learn.

Here's an opportunity to find out what all the fuss is about over the Amazon Web Services, specifically EC2. I have written an article called Getting Started with EC2 so just go over there and have a play.

And the funny thing is, it's just so easy, it's almost childsplay.

Labels: project-awssum, planet-geek, ec2, planet-catalyst, amazon

Inserted: 2008-04-03 23:45 (3 years, 10 months ago)

Introducing Project AwsSum

There's a lot of excitement happening in 'cloud' computing at the moment and I'm not surprised. People are finally realising the usefulness of fully distributed and tolerant systems.

I have harped on about Amazon and their Web Services on a number of occassions (dating back to October 2006).

Back when I first wrote s3bak I downloaded and installed the example Perl code Amazon provided 'as is'. But that wasn't good enough, I wanted to know more about the protocol itself.

Of course, there's no better way of learning something than actually doing it so I started implementing a library to talk to SimpleDB. Then I figured out that SQS and EC2 were pretty similar beasts and it just so happens that S3 could also be done in a similar way.

After a few weeks of hacking, I now have a reasonably complete set of simple modules which can talk to all of SQS, EC2, S3 and SimpleDB.

Project AwsSum comes with some straightforward command line scripts which allow you to execute commands against the services and see what's actually being queried under the hood.

However, the most interesting thing I've been working on are the new types of programs I would never have written if these services didn't exist.

As an example. I did 2 lightning Perl Mongers talks in March. The first was Talking to Amazon Web Services and the second Playing with Amazon Web Services (as always in lightning talks, they weren't long enough or in-depth enough). But I did write a program to demonstrate the power.

Using both SQS and S3, I wrote 5 simple programs to interact using only the queue as the interface between them (and only 3 of these were necessary). It's a simple demonstration but it shows the power gained by writing loosly coupled code. Quickly running through them:

  1. put-image.pl - just uploads images to S3 and places the filename in the queue
  2. process-images.pl - polls the queue for messages and if it finds one, downloads the image and creates thumbnails of different sizes. It then re-uploads these new images into S3.
  3. generate-gallery.pl - generates and index HTML file using a list of what's in S3

(report-queue-progress.pl and report-bucket-contents.pl just report on the status of the queue and the files being stored.)

So in about 350 lines of code (130 being the processor) I have a simple gallery which uses no webserver, is fully distributed, is resilient to hardware failures and was written in less than a couple of hours. It also comes with an Amazon SLA which is higher than you could do yourself. And did I tell you the price - all this for around 3 or 4 US cents per month. Not bad eh?

If you want to have a play with Project AwsSum you can git clone at git://github.com/andychilton/awssum.git. I'd love to hear feedback - and remember, it's a work in progress :-)

P.S. I also have a tutorial giving examples of how to get started with EC2 using some of the newer features which have only just been released! Seeing as Geoff is giving a talk to us at Pizza Thursday tomorrow, I don't want to give the game away (just for you vex).

Update: so Pizza Thursday is *NEXT* week - I got it wrong. I apologise. Pizza Rage ensues on #catalyst.

Labels: project-awssum, planet-geek, planet-catalyst, amazon

Inserted: 2008-04-02 20:12 (3 years, 10 months ago)

Everywhere I look, I find Shiny

Brenda is definately getting known these days. Involved in lots of groups, starting many of them and now this.

Wellington Geek Girl Dinners obviously went well the other week but it seems to have already made news elsewhere - like on the Google Open Source blog (stumbled across in my feedreader).

Well done Brenda!

Labels: brenda, planet-geek, geek-girl-dinners, planet-catalyst, catalyst

Inserted: 2008-03-22 11:43 (3 years, 11 months ago)

Picture within a Picture

There's something quite nice about this photo, for more than one reason.

Firstly, let me tell you what this photo is all about.

It was recently Flickr's 4th birthday and they were having a party. To celebrate, they printed out 3,800 photos and put them all up on display. So I added one of mine to the Flickr turns 4 pool so they could use it. Here's the one I added.


Photo by andychilton

After the event, I saw a Flickr blog item which showed a number of the boards upon which they stuck all the photos. After a bit of searching, I eventually found a board with my photo on it.

But even better, in the most recent Flickr blog entry, there was another photo which also showed mine (bottom left). On the board, mine is the one 3rd from the left and 5th from the bottom.

It's not often you get your photo onto the Flickr blog even if it is a picture within a picture within a page.

Labels: photo, planet-catalyst, flickr

Inserted: 2008-03-20 15:54 (3 years, 11 months ago)

Adventures with Erlang

I started learning Erlang today and already I'm liking it.

For a couple of months I have said that I will learn Erlang and finally I've started.

Firstly, I'll tell you why I started today (apart from the bad weather) and why I want to learn Erlang, and secondly I'll tell you my thoughts on the language so far.

Why today and why Erlang?

The reason I started today is because of a culmination of a number of things. Recently I have been playing with all the AWS components S3, EC2, SimpleDB and SQS. Playing with them in Perl has been a good experience and now I know what's required to make it work - by this, I'm not talking about just querying them and seeing the results, I'm talking about a big project with the ability to scale out once demand gets high.

So my plan is to get a project up and running on EC2, using all of S3, SimpleDB and SQS and to make sure everything is massively parrallel.

Erlang fits into all this because it's a good idea to try and do it correctly from the start. It almost seems weird to think of using Perl to run something like this. Also, I really want to learn something new and out of all the languages that have tried to get my attention in the past number of years, none have gripped me and certainly none as much or as quickly as Erlang has.

I notice that Erlang already has a few web servers which can be used as well as lots of other freely available libraries. Amazon also uses Erlang behind the scenes for SimpleDB itself - no coincidence I'm sure. So overall, a culmination of wanting to do a project, use a massively scaleable architecture and learn a new language have all come together at exactly the same time.

What I think of Erlang so far

So far, I'm really enjoying it. I have learnt a shedload already and I can feel a lot of information sinking into the old grey matter. At first, I looked at some of the syntax and just shook my head but as always, once you start, it just begins to make sense.

In reality, I've done a little bit of Lisp and Scheme in the dim and distant past and so far I haven't actually seen that much which is new to me (though I'm sure that's to come). Obviously Erlang borrowed heavily from Lisp though which helps me understand some of the weirder parts of the language. All the power that recursion, passing functions or returning functions from functions isn't phasing me since it's made sense to me for a while. Also, being able to build the language up is another helpful thing you get if you really need it.

(I've always said that Lisp is the next big language but not in it's current form. All the other languages are just re-implementing certain parts of Lisp as they see fit - 40 years late. Erlang has already done that AND put it inside a concurrent environment too.)

The fact that variables don't change kinda struck me as weird but again once you start making functions and calling them, you almost forget that you can't re-assign to variables any more - it's just not something you really want to do anyway (much like you don't use (let ...) much in Lisp). It's all about the functions!

One thing that is new to me is the whole message passing thing. I also cottoned onto the fact that objects and variables are replaced with processes and that's where all the magic is.

Already I have created libraries, functions with different arity, tail-recursive functions, played with tuples, retrieved a web-page (learning about receive) and even had my own chat room and simulated a number of users all talking to each other.

There seems to be a lot of really clever people doing Erlang at the moment and it's definitely a great time for it to flourish. Having huge resources like at Amazon AWS and multi-core processors getting constantly bigger, now is the time for a language to step up to the concurrency plate.

So all in all a very productive day. I think I have the basics of the language sorted - in reality there's not much there - but now I'll need to sit down and fully work through more of the other concepts it introduces.

It certainly needs a different thinking cap to anything else I've used and that's going to be both an interesting challenge and a bit of an adventure.

Labels: planet-geek, planet-catalyst, cop, aws, erlang

Inserted: 2008-03-03 00:12 (3 years, 11 months ago)

Upgraded Kiwiwriters

After a few months of intense development and procrastination (yes, you can have both) I've finally upgraded KiwiWriters.

It's been a long haul. The last time KiwiWriters was updated was way before a number of changes that have been made to Zaapt. I won't go through all the details, but here's a rundown of the technologies that have changed under the hood.

  • changed OS from Debian Sarge to Etch
  • upgraded from Apache 1.3 to Apache 2
  • Postgres 7.4 to 8.1
  • an earlier Zaapt version to Zaapt 0.1 rc1

I know there are a few things I've missed but I plan on fixing those up over the weekend. It was about time I just did it rather than wait around anymore. Also, it's not a mission critical site (and it's volunteer work) so it gets as much time as it gets because no-one's paying for it :-)

Anyway, I'm glad to have finally done it because this means KiwiWriters is now using Zaapt v0.1 and now I can start of development for v0.2.

Excellent news :-)

Labels: zaapt, kiwiwriters, planet-geek, planet-catalyst

Inserted: 2008-02-28 23:57 (3 years, 11 months ago)

Your Environment

You are a product of your enviroment therefore your productivity is also affected by your environment.

Following on from yesterday's post regarding productivity, I'd like to now address the issue of how you can overcome these interruptions and hence increase your productivity (note that this article is aimed at people who work in a traditional office).

It was fairly obvious from the previous post that by removing as many distractions as you can from your developers you can get more out of them. But surely it's impossible to deal with them all isn't it? That's right, you can't. You have to deal with each one separately. The good thing is though like most sums, if you add one to the running total you come out at the same answer as you would if you took all of them together. In fact, you probably come out one better.

There are various forms of interruptions but I'm going to categorise them into four types: personal, technical, client and electronic.

Personal Interruptions

I consider these interruptions to be normal phone calls or when co-workers wander up to your desk in search of help. There is not much you can do to stop this form of communication but in reality most of these interruptions are fairly brief. They can usually be kept to one sitting such that when the questioner walks away from your desk, they have a fully formed answer which will keep them going for a long time.

Therefore, out of the 4 types of interruptions, these are the least invasive. You can stop them a little bit but generally these should be fine (for example, a previous team-leader of mine used to put on large construction worker's earmuffs to denote that she was not to be interrupted). So if you manage to conduct most of your interruptions either by phone or in person, then you'll be well on your way to being a highly productive developer.

Technical Interruptions

What I mean by these are the messages that are generated automatically by the systems you're managing. The messages themselves may arrive by SMS, IM, email or a myriad of other communication mediums. These types of interruptions are necessary but minimising how many you get is very important. There is no point interrupting someone for something that they can completely ignore. If the recipient can ignore a message then it means that the message itself contained zero information.

The best way to deal with these interruptions however is to have one person nominated on active duty. It is they who has to deal with any and all of these messages. During the course of processing one, they may have to call in the help from another member of the team but mostly the team's documented procedures should be able to get them out of trouble.

Unfortunately though these automatic messages are usually sent to a predetermined mailing list with numerous recipients but things like email filters can help in this respect.

So the best way to deal with these types of messages is to not receive them at all (unless you're the one dealing with them).

Client Interruptions

Client interuptions are a necessary evil. You can't create, sell and profit from something if you don't have clients. Lots of these interruptions are caused by email but there is a simple solution. Phone them up. If you're lucky enough to have your client in the same building as you, go and see them for a quick chat.

Clients also have a secret weapon up their sleeves though - they can create numerous different types of interruptions. Many times they want you to investigate something quirky, quote for something new, report on some data or do many other types of unusual request. There's nothing bad about any of this this but again, speaking to someone either on the phone or in person saves lots of time in the long run. If you need a written record of what was said, put it in your wiki or onto the relevant item in your issues list.

Sometimes the request virally spreads through to the rest of the development team such that more than one person is dealing with the whims of whatever the client sees as important today. This can (and should) be attacked at the front line. Each team should have just one interface person who is the first port of call for the client. This way the rest of the team is shielded from these interruptions and can get on with their own tasks (in that highly productive fashion we all aim for).

Every now and again, it might be a busy day to field all of the clients wishes such that one person can't handle everything. In this case the interface person will have to call in one of the busy developers for help. This isn't a problem since it is only a very occasional event. This is also true if the interface person can't actually fulfil the request. The bonus here though is that the interruption to the develper will be positively blazing since the interface person has already accrued as much information from the client as they need.

So all in all, these interruptions are necessary but there are ways of minimising this type from the team as a whole. The interface person deals with the main bulk of it and this job is rotated as necessary. That also means no-one gets tired of being constantly interrupted and not getting anything else done.

Electronic Interruptions

This category is the most invasive of all the interruptions and consists of email and instant messaging. The reason these things are so invasive is because of the long tail they create as soon as that initial message is sent.

These days, both of these forms of communication have become excuses for not having to actually speak to people. Instead of picking up the phone or wandering over to someone's desk, people just flick off an email or message and seem to hope the problem is now on someone else's desk. This is pure laziness and in reality causes more work than is necessary. The recipient firstly has to read the original email, interpret it, understand it (sometimes an impossible task) and finally respond to the message - in most cases by writing an email in reply. This email then goes through that exact same process at the other end.

If the sender had decided to pick up the phone (let's assume they're not in the current vicinity otherwise it just makes this situation even worse) the whole conversation could have been over within minutes. As it is, email is assumed to be instant and the sender expects a reply instantly too. As you can probably guess though, there is nothing instant about email at all. Not only does the email conversation then become a time hoarder, it also means that the developer is interrupted on numerous occasions during the ensuing tennis match (think of those long threads that just never seem to end). This doesn't even take into account that email can be misinterpreted and can easily turn into a pulling-your-hair-out moment. Think about it, how often have you been as annoyed at someone on the phone as you have been at their emails. I'd hazard a guess at almost none.

In the past, the advice given was to just check your email a few times a day however that just doesn't work. The problem is that we live in an instant society and therefore people expect answers within 10 minutes tops. How many times has someone come up to your desk and said "Did you read my email?" The email they talk about was sent less than a few minutes ago. Surely it would have been easier to just walk up in the first place. It certainly makes for a faster conversational turnaround.

Instant messaging is similar in the amount of time it takes to process. Even worse, there are ever smaller amounts of information in an instant message than there is with email. This also hoards time waiting for each response, let alone the fact that the original question didn't contain enough information for people to actually answer it correctly. Most of the time an answer is given and the original questioner then posts further information about why that answer given isn't even relevant! Or they suddenly found the answer by searching the internet (which they could have done in the first place and actually saved time for themselves let alone that of other people).

IM can also cause even more time wastage too. Many times I have seen the original questioner just keep asking further and further questions, simple questions with simple answers. Yet almost 40 minutes down the line the original question still hasn't been answered and mostly a quick chat with one or two people could have sorted the whole thing out in minutes.

But wait, there is one final sting in the tail for instant messaging and this one is a poisonous one. Not only has the original questioner distracted (usually) more than one person for 40 minutes, they have also distracted the numerous other people who also read that same channel. Currently in work, we may have something over 50 people on our internal IRC server. That's a lot of time spent reading useless questions which could have been answered in seconds in person.

There is a simple solution to both email and instant messaging distractions. Figure out who the best person to ask is and either go over to their desk or phone them up. If they're not the best person to ask they'd probably be able to point you to someone more capable.

But what happens if you're the recipient - easy peasy, phone the questioner up or simply go over to their desk.

Conclusion

Unfortunately, this post has become a lot longer than I originally anticipated. It has touched on a number of things but hopefully in some detail. Ultimately, removing most interruptions is best, dealing with certain interactions in a particular way helps stop others being distracted and finally, converting the invasive interruptions into less invasive ones helps enormously.

All in all, minimising interruptions means more development time, more time to be in the zone and much more productivity from your developers. Probably of an order of magnitude.

Labels: programming, planet-geek, planet-catalyst, productivity

Inserted: 2008-02-26 23:37 (3 years, 11 months ago)

Context Switching and Developer Productivity

We all know that when a developer gets interrupted from whatever he's doing, it wipes out a large amount of time, concentration levels and ultimately productivity.

Even ignoring what some really clever people say, sometimes you just know you're not as productive as you should be. Why? Because by the end of the day you think you yourself "Wow, I did nothing today". That's not always true, you've definitely done something but it just feels like you've done nothing.

So why is that whole lotta nothing feeling cropping up? Well let's look at three typical days at the office.

Every day starts out the same. You wake up, you go to work and just before you go through the main doors you think to yourself "Today, I'm going to finish that task off that has been bugging me for a while". It's the same every morning and the only variable is that task - it changes every so often.

Then you get three typical types of day.

The Highly Productive Day

A highly productive day is when you just hit the right notes the whole day. By hometime your forearms ache a little because you've been furiously writing tests, completing code, checking stuff in and deploying to the staging environment. You've been in your own little world, your concentration levels were amazing and everything just worked. Awesome. Time for a beer.

The Highly Frustrating Day

A highly frustrating day is when you've been busy all day, you've managed to get a lot done but there were a few things which just didn't work out. For whatever reason, that library you wanted to use didn't work as you thought, that weird bug in the browser killed too much time for your liking and finally you realised that what you had been developing was slightly wrong and you had to go back and change a few things. Days like this happen all the time, it's not your fault, you know it could have turned out differently but you have also learned a few things and tomorrow is going to be great. A little frustrating but you move on. Time for a beer.

The Highly Interruptive Day

Then there is the highly interruptive day. That task you have been working on didn't get more than 12.5 minutes attention per sitting. Something went wrong with the system which you had to fix up. The phone rang on numerous occasions. You had to quote for new work. People kept on coming up to ask for help. Finally to top it all off, that 12.5 minutes you did get to spend on your task didn't really work because your brain was so frazzled you literally figured out where your cursor was in the editor and then wondered what the hell you were editing in the first place anyway. You decide to go home instead of staying late because you just feel tired. Now it's definitely time for a beer.

So the main question about each of these three days is, which can you improve on? Obviously the Highly Productive Day was a good one. There's always room for improvement but hell, you felt awesome today. Things just worked out and you had loads of time to spend on that task. Also, during the Highly Frustrating Day you had lots of time to spend on the task but in all honesty these things just happen and you move on. Most days are somewhere between these two extremes.

Which leaves us with the Highly Interruptive Day. You fixed a couple of things, checked in some code but in all honesty you realise that that task you've had at the top of your list for weeks is still in exactly the same position it was in this morning. Granted, you moved a few lines of code around, you added a test and you even fixed some stuff but mostly you're exactly where you were before. The interuptions just kept on coming. Before you had finished dealing with one of them, the next interuption would turn up. Context switching when interupted takes lots of time anyway but context switching between interuptions - well, that makes for one unhappy programmer. Nothing seems to get done.

And after all that, you have no idea whether today should have been a Highly Productive or a Highly Frustrating day. You've done so little work you couldn't even gauge how it went. You can justify things by saying "Well, I'm basically a consultant now anyways" but really, you're expected to be a programmer, producing excellent code in what little time you actually have to develop.

So there lies the problem with the Highly Interruptive Days. In both of the previous cases you managed to do things, learn from things and improve things. But in this final case, you managed nothing.

Something funny then happens. As you're going home, you start switching off from work and start thinking about that other project you've got on the go. That one you have at home where you've been playing with new technologies, creating free software or just learning for the sake of it. Just to prove something to yourself, you realise that in the two hours you've spent hacking away with just an ambient bit of music in the background, you've produced more high quality code that you will in the rest of the week. No-one phoned up, no-one sent you email, or IM messages or came knocking on the door. You spent a solid two hours developing code, you were in the zone and it's actually still before midnight.

It's almost depressing to know that it still can be done if it wasn't for all those other inputs switching you out of context and just plainly getting in the way. And the worst thing is, you know tomorrow is going to be exactly the same.

Labels: programming, planet-geek, planet-catalyst, productivity

Inserted: 2008-02-26 00:53 (3 years, 11 months ago)

Amazon Web Services with Mike Culver

Tonight, we got a good opportunity to hear and see what Mike Culver (Web Services Evangelist) had to say about Amazon Web Services.

It was a good talk. A bit fast to go through everything but that's a reflection of how much Amazon have to offer. Lucky for me, I knew most of it but I did learn a few things along the way. Especially from the demo of using EC2. I wish he could have spoken more about SimpleDB though.

As it turns out, my plan to ask if I can be added to the Beta program for SimpleDB worked and I have just sent an email off asking if I can join it. So yeah, that makes me very happy.

The good thing is, as you know, I've been playing with S3 and s3bak a lot recently, but I've also been making a program to play with EC2 as well. It's actually not that big but already there is some good functionality. My plan to make a small command line interface to both SimpleDB and SQS is also in the pipeline.

It certainly is exciting to be playing with these technologies and while there are some criticisms against them, I'd say to see them as they are and watch them advance over time. The whole point of the whole setup is to be easy to use and it's up to us application developers to use them in new and enlightened ways, adding value along the way.

However, I do see a different problem though - oh so many ideas and oh so little time.

2008-02-20 10:31 - Update: I've just been added to SimpleDB Beta. Wow, they work fast :-)

2008-02-20 19:32 - Update: Don Christie (president of NZOSS) has linked to this article from his Pass the Source blog - When Amazon Comes to Town. Out of the 4 quotes of feedback, mine was the top one and one which I will try and expand into a bigger article later.

Labels: ec2, simpledb, aws, mike-culver, sqs, planet-geek, planet-catalyst, s3, s3bak, amazon

Inserted: 2008-02-19 22:07 (4 years ago)

Other things I've been up to

I haven't posted in a while, but thought I'd let you know a couple of other things I've been up to.

It seems to have been pretty busy lately with 'just life', heading places, seeing people, enjoying the sun, but I really should get back to doing a bit more development stuff.

As a bit of an experiment, I have also been playing around with Flickr a lot more (please M$, don't buy Yahoo!, even if they are only good for Flickr). I have even set up a couple of groups too.

The first one is something that Donovan and I have been chatting about recently and that's having examples of NZ Native Trees so people can learn a bit more about them (okay, so I can learn a bit more). There is also a blog for NZ Native Trees which will showcase good example photos now and in future it will show tree, trunk, leaf, flower and seed examples of each native. It's a bit task (there are so few on Flickr) that we're going to have to take a lot of photos ourselves. If you can help, please add your photos, with tags, to the group.

horoeka aka lancewood
Photo 'horoeka aka lancewood' by Brenda Anderson

The second group I started is one called Amazing Structures. I've always been fascinated with what humans can engineer on such a large scale. Already there are lots of photos (and I've already learnt my lesson to put a limit on what people can post) so hopefully that will kinda snowball. Again, I have a blog showcasing some of the best photos.

My favourite so far is this one:

HSB Turning Torso
Photo 'HSB Turning Torso' by olafuringi20

Wikipedia: Turning Torso

Have fun!

Labels: photos, amazing-structures, planet-catalyst, nz-native-trees, flickr

Inserted: 2008-02-14 19:43 (4 years ago)

Working for Catalyst in Wellington

Yesterday I was asked to write a short testimonial describing working for Catalyst and living in Wellington from the point of view of someone coming here from abroad.

A number of \l{Catalyst|http://www.catalyst.net.nz/} employees are off to \l{LCA|http://linux.conf.au/} next week and my testimonial will be placed on the back of a leaflet to be given out to prospective employees during the \l{Open Day|http://linux.conf.au/programme/open-day}.

What I'm putting here is the original version (slightly edited) though I think it will be shortened somewhat due to a lack of space on the leaflet.

- --

Testimonial

Years ago my brother told me that he couldn't see himself living anywhere other than Coventry. Coming from Liverpool and living in Manchester at the time made me wonder how completely crazy my older brother was. Of course, at that time in my life I knew I still had the world to see.

Since then I have lived in London, Frankfurt, Perth and Wellington for varying times between six months and five years. You could say that I have now seen the world. By the way, the five year stint is Wellington and still ongoing (and no, I have no plans to leave - yet). There are many reasons I could use to explain why I'm still here but for the moment I will offer just two. It's quite simple - work and play.

So let's get the mundane one out of the way first - work. Ahah, see I fooled you. Work isn't actually the mundane one of the two (neither of them are) but let's discuss work anyway. It seems that work is apparently something which is a daily grind, another day, another dollar and a myriad of other boring phrases used to describe our nine-to-five work habit. I'd like someone to show me this 'work' they speak of which everyone else seems to consider that nasty time-consumer we force ourselves to do five days out of seven in return for monetary compensation.

My version of 'work' seems to be a lot different than that most other people seem to always moan about. Of course it's a lot of hard work (and I won't be naive enough to tell you otherwise) but there are certain advantages of working for Catalyst. The knowledge and talent of the people inside Catalyst is higher than any of my previous employers and always a great source of new ideas and learning. The open source slant within the company from the outset to the newest employees is self-evident. Talking to and working with people who contribute every day to Perl, Linux, Debian, MythTV, Moodle, Drupal and various other open source projects is a big eye-opener and I feel privileged to work with such bright and open-minded friends.

And that's the other thing you'll get at Catalyst - friends, not just colleagues.

Which leads us on to play. Fridays usually kick the weekend off with drinks and food at work, which always includes homemade bread from the staff disguised as bakers. Wellington being such a vibrant and small city means wherever you go, you're sure to bump into people you know. This gives the place a nice family atmosphere though of course there are also plenty of things to do for younger couples or singletons.

Having lived in a number of cities throughout my life, I have finally settled. It seems that one of my favourite phrases at the moment is "I love Wellington, me" and whilst that's my accent talking, you can see quite clearly what it means.

There's always something around the corner, something new, something different and something challenging, in both work and play. I honestly can't see myself living anywhere else so why not come and see what you're missing out on.

Andrew Chilton - Senior Developer

Andrew has lived in 5 different countries, worked for organisations of under 50 employees and over 13,000 employees, worked in the film industry, the space industry, has an Open Source project he is proud of and has eaten well over 79 bowls of Coco-Pops in the last three years (okay, that last one isn't quite true).

Labels: open-source, planet-geek, planet-catalyst, wellington, oss, catalyst

Inserted: 2008-01-24 22:51 (4 years ago)

Software Driven by Imagination

For years, it has been said that Free and Open Source Software is created when someone has an itch. That may be true, but I'd like to present a view after that initial itch has been scratched.

I'll start this entry as a question and answer session.

Question: How many times have you created a piece of software - one which scratched that initial itch - but once the initial problem had been solved you stopped working on it?

Answer: Loads. Not one or two, or even five or six. I'd say upwards of 10, maybe even 15 or 20. I even have old repositories to prove it.

Question: Why is it that once the problem is solved, work is almost immediately dropped?

Answer: Mainly it's because the challenge of fixing whatever the itch was then goes away and the itch dies down. Also because the interesting thing you wanted to solve is no longer interesting. It's sad to say that because of this no-one ever sees the beautiful code you stayed up for three or four nights crafting.

Question: So how does a project move from the initial itch stage into being a full blown development project.

Answer: Imagination.

And there you have it, it's that simple. Imagination is the driving force behind any large project. Without it, the project stalls and nothing else gets done. As proof, let me give you a few examples:

  • imagine if all the computers in the world were able to talk to each other
  • imagine if everyone in the world could get free access to information, including reference material and education
  • imagine if anyone could run the software they choose to, for free, and be able to exchange both it's source and any documents in any way they please

Hence, from the above musings, the internet, the World Wide Web, Wikipedia, Linux and ODF all came into being. Though they might have had different thinking at the time, I suspect each of these projects stemmed from someone's first itch but only carried on because of their imagination.

Imagination is important because otherwise projects would just stop. If the itch has been scratched, even if the software is also released as Open Source, no new development will happen since there is nothing taking it anywhere. There is nowhere left to take it - it has fulfilled its destiny (think grep).

The only thing that can take that project forward is imagination. You need to be able to figure out what the next step is, where you want to go and where you want to be. Even if the original need has been fulfilled, imagination means there is always something to do next.

I was thinking about all of this on the bus on the way home from work. I'd just had a conversation in which the other person stated that various government organisations had listed Drupal and Plone as their preferred CMSs. I had been pimping Zaapt as something that is ready to be used in a production site. Granted, those other CMSs have a few more features than Zaapt - and I can point to a few reasons why - but it just seemed that because these other two were the preferred CMSs that Zaapt wouldn't get a look-in. Or indeed any other CMS for that matter.

So that's why I'm glad that I have imagination. There have been many times recently that I have imagined when Zaapt will be used on big projects, hell even government ones. And the reason is because I always wonder what I can implement on Zaapt next (e.g. the list of features needed for v0.2 even though v0.1 is only just feature complete).

At first, you'd wonder if that closed thinking would put me off. Certainly, I'm disappointed but it doesn't worry me, besides, I like a challenge. Zaapt has already scratched my initial itch and fulfils all of the initial problems I set out to solve - in fact, the itch disappeared a long time ago.

But yet somehow Zaapt is now one of only a handful of projects that I have kept developing consistently over the years. The main reason for this is because I have an imagination. There are so many places to go with it, things to do, places to see, all fulfilled by the usual constraints - time and resources - but gladly not constrained by imagination.

And I imagine that Zaapt will eventually be the biggest CMS built with Perl[1], which was always one of my original intentions :-)

[1] Yes, I know that is a tall order and maybe that's not just imagination but a dream - still, we need that too.

Labels: perl, zaapt, drupal, cms, planet-geek, planet-catalyst, plone

Inserted: 2008-01-11 20:25 (4 years, 1 month ago)

S3 Revival

After lately talking to different people about the Amazon Web Services, I have become interested in them again.

And after ages and ages wanting a place 'in the cloud' to store my files, I decided that I'm not going to wait for Google's GDrive, but instead am going to use Amazon's S3.

So, all those old photos I have dotted around are currently being uploaded. I'm using a program I wrote, s3bak, and whilst I haven't touched it much in a year, it's still working fine. It's even got some nice features. Think I'll be hacking a little on that in the next week or so.

Anyway, it'll be more important to me tomorrow when I finally get myself a new digital camera. It's not top of the range but the price/functionality is exactly what I wanted. The Canon A570 IS isn't too expensive but has some of those things I like, such as aperture and shutter priority.

I also think things like S3 are underused in some commercial senses. There's certainly one thing I'd love to use it for in work and it would save buying a lot of hardware and save a lot of hassle.

As I said to someone recently, "because it's on the same system Amazon use, if something goes wrong, they would stand to lose a lot more money than you would" - hence, the reliability of the thing is phenomenal. If it's good enough for Amazon, then it's good enough for my backups.

I also intend to use it for various web projects I have brewing too. Not to mention EC2 and the other Amazon Services.

Labels: photos, planet-geek, ec2, planet-catalyst, s3bak, s3, amazon

Inserted: 2008-01-06 23:36 (4 years, 1 month ago)

New Year Novella Challenge

Over on KiwiWriters, we're doing a new type of challenge this new year. Write a novella during January - it's that simple.

Many people are scared off from either NaNoWriMo or SoCNoC because it sounds like a daunting task. Fifty thousand words in a month really is a good challenge but here is an alternative for you.

Much like there are marathons and half-marathons, KiwiWriters now presents the half marathon of writing challenges. The New Year Novella Challenge (along with a forum) is a great way to get started in doing stories that are just that bit longer, and you never know, it might give you a taster for one of the bigger challenges later in the year.

Anyway, here's my participant's icon:

As always, I finish this post with, Join Us.

Labels: new-year-novella, nanowrimo, kiwiwriters, planet-geek, socnoc, planet-catalyst

Inserted: 2008-01-02 01:15 (4 years, 1 month ago)

Zaapt is One Year Old

A few days ago, Zaapt became one year old. But the best is yet to come.

It's been a great week for Zaapt this week. Not only has it passed it's first birthday (born on first check-in) it's also had a lot of development done on it. The models were improved in Sep/Oct and this month it's been the controller side of things. The views didn't need much change but maybe a minor tweak here or there.

I mentioned the other week that I am now using the issue list on my Google Code Project Homepage. At this very moment I can tell you that there are six issues I have to do before I release v0.1 - which will be an amazing achievement. It will also signify the first release which I will be happy for other people to start using - before now it was still in a little flux.

As 2007 finishes up, I look back on the number of hours I've put into Zaapt and see that it's all been worthwhile. I have spent a hell of a lot of hours on it but to now have a CMS written in Perl and using PostgeSQL as it's main store is just great. It was always an ambition of mine to have that combination and Release v0.1 will realise that (note if you Google for cms, perl and postgres, Zaapt is in the top 10 hits and has been since March).

As Nigel a friend of mine said to me recently, "We just shake you and a site falls out" - which just proves how easy it is to create a Zaapt site.

So 2008 will be a belter of a year for Zaapt. I'm aiming to get it into Debian with the help of Francois Marier so after the v0.1 release, I'll sit down with him and figure out what I should do before we put it in - he doesn't know this yet :-)

Finally, just to give you a glimpse of how interesting Zaapt will be next year, here's a quote from one of my current open issues:

This issue also implements an idea I've had for a while in which models can also be mash-ups of other models. In this case, one model is referencing another. In another case, who's to say that a model might not just link together a blog.entry, a gallery.picture and a map.location.

Wouldn't that be oarsum - "CMS mash-ups".

Labels: perl, zaapt, cms, planet-geek, planet-catalyst, postgres

Inserted: 2007-12-24 17:32 (4 years, 1 month ago)

Tonight's Happenings

Gathering interest for next April and June.

It's amazing how many people are already expressing an interest for Script Frenzy next April (for which I hope to be ML) and for SoCNoC next June.

Tonight was Catalyst's Christmas function at Wellington Zoo and I had a number of people come up to me and express an interest in both of the above events. It's awesome to see that some of my enthusiasm for writing is rubbing off on other people. Not that it needed much rubbing off since most of them had thought about writing many years ago - it just so happens that this just gives them a little kick to give it another go.

And as a final note, many thanks to all the organisers of this year's Zoo Doo, it was the best of my four so far. Thanks Pauline, Vicky, the directors and everyone at Catalyst who made it happen. It was awesome.

Labels: socnoc, planet-catalyst, zoo-doo, script-frenzy

Inserted: 2007-12-13 01:15 (4 years, 2 months ago)

Zaapt has Issues

For ages I have ignored the issues tab for Zaapt inside the Google Code site but I decided that I had so many plans and ideas rolling around in my head, that it made sense to get them down.

So tonight I have just entered 18 issues which I need to work through over the next few months.

Currently there are two bugs, two tasks and the rest are enhancements.

So you can see that I think Zaapt works pretty well but there are still plenty more things to do.

Google Code Project Hosting and its issue list is also helping more than just listing the issues. It is also helping me figure out which issues I'm going to fix before I release v0.1 of Zaapt and which ones I can leave until v0.2 (milestone ordered list).

This also means that once those ones are done, I know it's time to release. A bit like TDD whereby you know your development is done when all your tests pass (we hope).

P.S. I just found a bug in the issue search so I'll report it to Google once I gether evidence.

P.P.S. The grid view is awesome. On that page I'm categorising the 'y' axis as Which version of the software the issue relates to and the 'x' axis as The release in which it will be fixed. That's pretty cool.

Labels: zaapt, planet-geek, google-code, planet-catalyst

Inserted: 2007-12-07 00:30 (4 years, 2 months ago)

Delegating Control to Others

For wellington.geek.nz, we now have other people administering certain calendars.

Well okay, we have one person administering their own calendar (read about it on the new blog) but it's a start and here's why.

Before now, I have usually given out blanket permissions to do something on a site (e.g. on KiwiWriters) but now it's much more refined. I'm creating specific permissions, with specific roles and correct assignment of such and therefore being much more detailed about who can do what.

This is all possible because I recently added RBAC to Zaapt and this is proof it works and works really well.

There are still lots of things to do on Zaapt but as each day passes, it gets more complete.

Labels: zaapt, planet-geek, planet-catalyst, wellington-geek-nz

Inserted: 2007-12-05 00:26 (4 years, 2 months ago)

A Quote about Open Source

The roots of Open Source lie in Academia and Scientific Papers and Peer review.

Simon Willison pulled this quote about Open Source from an article by Dave Shields.

I love it, though my favourite quote from it is:

As a programmer, it [Open Source Software] is the best arena in which to work.

P.S. my blog entries are not usually this short so I now need a Tumblelog for such things. Time permitting, I shall be implementing a (initially small) Tumblelog model for Zaapt in December.

Labels: open-source, zaapt, tumblelog, planet-catalyst

Inserted: 2007-12-02 00:26 (4 years, 2 months ago)

Blogger in Draft now Accepting Comments with OpenID

Exciting news for people who comment on Blogger blogs. They're now accepting OpenID on BloggerInDraft so soon enough it'll be phased into the rest of Blogger.

So on their post announcing that Blogger will accept comments using OpenID I decided to leave a comment there using my own identity.

And it worked - beautifully. It even asked my OpenID Provider some other details such as my name. I allowed them to do this and sure enough, my name appeared with the link to my site. So that's pretty cool too (I only typed my site url).

Anyway, I got number nine in the comment list.

So now, that means both LiveJournal and Blogger both accept OpenID for comments. I reckon that must mean that a large majority of blogs on this planet now accept OpenID - so let's now get Wordpress and Typepad to do it too.

Labels: livejournal, blogger, planet-geek, wordpress, planet-catalyst, open-id, typepad

Inserted: 2007-12-01 00:15 (4 years, 2 months ago)

What Am I Doing After NaNoWriMo

Just thought I would add a copy of a post I put on the NaNoWriMo forums in response to the question "What are you doing after NaNoWriMo?" Lots of things to do it seems.

I have a number of things I'm going to do after NaNoWriMo, some short term, others a bit longer term.

Short term, I am going to be adding 'Member Excerpts' to KiwiWriters with the help of the others in the KW committee (Kerryn, Travis and Cassie). We also have many other writing challenges planned throughout the year so check it out when you can (especially if you don't want the excitement of writing to die down once NaNo is over.

There are a few other more personal projects - mainly websites - which are in need of my attention. And I shall certainly be posting more blog entries over the coming weeks. I might even do x365 this year like I said I would last year :-)

Longer term, I have found out that ScriptFrenzy will be April next year instead of June which is awesome. That means I can do that in April and still do SoCNoC in June, as well as all the short story weekends planned over the coming year. At the moment, it looks like I'll also be ML (Municipal Liason) for Wellington for ScriptFrenzy too which will be pretty cool.

Oh, and I have lots of housework to do. Yay, what fun (NOT). Phew!

Labels: nanowrimo, kiwiwriters, planet-catalyst, x365

Inserted: 2007-11-29 22:06 (4 years, 2 months ago)

Good News About the EeePC

It looks like Asus are going to adhere to the GPL and fix the violations they've been accused of.

Thanks to Cliff Biffle who wrote ASUS eeePC: First impressions and GPL violations and probably many more like him, Asus are fixing up what I think was probably just an oversight. It may have been on purpose but I suspect (and hope) not.

Anyway, they're remedying their lack of providing the source code for their Xandros based OS on their EeePC. Beforehand, they had provided some source code but apparently it was incomplete.

Hopefully this means that all the Open Source people out there can hack on something that already works rather than have to do something from scratch. Of course, people will do their own things too which is the way of the world in Open Source but now they can also use the newly released Asus code as a starting point.

Oh, and the release of an SDK for developers also looks like a good thing.

It's already looking up in the EeePC world. It was good enough before but now it's even better.

Labels: planet-geek, planet-catalyst, eeepc, asus

Inserted: 2007-11-29 14:24 (4 years, 2 months ago)

wellington.geek.nz is Now LIve

Brenda and I have been working on a new site for all the Wellington Geeks out there. And it's now live.

After trying to do about a thousand things this month, one of them is mostly ready. Brenda and I have been working on http://wellington.geek.nz/ recently and it looks like people have found it before we were fully ready to release.

As it turns out, that's okay, Release Early, Release Often is the Open Source mantra so that just means we get more eyeballs at it earlier rather than later.

One good thing is that doing the site made me add a new Calendar model to Zaapt and now that's up and going very well. We'll also use the new Calendar model over on KiwiWriters so everyone will know when all the challenges are. It's great how all these sites benefit from each other :-)

The one issue I need to fix up for wellington.geek.nz is the fact that it thinks it's yesterday for most of today since the server is running on Central European Time (it's in Denmark), but I'll fix that up soon when I get a chance.

We have some thoughts and ideas for the future so hopefully some of these will be added in the near future.

  • being able to change the right hand calendar to Next/Prev month
  • RSS feeds for the events
  • iCal feeds that you can put in your own calendar tools

... and probably more, so let us know if you have any suggestions. The site is still beta (I've always wanted to say that) so please be kind.

Labels: zaapt, kiwiwriters, planet-geek, planet-catalyst, wellington-geek-nz

Inserted: 2007-11-19 10:21 (4 years, 3 months ago)

Debian EeePC Awesomeness

Good news for the Asus EeePC - in my eyes at least.

After I got my shiny new Asus EeePC last week I knew a community to put their own Linux distro on it would grow around it soon enough.

The OS that comes pre-installed is a Xandros-based system and while I'm happy with it now, I'll eventually replace it. Lots of people have already installed Ubuntu on it, though they had to use ndiswrapper for the Wi-Fi (new Atheros chipset apparently) and also suspend doesn't quite work yet.

Lots of people have also been adding both Debian repositories and Xandros repositories on the assumption that they will work, but there are also reports that some things stop working. I'm also not convinced that they'll be completely compatible.

But there is good news on the horizon. I thought a community to port Ubuntu properly onto the EeePC would crop up first but already Ben Armstrong has stepped up to the plate with his Debian-EeePC project.

Happy happy joy joy! I can't wait.

Labels: debian, planet-geek, planet-catalyst, eeepc

Inserted: 2007-11-11 21:30 (4 years, 3 months ago)

Playing Catchup with Macy Lights

This past week, I didn't managed to write a huge amount for Macy Lights but today I played a whole lot of catchup.

One of my friends wondered if my inactivity was caused by me not being interested in my novel much or it being too hard but it reality it's quite the opposite. It was just a busy week, that's all, not to mention that a couple of nights were completely wiped out.

Regarding my novel, before today I really liked - now I absolutely love it. I knew that when I had the chance to start writing again that I would just spill my ideas out onto the keyboard and that's exactly what happened today. I was on 9.5k this morning and after doing 4.8k today I'm almost back up to where I should be (on a quota/day basis).

I read in one of the forums on the NaNoWriMo site the people were falling in love with their characters or their plot and I'm doing the same. I mentioned that the story had grown on me every single day since Oct 29th when I first had the idea. I liked it then and now I love it - which makes the whole thing a fantastically enjoyable thing to do.

Not to mention that I'll be meeting up with the other Wrimos in Wellington tomorrow which is also always great fun.

As always, every single day's writing is being posted on my Macy Lights and the Battle for Ashton's Gate novel page. Today's is already up.

Labels: nanowrimo, macy-lights, planet-catalyst

Inserted: 2007-11-11 00:00 (4 years, 3 months ago)

Google Almost Announces OpenSocial

It seems details are leaking about Google's new OpenSocial application API.

It also looks like the launch date for Open Social will be on Thursday which is what was rumoured at the end of September.

Unfortunately for me, it doesn't sound like what I was hoping for. I was hoping that there would be Application Services, Data Services and Mashup-Services and that you could do it on your own site anywhere.

From what I can tell, the Application Services and the Data Services will be there, but the Mashup Services won't be. This is because the final point above - being able to host your services anywhere - doesn't seem to be allowed.

So far, it looks like the API is for Application Services to be embedded into the Data Services' own website. Limiting or what?

As you might be able to tell, I'm a little miffed about that since for me, the big adventure was to open up where you can host your applications/mashups and not just copy Facebook's walled-garden approach and embed all the applications within one site.

It looks like my initial look at OAuth will be the thing that now excites me most and I'm going to have to start reading a bit more about it. I feel that this can be used for what I would like to see in the real Open Social scene ...

... and what is that? ...

... that the Data is open (using proper Authentication of course), and not just that the Application API is open.

The fact that an Application API is open really just means it is a standard and nothing more than that.

Things have changed in this day and age. The application doesn't matter anymore because the web is the application. Not one site. Not a few sites, but the whole web.

And while we used to say Content is King, in reality these days Data is King, or even more specifically Social Data is King.

Over the next few days, I hope to learn a little more about Google's OpenSocial and I'm almost preying it isn't what I think it is now.

Labels: google, open-social, planet-geek, planet-catalyst, oauth, magnolia, social-graph

Inserted: 2007-11-02 10:00 (4 years, 3 months ago)

I'm Releasing my Novel under Creative Commons

After attending the launch of the NZ versions of the Creative Commons licenses, I've decided to release this, my third novel, under a Creative Commons license.

The Creative Commons Aotearoa New Zealand site and NZ specific licenses were launched last Saturday and I had the pleasure of attending. It was a fantastic event but I shall be writing it up another time. Let's just say that I was amazed at the number and type of people who turned up.

In honour of the new license, I shall be making my NaNoWriMo 2007 novel available under a Creative Commons Attribution-No Derivative Works 3.0 New Zealand License.

The novel is called Macy Lights and the Battle for Ashton's Gate and I shall be filling in each day's quota, so check back every day for a new installment.

At the end of the month, I shall tie up all the pieces together and produce a book that I will print using Lulu. You are welcome to order a copy off me (to be honest, it's not going to be that good but hey, it's for the kids) and any profits will be given to a charity to be determined by me - I hope to find a writing/reading based charity here in New Zealand, so I'd appreciate any comments. Unfortunately, price is also to be determined but I don't expect it to be too high.

Depending on demand (yeah right) will depend on when and how many I order, so please be patient.

Overall, this is mostly an interesting excercise for me so it'll be interesting to see how it turns out.

Wish me luck.

Labels: nanowrimo, planet-geek, macy-lights, planet-catalyst, writing

Inserted: 2007-11-02 00:38 (4 years, 3 months ago)

And we're Off

NaNoWriMo has begun and I've got a flying start.

We in Wellington had the Kick-Off gethering last night and it was great. Amazingly we got 17 people there and I know there were more who intended on coming. Overall though, it was a fantastic start.

And now, we're just 8hrs 25mins into it and I've already got my daily word quote. I'm on 1685 and I would love to double that tonight. I'm making no promises though I intend to finish at least more than a few days early this year.

The other news is, I shall be posting each and every day's writing on this site. I'm as yet undecided if I shall be just putting it up as content or as a blog, but I'm leaning towards the former since I already have a writing section and even though it's based on time (one a day) it's actually for a brief moment (one month). Every so often I'll point to any new stuff there from here so you don't miss out.

Wish me luck :-) This is going to be oarsum (oh wait, I should say awesome if we're talking about writing and not geek stuff).

Labels: nanowrimo, planet-geek, macy-lights, planet-catalyst, writing

Inserted: 2007-11-01 08:29 (4 years, 3 months ago)

NaNoWriMo Comes Again

I wasn't going to do NaNo this year but it just wouldn't feel right if I didn't. So I am.

Already things are getting exciting. The new NaNo site is up (still some teething problems but I'm sure they'll get it sorted). And for the geeks, it's now using Drupal.

Loads of names I know from last year are already on the forums, but even better I know more of them since many from KiwiWriters are also over there too. Added to this, we're getting crossover from NaNo and our KiwiWriters membership has gone up a lot over the past two weeks and hopefully some more during November.

The Manawatu Standard is being the best local paper which supports writing events like this one with this article - Have you got the write stuff?. Hopefully more of them will promote it too since it's a very enjoyable month - of course I have a view that they might support us with SoCNoC next year too.

It's all very exciting.

Labels: nanowrimo, kiwiwriters, planet-catalyst, novel

Inserted: 2007-10-17 21:50 (4 years, 4 months ago)

Everyone is getting into the Sharing Data Space

Ma.gnolia.com is also getting in on the act.

From a webpost on the Ma.gnolia.com blog, they are releasing a new specification called Open Authentication specification (OAuth).

The thing is though, they are calling it Open Authentication but really, it's not just authentication, it's actually also (maybe sneakily) authorisation too. Authorisation to your data, that's what.

Using Open Authentication certainly does allow one site (the web app) to confirm with another (the identity server) that you are who you say you are. But there is more to it than that...

It also allows the web app to gain access - on your say-so of course - to your private data on the identity server.

(As an aside, I think that Open Authentication, or OAuth, is actually a misnomer and really should be named something else.)

This can be most easily thought of as an example where a photograph printing site wants access to a user's images at their favourite image sharing site.

This OAuth specification is along the same lines as quite a number of different specifications which allow for authentication and authorisation of data access which are vying for adoption throughout the rest of the web. Much like what I said last week about the possibility of Google opening out their authentication/authorisation, it'll be interesting from here on in and the good thing is, if there is enough people looking at the problem and creating solutions, the best one will probably win - or maybe the biggest one.

One thing I forgot to mention in last week's post is about the type of data that can be shared. For example, having Ma.gnolia as your identify server and your data manager will give you access to your bookmarks from other web apps if given authorisation, but from this provider, that's all you can get at - since that's all they keep.

Opposed to this is some new abilities within Google Mashups which allow you to store any type of data against each user. When it was first released, you could only access the \c{${app}} variable (I need to confirm this) but now there is a \c{${user}} variable too.

So again, this is another step along the road where you'll actually be able to create and store anything with anyone and access it from anywhere, on the assumption that Google's new API allows this.

That's a lot of options and very much inline with the true spirit of the web.

Life is good.

Labels: google, planet-geek, planet-catalyst, magnolia, social-graph

Inserted: 2007-10-05 16:05 (4 years, 4 months ago)

I Can't Believe I Didn't See this Before

Things are looking good in the 'open' social networking scene.

For a while now, I've been interested in OpenID, open sharing of information and also the social graph everyone is talking about.

Heck, I even told a (non-geek) friend of mine the other day that 'information wants to be free'. He was laughing at me - very hard (hi Dave).

As it turns out, all the different thoughts and plans lots of people all over the globe have been having about how to open the social network out will all be pushed aside if this happens.

The interesting thing is though, even though it might turn out to be a big launch for Google, I think they've already started with the opening out of their GData JavasScript Client Library of Calendar. And we're promised, more of their Application API's to come.

The difference between this client library and the preceding ones is that it allows anyone to mashup an application of theirs to be writable as well as readable. What this means is anyone out there on the internet can now 'program' Google's Applications using a JavaScript library. The aim of GData in the first place was to standardised their internal applications this way so it's no surprise it's now writable.

The main point about this write thing is that, to be able to write to something of yours (yes, you own it, it's your data), that means the application has to know who you are - which is authentication.

So hang on let's recap:

  • random website (example.com) wants to create an application using your calendar and your friends as source data - let's say a birthday party invitation application
  • they mash something together on their own website (example.com/party-invitation.html)
  • you connect up, say you're andychilton_at_gmail.com and they ask Google to confirm this
  • you're confirmed and you also allow the Party Invitation site to access (some of) your personal data
  • you create a party, it gets added to your calendar and invites gets sent out to all your friends

Does it sound like Facebook to anyone?

Yes, but there is one big difference. To create an application, you don't have to do it inside Google as you do with Facebook, you can just go ahead and do it.

That sounds like progress to me :-)

Two other things we need to consider are authentication and the personal data we're talking about.

For authentication we already have OpenID which can say that you are the owner of this particular identity. So maybe November 5th is the big day for Google giving all of their accounts users an OpenID (yay!) Even though they don't need it and their APIs won't use it, it would be really nice of them to do it.

So, the personal data that will be used in these PWMU's (Private Writable Mash-Ups) that might be used by an application may come from Google... BUT, and this is the best bit, I suspect that anyone in the world will also able to create an application which has a PWMU API which implements all the necessary features that the GData API does.

So, finally, what does this actually mean.

It means that anyone can provide an Authentication service, anyone can be a Data service and anyone can create a Personal Writable Mash-Up service.

Sounds like decentralised control of everything - which is exactly what the proponents of the Open Social Graph problem want.

The fact that OpenID creator Brad Fitzpatrick now works for Google and is leading this project gives me even more confidence that things will go in the right direction. As the techcrunch article above states, if Facebook is 98% open, then Google will be 100% open.

And let me finish on a more personal note. I've been planning on adding OpenID to Zaapt and hence KiwiWriters in the next couple of months but let's just imagine some other possibilities. We could create an application which implements a Work In Progress API which allows you to read/write you WIP information from any mashup site. Let's say that in the future people decide to move away from KiwiWriters (let's hope not), then they can copy/move the data that they own to another site which implements the WIP API. This means that the user is free to choose the best provider they see fit AND they actually have the ability to do it. Talk about keeping providers on their toes :-)

P.S. Most of the second half of this post is speculation about what will happen, but yeah, either way, it's going to be very interesting.

Labels: openid, google, planet-geek, planet-catalyst, facebook, social-graph

Inserted: 2007-09-28 10:47 (4 years, 4 months ago)

Epiphany Refreshes the Web

I'm not talking about me having an epiphany about the web, I'm talking about using the Epiphany Browser instead of Firefox.

For a while now, my Firefox browser has been going in fits and starts. More often than not it starts winding up to 100% CPU and that's just silly. My browser is fairly plain vanilla with just a few minor extensions so who knows what's causing it.

I have been using Google Maps quite a lot recently and I'm thinking it has to do with that, but really, it's far too often getting it's knickers in a twist.

Also a few other things have been getting on my nerves recently. For example, if I'm editing inside a text box, I can't Ctrl-PgUp/PgDn since the text box keeps the focus and gives you options for previous things you've typed in there in the past - not a feature I ever use.

So I decided last night to give Epiphany a go. Many years ago I'd played with Galeon from which Epiphany grew and also had an itch to give it another go. A couple of years ago it still didn't seem to be what I wanted but nowadays it seems fantastic.

So far, it's been a breath of fresh air. It's responsive, it renders really fast (oh I know it uses Gecko which Firefox does, it just seems faster) and there isn't tonnes of cruft to get in the way. I don't need or use history, I keep my bookmarks online and most things I do, I use the mouse for. It's a small slimline browser which goes wonderfully with my minimal desktop (I use Ion3).

Also, using Google Maps never seems to slow it down ever though I'm sure it's quite intensive. I've had 4 tabs open on 4 different pages with maps on them, a load of Flickr pages, lots of Wikipedia pages and other random pages and it's still super responsive. Apart from not stealing all the CPU it also just feels fast for the simple things like switching from tab to tab, which I do a lot.

I don't think I can fully switch yet since I need to check out the extension mechanism but so far, it's looking really promising. I'll definately switch on my home computer at some stage, maybe I'll keep using Firefox on my work one.

Yet another demonstration how free and open source software works. If something better comes along, it doesn't cost an arm and a leg to try it out :-)

Labels: epiphany, galeon, firefox, planet-catalyst

Inserted: 2007-09-25 22:17 (4 years, 4 months ago)

A Big Day for Kiwi Writers

After a long time planning, developing and testing, Member Challenges are now live on KiwiWriters.

Today saw the launch of a brand new section of the KiwiWriters site; the ability for members to create their own challenges. Not only that but it can also be of one of a number of different types of challenge too.

Most writing sites which hold challenges have two limitations, both of which I always wanted to avoid:

  • they seem to only hold one per year (or at least just one at a time)
  • the challenge itself is usually of one particular type

From the very start, the KiwiWriters committee said "let's have member challenges" (I forget who's idea it was), so since that day I've been planning on having something completely flexible. I have blogged about this before - My Proudest Moment for KiwiWriters - and all that hard work is now paying off.

We allow writing challenges, editing challenges, time-based challenges, preparation challenges and random-other-stuff challenges. There is plenty of variation and scope for whatever it is people out there want to do and best of all, they can do it whenever they want, there's no need to wait around for one of those other challenges to start. Also, any other member people can join in your challenge too, which after all, was the whole point in the first place.

Gladly one member has already added our first ever member challenge - Survival of the Human Race and we're hoping for a number of people to join. So overall, it's been a very exciting day.

Now then, it's not often I boast but for the first time in a while, I'd like to blow my own trumpet (as it were). Technologically speaking, I'd like to summarise what the KiwiWriters challenge part of the site has over and above all the other writing sites I've seen:

  1. most sites only have 1 challenge a year, we have many
  2. most sites only have 1 type of challenge, we have many
  3. most sites only have challenges that the administrators add, we also allow our members to add them
  4. some sites remove everything from the site regarding the old challenges, we keep a 100% record of everything

We also have all these added extra features too which not all sites have either:

  1. working within everyone's own timezone
  2. saving of each day's progress
  3. a history of every challenge each member has ever entered
  4. automatic certificates and progress banners
  5. plus, soon to come, progress charts for each member for each challenge

So overall, it's been a hell of a lot of work to get everything going and now I'm just hoping that this new feature will be the 'killer app' for the site and that lots more people will start using it.

One area I'd love to expand is to get writing groups to use our site for their own challenges. Setting up infrastructure like that and getting it going is quite hard and really time-consuming. People shouldn't have to do all that themselves and instead, I've already done it. Instead, they just go to the site, create a challenge, get people to join and away you go. People don't even have to look at the rest of the site if they don't want to but hopefully, that would be a good drawcard to introduce people to other parts of the site. It's a great tool for encouragement and for being pushed (or pulled) along with a wave of other people.

One of my biggest dreams however, is to get schoolteachers, obviously English teachers, to add their bigger homework/project assignments as a challenge within the site and to get all of their pupils to accept the challenge. Just imagine all those extra words the kids would write if they knew their best friend was ahead of them. We all know from experience that doing something in a group gives you more encouragement, a greater sense of involvement and an incentive to do even more than you could ever imagine. I think that this would be a great way for kids to write more and have lots more fun in the process...

...after all, that's exactly what the whole site is aiming to achieve.

Labels: planet-geek, member-challenges, site-challenges, planet-catalyst, kwi-writers

Inserted: 2007-09-16 00:09 (4 years, 5 months ago)

Friday's After Work

On Friday afternoon's a lot of people stay around in work for beer o'clock. I do too, but not really for the beer.

Free beer, fresh bread and lots of chips and dips is great in anyone's book but I enjoy sticking round in work on Fridays for a whole lot of different reasons.

Instead of going to the cramped and loud room where everyone is gathering and chatting, I usually just wander the office, find someone to talk to and say "So, teach me something you learned this week." It reminds me of the mathematician Paul Erdős who used to turn up at colleagues houses and say "my brain is open." There's something I like about that, it's kinda cool and very geeky.

So for the past 2 months or so I've wandered past people's desks, sat down and just started talking. A few times, I've just stayed at my desk and one or two people would come and sit and talk. I find it a good situation to be in since then you can chat for real and get to know people a lot more than you do during the normal (hectic) work week.

Tonight was really, really good. Beer O'Clock was on my level today so I just sat at my desk. Firstly I had a good chat with Finlay about projects, technologies and management. Then, there were a number of us geektalking (and we even had Nathan Torkington there who is visiting Wellington for Bar Camp tomorrow). Sorry, but geektalk is always interesting.

Finally, Brenda, Caroline, Aaron and Joh were all teaching me sign language. I knew Brenda knew it but hadn't realised how many others did too. It's something I've been interested in for a while but never really did anything. Back in 2000 I printed off the signs for the alphabet and some other beginner's stuff, but there's nothing like having a group of people to learn from and ask questions of.

My first impressions of sign-language is that it's a really creative language. I laughed at a number of signs, such as the ones for various countries (like France, Italy, Russia and Germany) since they actually seem a little outdated. But better than that, signs for people themselves are really cool. It's about taking something to do with sign, a letter, or maybe two, an altogether different sign, mixing them together or with either the personality or the physical appearance of the person and creating something new. So, a letter, a pre-existing sign, a name, a personality and producing something (almost) unique for that person.

Caroline's sign, suggesting long shoulder length hair is very cool. Brenda's (Shiny) suggests something shiny or glittering by throwing your fingers apart (sorry, hard to describe in words, sign is so much easier) and Aaron's, using two thumbs (because pointing to one thumb is for the letter 'a') to point to his dimples on his cheeks is the best of the lot.

What it comes down to is, that people's sign-names are basically mash-ups of sign itself and the person they are for :-)

Wellington's sign is also kinda cool and I'll tell you how to do it. Take your main hand and put your 2nd, 3rd and 4th fingers up with your palm away. Then, move you hand from side-to-side as you also lower it from eye-level to chest level. Yep, that's the wind and rain you're hinting at and that means Wellington. It's brilliant and I love it.

A task I shall be setting myself for this week is to find an evening class somewhere so I can take sign language and learn a bit more. Also, like learning any other type of language (linguistics or programming) it's much easier to learn if you have people to practice with. So Brenda, Caroline, Aaron and Joh, I shall be looking for you guys so I can practice some more. It's lots of fun.

Labels: beer-oclock, planet-geek, sign-language, planet-catalyst, geek-talking

Inserted: 2007-09-14 22:49 (4 years, 5 months ago)

The First Hack Day Considered a Success

I managed to do fair bit of what I wanted today but playing with other things also reminded me how much you need to know to get the job done.

Yesterday, I declared that today was Hack Day. Overall, I didn't even finish my first task but that's because of two things: (i) coffee, and (ii) refreshing my memory.

All I want a simple cron'd script to do something every 15 mins. As it turns out there is lots more stuff you have to consider for that one ickl' script and it needs a lot more infrastructure than you expect. I ended up using:

  • timezones
  • cron scripts and using dh_installcron
  • logging with Log::Log4perl
  • creating system users in the postinst with id and useradd
  • making sure the package remove and purge works correctly
  • setting up and running logrotate and dh_installlogrotate
  • and not forgetting the actual script itself that's doing all the work

It's funny how a simple script requires all this other padding around it. The good thing is, I've done it the once now so adding further scripts in the future should be easy enough.

I've set it going on my laptop and I'll check the logs tomorrow. If it seems fine so far I'll finish the script off to do the actual database insertions I need.

Phew! Like everything at the moment it's the small things that take the most time.

Labels: postgresql, kiwi-writers, planet-catalyst, timezones

Inserted: 2007-09-03 00:31 (4 years, 5 months ago)

I Declare that Tomorrow is Hack Day

I believe the weather is going to be bad tomorrow, so I now pronounce it hack day.

Actually, it doesn't matter about the weather at all. There are just some things I need to get done. I wasn't going to write a list of things I had to do because then I'd be bound by it, but that's probably a good thing and then I'll see how well I did.

Okay, here goes:

  1. write the challenge progress cron for KiwiWriters so that we remember everyone's progress for every challenge
  2. complete by changes to Zaapt for Role-Based Access Control
  3. play with Google Maps more (see my current play thing (note: it only saves points locally in that page, so any additions you do, you'll lose - so just have a click and a play)

I don't hope to do all those things, but I may get the first and some of the second done.

Labels: zaapt, kiwi-writers, planet-catalyst, google-maps

Inserted: 2007-09-02 01:31 (4 years, 5 months ago)

Interesting News

I seem to read a lot about Linux. But I also read a lot about free software and freedoms in general. It seems today has lots of interesting news about the latter.

I've given up reading http://www.linuxtoday.com/ because of all the adverts and the fact that you have to click firstly to get a brief of the story, then the story itself. Instead, I just read http://lxer.com/ since they all pretty much list the same things anyway.

So, here are the articles I found interesting today:

I find these stories interesting for various reasons. I've spoken to friends about Skype and I'm still resisting using it, though the pull is string.

The second article because I just think it's funny - "Why is all this high quality software free?" they say. You say "Because it's priceless!" :-)

I'm still in two minds about what Microsoft is doing flirting with free software but until they do the right thing in every area (not just one or two), then I won't trust them until that point.

And finally, about the complete mess with DRM. People recorded LP's and tapes off each other. They copied 'protected' games off each other with the C64, Spectrum, Atari ST, Amiga (the list goes one). They copy CDs, now MP3s, they've hacked the DVD CSS and they will any DRM format you put in front of them. I think companies are learning that people power is important and always wins. Therefore, go with the flow, chill-out and turn it to your advantage. Give the people what they want (not what you want to give them) and just watch, you'll make a killing.

So yeah, today's news was quite interesting for free software and freedoms in general.

Labels: free-software, drm, planet-catalyst, freedom

Inserted: 2007-08-26 20:28 (4 years, 5 months ago)

Chromatic Hits the Nail on the Head

A number of things which are near and dear to me at the moment, and chromatic talks about them all.

In his post Constraints and Software Development, chromatic talks about writing, software and volunteer projects.

Hmm, has he been reading my blog - it pretty much touches on everything I seem to be doing at the moment :-)

And yes, kapiti.geek.nz has a new design, courtesy of Free CSS Templates. Thanks muchly. But better than that, it is now using Zaapt :-)

Labels: zaapt, web-design, planet-catalyst, writing

Inserted: 2007-08-20 00:16 (4 years, 6 months ago)

Converting kapiti.geek.nz to Zaapt

Over the past couple of nights I have redesigned my site and currently have a staging version of it all set up and ready to go.

The main reason for re-doing the site was so that I could convert it into a Zaapt site. As stated before, currently this is running using some software called Slym which was a precursor to Zaapt. Also, the old modules are no longer maintained and were starting to get on my nerves - anyone notice my blog's archive dates don't keep up? :-(

All in all, the redesign hasn't taken very long at all. In fact, getting a site up and going with Zaapt is just getting quicker and quicker. Recently, I checked in some code into the Zaapt Demo project which creates a basic (and Debianised) site upon which you can add things. To get that up and going takes about 3 minutes from start to finish - customisations after that take longer of course.

So the conversion from this site to the new one took something under six hours! That includes about 3 hrs of setting the site up, templating the HTML and some quick testing and about 3 hrs for the data migration script for everything in the old database. Currently, I'm copying and converting three lots of content sections, one blog and lots of comments and labels.

So all in all, I think getting the site going in less than 6 hours (including a data migration) is quite impressive. Also, when I got the Zaapt and the Zaapt Simple websites going way back in March it only really took me three days to get those going - and they've hardly been changed since.

Also this week, Don has stated that he may also switch to Zaapt so that makes me very happy. Finally, Zaapt will be used by someone else. It's not that I'm pressuring him :-) but that would be oarsum when it happens.

It does mean however, that the Zaapt sourcecode will now be under scrutiny from my peers. This is a really good thing (I'll know if I'm on the right track) but may also be embarassing (for those times when I've been slack or silly), but hey, that's what free and open source software is about :-) Just having someone else use it will be great...

...and nothing makes me happier.

P.S. the new design will be launched on Sunday just so I can add some spit and polish tomorrow

Labels: zaapt, planet-geek, planet-catalyst, kapiti-geek-nz

Inserted: 2007-08-18 02:49 (4 years, 6 months ago)

Latest Happenings

Just a quick catch up on what I've been doing.

This past two weeks, it seems I've been out more than I've been in. Take this last week, you know I went for Rock'n'Roll on Monday and Indoor Soccer on Wednesday.

Well, I also went to see Danny Bhoy on Thursday (who is the funniest comedian I've ever seen, no doubt about it) and went to see the Wellington Phoenix on Friday. I'll get a season ticket for that very soon.

But, the best thing is, even though it's been busy, I have managed to add a new Gallery type to Zaapt. It's mostly finished with a few tweaks to make but it is site usable already. I shall be using it on a site very soon - which will be posted here - so watch out for that.

Labels: zaapt, planet-geek, planet-catalyst

Inserted: 2007-08-13 00:05 (4 years, 6 months ago)

My Proudest Moment for KiwiWriters

In all the work that I've done in getting the KiwiWriters site up and going this year, I have just finished the thing that I am most proud of.

Finally, after many months of wrangling, I have pretty much wrapped up the Challenge section of the site. So let's look at the stages I had to go through to make it happen:

  • I needed to do a quick release so we could use it for The 6,000 Word Easter Challenge and prove the concept and implementation
  • that initial release did pretty well and not much was changed to be able to add SoCNoC 2007 not long afterwards
  • at the same time, I added the lovely participation icons and the progress bars for anyone that wants them
  • since then, I've added the ability to choose your timezone and have the challenge work with your local time
  • I've just released updated code to actually use it :-)
  • next will be a script to log everyone's daily progress to the database
  • soon that will also be reported on the site
  • added to all this, the admin interface to add/edit/delete new events
  • plus finally, the ability for the members to add their own events

So already there is quite a lot but the other thing I really like is that the challenges can be of many different types - not just word counting. I think it is an uber-cool feature that we wanted from the start and I'm very happy with the implementation being all nice and data-driven.

It seems other challenge-based writing sites put all their effort into one challenge a year, which to me, also sounds like manual-database-editing overhead-hell. Being someone who hates restrictions and one of the most important requirements for KiwiWriters as a group was to have the ability to stage many challenges throughout the year and the ability to let members create their own.

So I/we made it multi-evented from the start and now it's blossoming into it's own little world. Soon we will have even more challenges:

...not to mention lots more when we release the 'member' challenge section.

As always, what are you waiting for, Join Us!

Labels: kiwi-writers, challenge, planet-catalyst

Inserted: 2007-07-27 00:02 (4 years, 6 months ago)

A Superhero? I'm not.

I decided to submit Zaapt, my CMS, to Ohloh and here's the results.

The page for Zaapt on Ohloh shows a few interesting things about Zaapt the CMS.

Firstly, they show that I have done 3,039 lines of code, by hook or by crook (of course, they don't know that I have Perl generating at least a thousand or so more than that). I thought I'd done more than that, but hey, at least it's succinct. As it stands, they estimate that, at something less than 1 Person Year averaging $55,000USD a year then the Zaapt code base is worth a whopping $34,834USD.

It turns out that Zaapt is 7 months old today so I reckon I've done well to get it where it is now. Though I don't believe the calculations Ohloh generates I guess it's just an indication of what's been happening on the project.

What's more interesting is the code analysis page. I always think I comment code about right - who doesn't? - so I might have to compare (my 12.1%) with other projects and see where it fits in. I suspect that the weird mix of HTML/Perl in Mason might throw the 'Languages' used off a bit. Certainly there is more than 3% HTML and much less than 73% Perl so I reckon all Mason files are treated as solely Perl.

In the Contributors section (yes, I'm the only one), the other feature I find quite useful is my personal metrics for Zaapt. It's nice to see how many commits and lines I'm changing (per language and) overall on a monthly basis.

It's just a bit of fun so I'm not too bothered what it says, but it is interesting. I'd also like to know what adding the KiwiWriters repository would make all these figures. Unfortunately that SVN isn't public so I can't. Maybe I'd hit $50,000USD for half a year's very part-time work.

Not bad eh!

Labels: zaapt, cms, planet-geek, planet-catalyst, ohloh

Inserted: 2007-07-20 00:03 (4 years, 7 months ago)

Open Letter to Information Technology Division, Commonwealth of Massachusetts

The Information Technology Division in the Commonwealth of Massachusetts has chosen to push through the use of ECMA-376 OOXML as an 'approved standard'. This is a bad decision and is subject to a very short public comment period that will expire on 20th July. Here, I present an open letter from me, a Citizen of New Zealand, to the ITD on how this decision will adversely affect themselves, others, me and my country.

This letter was sent to 'standards at state.ma.us' and copied to Pamela Jones at Groklaw.

Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 License.

---

Information Technology Division
Commonwealth of Massachusetts
Attention: Beth Ann Pepoli

Re: Public Comment on ETRM Draft 4.0

Dear Ms. Pepoli,

I write to you in regard to considering adding Microsoft's OOXML to your list of approved standards in the Enterprise Technical Reference Model (ETRM) 4.0.

Firstly I urge you to look further into the ECMA-376 Office Open XML standard to discover for yourself a number worrying inconsistencies [1], incorrect fundamentals [2] and dubious instructions [3] contained within the so-called standard. The standard itself reads more like a 'what Word does' rather than 'what an open document should describe' which is unlike any other open standard I know of. All of this is even before looking into the almost impossible technicalities of implementing such a long specification in itself, something that even Microsoft will find hard to do, let alone an independent software supplier. Considering that an alternative format, ODF, is already specified completely, already has a number of independent implementations and already provides a future proof format I consider the proposal of OOXML not only wrong but also redundant.

As shown in the above links, there are many arguments against OOXML but I shall not concentrate on those since I'm sure that others who write to you in regard to the same subject will already point these out. Alternatively, I'd like you to consider the following situation.

It has been recently reported [4] that the UK National Archives has chosen to access their old proprietary data using a proprietary operating system running a proprietary emulator to run old proprietary programs [5]. This, in my opinion is the wrong way of doing it. While this might be one solution to reading the data, there is no mention of actually converting it to a new format. If they did, in their case the UK National Archives may choose to convert to OOXML but this still leaves them in exactly the same position as they are now - their data will still be stored in what is essentially a proprietary format which can only be read by programs from one company, Microsoft.

No matter how you look at it, this still equates to a monopoly for one company and leaves the UK National Archives in the same position Microsoft admitted to putting them in in the first place. This is the same company who, by stating that OOXML is an 'open' format (they're wrong [6]) is trying to push ODF (a truly open format) off the rails and into oblivion. Who is to say that in 3 or 5 years time, if ODF has been pushed aside, Microsoft won't just go back on their word and create incompatibilities with OOXML just like they have deliberately done with previous versions of Word itself.

This then means that you are in exactly the same position, or worse, as you were previously and the good judgment of specifying ODF as an approved standard in ETRM 4.0 will have been all for nothing. It will also leave us in the 'digital dark age' Mr. Frazer, Microsoft UK, predicts, at his company's doing.

Finally, I'd like to mention why I, a Citizen of New Zealand, would want to write to you regarding your choice of approved standards within your state and how that affects me and my country.

You are probably aware in the importance of your decision for the future of data standards and accessibility. We live in an information age, a data sharing world, the Internet Revolution and make no mistake about it, this revolution is just as important as the Industrial Revolution before it, if not much more so. It is important that our decisions now are good not only for us but for our future and for those that come after us. Were it not for completely 100% open standards in the computer world this information age could never have happened. Computers wouldn't even be able to talk to each other let alone speak the same language, if truly open standards had never existed.

Countries like New Zealand are influenced heavily by decisions made in other countries. As a small country, we are ripe for the Government to take a stand against phony standards and choose to save and store all our data in open formats. It's an ideal situation to be able to choose open standards such that the Government won't waste public money on converting from one proprietary format to another and still get it wrong. We can't afford to spend millions of New Zealand dollars on incorrect storage and conversions to broken and incomplete standards unlike the UK tax payer is being forced to.

Massachusetts, as a state of 6.4 million people and we, New Zealand, as a country of 4 million people have many similarities and therefore any decision you come to may affect decisions that we, or other governments or central organisations throughout the world, make. This is a fantastic opportunity for you to take the lead, take a stand and show the rest of us the way.

So finally, I urge you again, please do not accept the ECMA-376 OOXML proposal as an approved standard in the ETRM 4.0 and choose only those which attain a 'true' standard, such as ODF. This will enable countries like New Zealand to point to previous examples, such as Massachusetts, where open standards have worked, are being used, have saved money and also have the freedom to choose supplier of such solutions. None of this would be true if ECMA-376 OOXML is chosen as an approved standard.

Yours sincerely,

Andrew Chilton

[1] http://www.grokdoc.net/index.php/EOOXML_objections#Ecma_376_is_immature_and_inconsistent
[2] http://www.robweir.com/blog/2007/07/formula-for-failure.html
[3] http://fussnotes.typepad.com/Achieving_Openness_1point0.html#sdendnote8anc
[4] http://news.bbc.co.uk/2/hi/technology/6265976.stm
[5] http://kapiti.geek.nz/random/updating-proprietary-file-formats-the-wrong-way.html
[6] http://www.onlamp.com/pub/a/onlamp/2007/06/14/achieving-openness-a-closer-look-at-odf-and-ooxml.html

Labels: ooxml, ecma376, planet-geek, planet-catalyst, odf

Inserted: 2007-07-15 01:43 (4 years, 7 months ago)

SHDH this Weekend and I Can't Go :-(

SuperHappyDevHouse originated as a monthly hackathon in San Francisco and thanks to a few people here in Wellington, it is now starting over here too!

There's been quite an overwhelming response to go to it I hear. Both Penny and Brenda are 2 of the 4 organisers and you know what, it sounds like it's going to be oarsum (with a capital OAR).

So, I was one of the privileged few that scored an invite for the first event (yay me) but I can't go (which sucks big time).

Then again, I can't be too sad since I'm seeing family for the weekend and it might be the last time I see them for a year or two and even then it'll be sparse.

Still wish I could go though. Some expletives were said when I realised it was the same weekend. And I saw a preview of the T-Shirts today, which are also oarsum.

So sorry Penny and Brenda - will definitely get to the next one.

Labels: planet-geek, planet-catalyst, shdh

Inserted: 2007-07-04 20:53 (4 years, 7 months ago)

It's Official, I'm heading back to Catalyst

I've been waiting until the end of my current contract until I make the news official - though I've hardly been hiding it.

Some of you (and now \l{Jason|/random/openid-presentation.html#comments}) already know that I shall be returning to Catalyst to work, some of you don't know and besides, it's already \l{out there|http://she.geek.nz/archives/432-complete-failure-to-update.html} anyway - hi pennypants, you beat me by a day :-)

So yep, today was my last day contracting but to be honest, I'm not going to talk about it much, except to say that I now know where I am meant to be.

When I left Catalyst before Christmas, it was because of the pull of the new place rather than because I wanted to leave. Maybe it was a rash decision (hindsight eh!) but these things happen. Yes, there were a few other factors but nothing in this life is simple. So instead of seeing out my current contract, I decided to make a decision and go with it - I'm fairly headstrong when I make a decision. I spoke to one of the Catalyst directors a few weeks ago and I said "I'd love to come back, I miss the place and the people too much." He replied "We'd love to have you back" and that was that, decision made.

Ignoring many (many) things that contribute towards work and a workplace, two things stuck out in my mind as being quite important to me. Yes there are other factors, but as I said, I'm ignoring those here.

The first is that, within Catalyst, it's the IT staff who make the decisions because first and foremost the company creates software. Unlike many other places of work the geeks come first - I obviously like that being a programmer and all. For example, in many other organisations (think banks et al) the geeks are just overhead trying to keep things ticking over so that other people can do their work.

Maybe I don't like being an overhead.

Secondly, one of the things I miss the most is the Open Source world. You knew that right? There is so much going on, things you can play with, learn, use open standards (which always comes in handy), new technologies spring up all the time and to top it all off it has some of the brightest people I have ever worked with. I feel it's a constant learning curve with so much to know and everyone is always willing to help.

It just creates a really nice atmosphere and Catalyst pretty much embodies the Open Source world to which I feel such an attachment.

Recently, I started a CMS called Zaapt and knew from the start that I would give it away freely as open source. I may never make any money off this thing and God knows I've put enough hours into it but that's missing the point. I have worked with and enjoyed using other people's software for many years, which they too also open sourced, and I feel that giving back to the community is the right thing to do. Hopefully Zaapt will get bigger so that many other people use it (fingers crossed) and only then I can feel my contribution back to the Open Source community has helped.

So, I have a week off to chill out and go see some family, and I'll be starting on the 25th June. Maybe by then I'll have finished my novel too.

Labels: open-source, planet-geek, planet-catalyst

Inserted: 2007-06-15 14:58 (4 years, 8 months ago)

A Social Hack

This is just a short post to see if my entries still appear on ...

... \[p]{Planet Catalyst|http://planet.catalyst.net.nz/}.

To those of you who don't know, as I said in my last post I have changed jobs. At my old place, \[p]{Catalyst IT|http://www.catalyst.net.nz/}, my entries used to be syndicated onto Planet Catalyst if I tagged my enties with PlanetCatalyst. So I guess now that I've switched jobs, these entries shouldn't appear there - at least that's the theory.

So whoever in Catalyst reads this first, assuming this entry appears, do you wanna remove me ... alternatively, how about having a Planet Catalyst Alumni :-)

Finally, it was nice to catch up with a number of you last night and I'll definately see you again in the New Year.

Labels: planet-catalyst

Inserted: 2006-12-16 11:09 (5 years, 2 months ago)

Setting a Good Example with Passwords

After hearing some random people shout their passwords out, we as Programmers (and other IT peoples) should set a good example.

Recently, in my travels (in the travel agent), the lady serving me was unsure of how to book a couple of gnarly tickets, so she called one of the other staff members over. She had to log on to a new system to do it and was told, right in front of me, the username and password of the system. Further to this, I saw the web address of the site and was blatently public facing. I had all the details to be able to log on!

I told here that I would try and 'forget' those details straight away. She knew I worked in IT and said "I guess you forget them all the time with having so many with your type of work". I said "Quite the opposite, it's exactly those sorts of things I remember". I was quite shocked at the plain inability to understand what passwords are actually used for - not that their password was any good anyhow.

Another time on my travels on the train, two school girls were talking about doing their homework on their parent's computers. One stated that she tried for an hour to log in to her Dad's machine by guessing the password. In the end she realised that no password had actually been set! This isn't so major, but it does make you think.

These two examples obviously show that we still need to educate the people regarding the security and effectiveness of having a good password.

It seems that most of us IT people know what constitutes a good password. You know, the usual no dictionary words, mixture of letters, characters and symbols, of a reasonable length and of course the old favourite, don't write it down.

But at various times (usually working with other systems) I have had the misfortune of coming across a list of usernames with their respective plain-text passwords. I mean come on, if we expect users to be sensible with their passwords, then we also have to be with them too.

Over the past year or so, I've changed the way I deal with passwords. Originally I would get the password and do an MD5 hash of it prior to storing. This seemed good at the time, but it's not really since a lot of people still use dictionary words and with sites like \[p]{md5 reverse lookup|http://md5.crysm.net/} around they can sometimes be figured out if the hashed passwords get into the wrong hands. Try this \c{\[p]{8b1a9953c4611296a827abf8c47804d7|http://us.md5.crysm.net/find?md5=8b1a9953c4611296a827abf8c47804d7}} for starters.

The next stage in my password adventure, I started hashing the password with a 'seed' string. As an example, if the password entered was 'TryMe' and my seed was 'Xg7*e#q!', the hash would use 'Xg7*e#q!TryMe'. This helps, but these days modern computers can reverse engineer the hash within a reasonable length of time, especially if it isn't that long. Armed with the reversed password of a few hashes, the seed (whether tacked on at the start or end) can be figured out and then used to reverse engineer the others more quickly.

Recently, I've taken it a step further and now use both a common seed of random letters, numbers and symbols 8 characters long prepended to the password, followed by another 8 random characters which are unique to that user. This way, even if the common seed can be found by reversing a few hashes, the random characters at the end both lengthens the password and makes sure that dictionary attacks don't suceed. Therefore, unlike the previous example (where a lookup table can then be used), to retrieve each and every password a very lengthy reverse engineering process would have to be undertaken.

As a quick example, if the common seed was as above, the string to be hashed could look like 'Xg7*e#q!TryMekP)i$dYn'.

This is where I'm up to at the moment and I'm a lot happier for it. I'm sure there are probably more ways of doing it to strengthen the password encoding so if anyone has any more hints and tips, I'd be happy to hear them.

But more importantly, let's finally start handling passwords with as much care as we tell our non-computer literate friends and family.

Labels: password, planet-catalyst, md5

Inserted: 2006-09-23 00:29 (5 years, 5 months ago)

CAcert is Cool

Learning a bit about CAcert recently, I signed up immediately since it "Just Makes Sense". Oh, and I can get an SSL certificate for my server too - for free.

Following on from Andrew's \[p]{CAcert Bandwagon|http://blog.etc.gen.nz/index.php?/archives/7-CAcert-Bandwagon.html} entry, Catalyst IT will very soon (from tomorrow I think) have enough people to fully assure someone, anyone, everyone ... providing they have the relevant ID of course :-)

We'll be a good seed in Wellington to grow the number of assurers and get this \[p]{CAcert|http://www.cacert.org/} wagon rolling in our area. Once we've reached these dizzy heights, we should try to get ourselves onto the \[p]{Assurer Groups|http://wiki.cacert.org/wiki/AssurerGroups} page on the \[p]{CAcert Wiki|http://wiki.cacert.org/wiki/}.

(P.S. Just found an entry on the \[p]{CAcert News Blog|http://blog.cacert.org/} asking for assurers in \[p]{Coventry UK|http://blog.cacert.org/2006/08/159.html} to help them kickstart their area. I might give them a shout since I'll be staying with my brother there in a month or so.)

Labels: ca-cert, planet-catalyst, jms

Inserted: 2006-08-17 21:40 (5 years, 6 months ago)

Linux on Lenovo

Or what they say is a "ThinkPad Experience" under Linux.

Well, at least we know the hardware will work. Being able to buy a machine (without having to order a truckfull), from a manufacturer with Linux pre-loaded can only be good news.

See \[p]{ThinkPad T Series mobile workstations|http://www.pc.ibm.com/us/notebooks/thinkpad/t-series/workstation.html}.

Labels: planet-catalyst, linux, lenovo

Inserted: 2006-08-17 11:21 (5 years, 6 months ago)

Google Code and Phliky

After finding out about Google Code today, I decided to put one of my projects on there - Phliky.

So far, it's going well. I've created the project (\[p]{Phliky|http://code.google.com/p/phliky/}) and organised my repository. In true Google style, it has a very clear interface and is also easy to navigate.

Saying that, the interface is quite sparse at the moment though, but I think that it will be filled out as time goes on. As an example, when you click 'Settings' in the top right corner (to change your Subversion password), there are no links to get back to the 'Project Home' and the other 3 main tabbed pages.

There is an \[p]{Issue Tracker|http://code.google.com/p/phliky/issues/list} and they do mention in the \[p]{FAQ|http://code.google.com/hosting/faq.html} that they created it to be minimal but configurable. Looking at the configuration for the Issue Tracker, it makes perfect sense that you can add your own Open and Closed Status values and Issue Labels (which I guess is the same as tagging an entry). This way, you can make the tracker work exactly how you work, though they do already provide a decent set of defaults.

One great thing about \[p]{browsing the repository|http://phliky.googlecode.com/svn/} is that, as soon as you have commited a check-in, it is already updated with the latest Subversion Revision - no waiting round for the web accessible source to update.

One slight problem I had with the repository though was when I checked it out using the URL I found, I didn't realise that it was already the trunk - serves me right for not looking close enough. I'm used to checking out the whole repository - trunk, branches, tags and all - so I ended up making trunk/ (again), branches/ (again) and tags/ (again)! Bugger. A bit of tidy-up later and I was good - am so glad it uses Subversion as opposed to CVS.

Overall then, I'm quote impressed and think that I'll like it even more in the future.

Labels: phliky, html, planet-catalyst

Inserted: 2006-08-10 22:22 (5 years, 6 months ago)

iPic4You pretty much finished

I said on 11th July that I would be doing a new photo site for my family. Well I'm mostly done :-)

In this article I mentioned a new site I wanted to develop for my family to upload photos to. Well, I'm pretty much done.

I've done a backend Perl module, built the pages in Perl/Mason using a PostgreSQL backend and it is running on Debian. Yup, you know the score.

I downloaded the design from those guys at \[p]{Open Source Web Design|http://www.oswd.org/} and put the thing together using some scraps of scripts I've had for a while but mostly new stuff.

There are just one or two tweaks to make, at which point I'll put up the source code for everyone to play with (it'll be GPL/Perl Artistic License).

If anyone wants to take a look at the site, head over to \[p]{http://photos.chilts.org/|http://photos.chilts.org/}. You guys will only be able to see any photos the users have marked as public (not many so far and I don't expect there will be) but you get the jist. The main reason for the site though is for my dispersed family to be able to share photos with at least some privacy.

Hopefully other people can use it too.

Once I've updated the code, tied up a few loose ends and made some documentation, I'll be putting a new section onto kapiti.geek.nz under /software/ and will start putting some of my other projects up too.

Labels: photos, planet-catalyst, ipic4you, damp

Inserted: 2006-07-31 22:38 (5 years, 6 months ago)

Forget about LAMP, why not try DAMP!

Now that kapiti.geek.nz is a living breathing thing, I thought I'd offer you my thoughts on the technologies being used to run the thing.

There are many different packages being used to help with the site, but there are five main projects of major use here.

The site is run on a Debian Sarge box, the webserver is Apache, the pages are written in Perl using Mason and PostgreSQL is the backend database. I have become quite accustomed to using each of these and the main thing for me is that each of them is the best at what they do. Collectively, I think they're even better.

Of course, all of this is my opinion and you are welcome to offer your own alternatives. This is my alternative and I like it.

For this, I offer you a new accronym. Forget LAMP (Linux, Apache, MySQL, PHP). I'm using DAMP:

 D - Debian
 A - Apache
 M - Mason
 P - PostgreSQL

(Of course, Mason implies Perl).

So next time someone asks if you're using LAMP, reply "Nope, I'm using DAMP."

Labels: planet-catalyst, damp

Inserted: 2006-07-09 21:45 (5 years, 7 months ago)