June 17, 2009

Today I was rewarded by NASA for my extreme pedantry.

----- Forwarded message from HQ-Web-Comments HQ-webcomments@nasa.gov -----

From: HQ-Web-Comments HQ-webcomments@nasa.gov To: "chris@mccormick.cx" chris@mccormick.cx Subject: RE: Error on Page

Thank you for your comment. The error is being fixed.

-----Original Message----- From: chris@mccormick.cx [mailto:chris@mccormick.cx] Sent: Wednesday, June 17, 2009 11:03 AM To: webcomments@hq.nasa.gov Subject: Error on Page

Sender: Chris McCormick

subjectdropdown: Error on Page

Comments: Hi,

In this blog entry: [http://www.nasa.gov/multimedia/imagegallery/image_feature_1390.html] You say that Zircon is 4.4 million years old, when infact it's 4.4 billion years old.

Best regards,

Chris.

It helps if you read it with the voice of Professor Frink.

June 17, 2009

Whoa, this Creative Commons licensed album by Chun Lee rules so much! How have I not heard this before now? I have met Chun in person once just before he left for Taipei last year, and I already knew he was a great audio artist from the video he made with Olivier Laruelle, which is called 'Glass Cloud' and is also a song from this release. For some reason it's taken me until now to download and listen to the full album.

Anyway, it's really nice stuff. I am blown away by how much great music there is out there now released for free under Creative Commons licenses.

June 14, 2009

Prototyping is a great way of making games. You make lots of small, quick prototypes, and iterate on them to "find the fun". Scripting languages like Python and Lua are really useful in this process and there are lots of nice libraries like Pygame to assist in the process.

It would be cool to be able to include players in the prototyping loop so that your game ideas can be tried out infront of an audience and get feedback early in the process. The democratisation of game design, I guess.

I've been thinking about this a lot lately, especially as I've been going through the frustrating process of trying to get my recent gamejam entry to work under Windows. It's a pygame based game which should port trivially, but it's still a fair bit of hair-tearing work. It's not much fun to have to do such a huge amount of laborious work just to get your game ideas infront of people so that they can play them, and tell you what they think.

To this end I've been working on the Javascript game library which I wrote about earlier. Recently my efforts have been in separating it from the processingjs library into a standalone system which will run on all the major browsers. Firefox, Safari, IE6, IE7 are currently tested and working.

Hopefully you'll be seeing more links like this on here in future:

.:[ circles demo ]:.

Download a zipfile of the source of the JSGameSoup library here:

http://mccormick.cx/dev/blogref/jsgamesoup-30.zip

Or check out a branch with bzr:

bzr branch http://mccormick.cx/dev/jsgamesoup/

Patches welcome!

June 8, 2009

Another random bit of code I wrote this weekend is a set of scripts which retrieve data out of the Google universe. So far these scripts support authenticating and fetching Google Calendars, a Google Reader OPML file, and the Google Bookmarks xml file. If you'd like to get the source with bzr:

bzr co http://mccormick.cx/dev/google-services-backup/

Or download a zipfile from here:

http://mccormick.cx/dev/google-services-backup-4.zip

The code is GPL.

I like Google's services, and use several of them, but I was motivated to write these scripts after reading the following:

"Remember when Facebook recently changed its terms of service to take further control over your data? They can do that whenever they want, you know.

We have no choice but to trust these companies with our security and privacy, even though they have little incentive to protect them."

-- Bruce Schneier

June 8, 2009

This weekend I wrote a Django powered replacement for this blog which was previously running on the text-file based pybloxsom engine. Unfortunately I found the pybloxsom code too time-consuming to understand and modify, and so I've re-written it using the Django framework which I know much better. It still uses a text-file storage backend, but the code is smaller and easier to understand. You can download the source code to 'django-bloxsom' here:

http://mccormick.cx/dev/djangobloxsom-6.zip

Or with bzr:

bzr co http://mccormick.cx/dev/djangobloxsom/

The templates are hardcoded for my site, but are easy enough to modify, and the code is fairly generic. The textfile based blog data is cached so it doesn't get read from disk every time the page is accessed, so you can use something like memcached for lightning fast page loading. I am hoping to add comments, and pagination soon since these are the features I couldn't work out how to add to pybloxsom. Anyway, hopefully this will be useful to someone.