Time Flies…

Sunday, December 13, 2009 22:54

It has been quite a while since I last posted something (how often to do see that comment made by someone on their blog?), in fact 4 months today. I’ve really had a lot on during that time including, ,helping to organise/run a Ultimate tournament for ~370 people (which also included training for, and playing in), attending conferences, trying to set up a new website for the TUA (as well as keep up with other admin), not to mention how busy work has been. It probably hasn’t helped that my body clock has been out of sync with the rest of the world lately, as my girlfriend isn’t around to encourage me to go to bed/get up at reasonable hours of the day. Luckily Christmas is fast approaching and it will give me chance to have a  bit of a break from work (and non-work work) and recharge my batteries a bit.

During the last few months I didn’t manage to squeeze in a quick holiday in Victoria, heading down the Great Ocean Road. It is a really nice part of the world, and has inspired me to try an see a bit more of my of own country, instead of constantly going overseas for Holidays. The shorter flights also seem like a definite bonus. Here are a few nice panaroma I took on the trip (and stitched together using Hugin)
The Twelve Apostles (Eastern View)

Loch Ard Gorge

The first shot is of The Twelve Apostles, which are pretty well know (at least the Western View is), but the second shot inside Loch Ard Gorge (just to the west of the apostles) was also a very nice little spot. Click on the images for much large versions, though be aware that are fairly large in size (600k & 1000k).

I was also really impressed with how Hugin handled the merging of the waves at different spots between the photos.

Hugin Niagara Falls

Thursday, August 13, 2009 22:43

A while back I ran across a nice little piece of software called Hugin, that can stitch together photos to create a panorama. Unfortunately up until recently I have not had a good series of photos I could test it out with. On my recent trip to Canada I decided to take a series of shots at Niagara Falls and see how well the software would go. Here is the result (click on the image to see a bigger version):

Niagara Panorama (Small)

It was a bit overcast at the time, so the light wasn’t great, and my camera was in great need of a good clean (taking it though the mist at the bottom of the falls earlier in the day didn’t help either), but I think the end result is not too bad. All I had to do was select the photos I wanted to stitch together and Hugin did the rest.

Apparently the automatic stitching works best when there are well defined points in the photo it can pick out (ie. photos with buildings), and not so well when there aren’t (ie. photos with trees). If the automatic stitching doesn’t work so well, it provides quite a nice interface for selecting points in the photos by hand, and stitching them together manually.

The interface still needs a bit of work to cater for people like me who can’t be bothered reading the doco, but for the most part Hugin is a very impressive piece of software.

An even larger version of the panorama can be seen here

Occasional Game of the Week #1

Tuesday, June 30, 2009 23:04

There are some pretty spiffy flash games out there these days, but there are some rather ordinary and derivative ones as well. Luckily I recently stumbled across one of the better ones floating about: Stunt Pilot 2

Stunt Pilot 2

It is a rather simple idea; you fly your way through the rings on each level, picking up bonus items along the way, while things explode and collapse around you. The graphics are well polished, and the game play well executed. All up an excellent way to waste quite a few minutes.

It is also worth checking out some of the other games that Rock Solid Arcade have produced as well. They have made a few other well put togeather games.

Kantter in the wild (now with even more OAuth)

Wednesday, June 10, 2009 22:02

Today I set up a Gitorious account to host the git repository for Kantter. Feel free clone or download it, but be warned, as it  very pre-alpha quality at this stage. Comments, suggestions and/or patches are welcome (though I have a fair list of each myself). You may also want to have a look at the requirements page to get you going.

Also, in addition to yesterday’s post, Twitter have now decided to add an extra step to the OAuth process. After the User (Me) gives approval to the Service Provider (Twitter) for the Consumer (Kantter) to make authorized request, the Service Provider provides the User with a PIN to give to the Consumer which is then used to validate the user’s key/secret pair.

It is a bit annoying that they decided to make a change just after I got everything working, but fortunately it was only a small one, and was easy to add support into Kantter.

Kantter v0.2 – now with OAuth

Wednesday, June 10, 2009 0:18

After a bit of playing around, I finally managed to get OAuth authorization working, and integrated with Kantter. The fruits of my labour can been seen below with my very first twitter status update using Kantter.

kantter v0.2

I was too lazy to actually read the documentation about how OAuth works, but I found a decent python oauth implementation, complete with an understandable example of a twitter client. From just looking at the code, this is how I’ve interpreted OAuth works:

  1. A Service Provider (Twitter) issues a Consumer (Kantter) with the consumer’s key/secret pair
  2. The Consumer (Kantter) uses the consumer’s key/secret pair to sign a request
  3. The Consumer (Kantter) then sends this signed request to the Service Provider (Twitter) to request approval to do stuff on behalf of the User (Me)
  4. The Service Provider (Twitter) then send back a key/secret pair to be associated with a User (Me)
  5. The Consumer (Kantter) prompts the User (Me) to approve the the request with the Service Provider (Twitter) using the user’s key as a reference for the request
  6. The User (Me) approves the request with the Service Provider (Twitter) – ie. logs into twitter, supplies the user key, and approves the request
  7. All further requests from the Consumer (Kantter) to the Service Provider (Twitter) are  signed by both the consumer’s key/secret pair and the user’s key/secret pair

Therefore the Service Provider (Twitter) trusts the Consumer (Kantter) based on the consumer key/secret pair. Based on this trust, the Service Provider (Twitter) issues key/secret pair to the Consumer (Kantter) to be approved for use by the User (Me) – the user’s key/secret pair is associate with both the Consumer (Kantter) and the User (Me). Finally, by having the User (Me) give approval to the Service Provider (Twitter) for the use of the user key, any request that is signed using both the consumer’s key/secret pair and the user’s pair is considered a valid request from the Consumer (Kantter) on behalf of the User (Me).

So as long as Kantter knows my key/secret pair, I can interact with Twitter without ever having to supply my credentials (or until I revoke the key/secret pair).

Unfortunately this may have some security implications if the key/secret are stored in a config file that is viewable by other people. It also means that using Kantter for multiple Twitter accounts won’t be as simple as supplying a different username/password when the application starts.

Things to consider later. For now I’m just happy that OAuth is working

Kantter v0.1

Saturday, May 30, 2009 1:30

For a while I’ve been using TTYtter to easily view my stream of twitter updates on a console, and make the occasional update. It is a nifty little tool, but I have found it lacked a few things that I would like in a client. Last week I spent a little bit of time playing around with Urwid (a python console UI library) and started trying to put together my own client called Kantter.

Kantter using the public timeline

Kantter using the public timeline

Kantter currently only fetches updates from twitter, but does some highlighting of @people and #hashtags. There is also some basic filtering functionality that currently works with hard coded-lists. Finally it also has tab completion for @person using the your current list of followers.

The next step is to get OAuth working, so twitter updates can be made, and then I’ll start moving some of the hard-coded settings into configuration files so other people can try it out. Finally the interface will probably need to be cleaned up a bit (ie. actually put the status bars to use).

Savage Chickens

Wednesday, May 27, 2009 13:21

I think it was my sister who may have initially pointed me towards Savage Chickens, but I still stumble across the comic every now and then. I like the simplicity of drawing a cartoon on a single sticky note, and they are generally pretty funny.

That’s how I roll.

Monday, May 25, 2009 22:35

Since this years linux.conf.au I have have started seeking out more techie talks and lectures from conferences that I can find. With this in mind, last week I had the chance to go see two presentations give by some guys from the W3C.

Ivan Herman talked about the Semantic Web, which seems to be mainly about defining ways of adding meta-data to information on the web, in a way that a system can link otherwise abstract  information to other bits of information in a way they a person might do intuitively. I probably missed the point a bit, as the talk was very general and didn’t contain too many examples or specifics. I think  Ivan described it as something like “mash-ups on steroids” which sounded rather suitable. It isn’t something I have a real keen interest in at the moment, but a few ideas/projects I been playing around with lately tend towards that direction, so it will probably be something I’ll end up looking into in more detail in the future.

The second talk was by Mike Smith about HTML5 and a little bit about XHTML2. While I was expecting it to be a talk about new and shiny toys that developers will soon be able to play with, it ended up being more about the aims of the standards, and the difference between HTML5, XHTML2, and the relationship (or lack of) with their predecessor. While slightly disappointing that the talk wasn’t what I was expecting, I did find it rather interesting as he went through a bit of the history of the HTML standards and why things have ended up they way they are (“politics”), and why things won’t change a great deal going into the future (backwards compatibility).

While it would have been good to hear a bit more technical detail about the various technologies, they were still interesting talks giving the rather limited time they had, and I also managed to score myself a t-shirt (thanks to to Ivan, who couldn’t quite answer one of my questions).

w3ctshirt

Piwik – Now I’m stalking YOU!

Thursday, April 23, 2009 17:53

The web stats stuff at my work is a bit of a mess at the moment, and as the gaffer tape is still (just) holding it together, I’ve been putting off reworking it. Knowing this is something that would good to get fixed up, one of the guys at work stumbled across Piwik and suggested I have a look at it.

Piwik is essentially an open source replacement for Google Analytics, with the added bonus that all data that is collected belongs to you, and not Google. The trade off is that you must have access to a MySQL database in order to record the stats.

I haven’t really played with with Google Analytics much before, because I’m not that fond if them collecting data on my behalf to use for their own means, so I can’t really compare the two. Don’t get me wrong, I think Google probably provide a very good service if you don’t have the means to collect your own data, but seeing as I do, Piwik is a much better choice for me.

I am still deciding if it will fit in with what is needed for the websites at work, but in the mean time I thought I would give it a go on a few of my personal websites. So far it seems rather nifty, and produces some nice looking charts and stats.

While it looks like a promising project, it is a little lacking in a few areas, like user and site management. It also relies heavily on Flash to display a lot of the charts. Seeing as the charts are not overly complex, it might be nice to see if they could be replaced by javascript equivalents (and make a Linux user like me a bit happy).

I’ll definately keep an eye on its progress, and might even get around to having a look through to code, to see if I can help to improve things.

A touch of green, grey and… jerrykan

Friday, April 10, 2009 22:19

I found a rather nice looking theme made by someone over at Gauson Design. It is a fairly nice and simple design with some colours I rather like. The original theme had a rather large header image which looked very pretty, but unfortuneatly I wasn’t really wanting to waste a large amount of space on the tree. So a quick crop, and insertion of a jerrykan, and some tweaking fo the column widths, and I rather happy with it now.

Hopefully the original creator won’t mind too much, otherwise I’ll have to go looking for something new.