I haven't edited this code in a while, but have released a new version (0.5) after someone requested my code be released under the LGPL, so they could use my Mozilla bookmark parser (in Python). So it's now all under the LGPL. All in all, it has been downloaded 500 times so far, so it's been useful by the looks of things.
Wondering what the music is in an advert? I do all the time.
Need to write into NTFS partitions from Linux, but can't be arsed recompiling your kernel? It works, really it does.
Want to contact your MP? This year must be the year when I get some things off my chest (why haven't I got a wheely-bin, and as a consequence have rats under my shed? why does no one collect my bottles and cans for recycling?).
I've been meaning to write some stuff down for a while, and have it all whirling around in my mind tank. This could be a bit random, so here goes:
This is really cool! I will definitely be printing a copy and using it on any unwanted phone callers.
I've got round to putting my ROROX (Ruby on Rails on XAMPP) project onto RubyForge. They can hopefully provide more bandwidth and exposure for it than I can on my puny blog. I notice a similar project (Instant Rails) has masses of traffic (17,000 downloads), so hopefully I can attract at least a fraction of that. I'm also going through the rigmarole of announcing it on Freshmeat, notifying the XAMPP people, and adding it the the XAMPP Add-Ons repository (phew!).
For this release, I've upgraded Switchtower, added lots of explanation, included the compilation scripts after tidying them up, and compiled Ruby with tcltklib (a small addition to the tarball size, but useful in that it provides a more full Ruby - I use it as my only Ruby interpreter on my development machine, so I need as much of it turned on as possible). I did toy with finding a way of doing two compilation methods (one with all my gunk compiled in, one stripped down) but it adds so little overhead I decided to just keep it simple.
Interesting article about how freely-downloadable music doesn't have to mean the end of people making money from music. People will pay for convenience, personalisation, and value-added, difficult-to-copy extras, even if they won't pay for music. Open source is doing the same thing for software, and the industry is recognising and responding to the trend. The music industry should take a leaf from the software industry's book.
Today I have been testing Biscuit, yet another web application framework in the style of Rails. This one is fairly lightweight and written in PHP. I got off to a flying start, and found I could do a fair amount without too much trouble (e.g. pulling records from the database and rendering them as HTML). The trouble started when I tried to do inserts and updates: as the system is centred on PostgreSQL, and I was using MySQL, the insert and update queries didn't work correctly out of the box. I dug around in the code and found that despite using PEAR::DB as a database layer, manual SQL statement construction was still going on. I fixed and generalised this using the PEAR::DB autoExecute methods, which will take an array of field values, keyed by field names, and construct an insert or update statement. This got everything working (at least for MySQL).
However, the next problem occurred with validation. I could get it to sort of work, but displaying the error messages under the fields isn't straightforward. Despite using the supplied functions for this, I didn't get very far. And at this point I gave up.
It's a fairly good, neat little framework, but it feels a bit like a hobby project which isn't really designed to work across multiple databases (unlike Ruby on Rails, which does work). Plus there are some hard-coded bits and pieces in there which ought to have been generalised out more. Another missing feature is the ability to specify which field is used for the primary key: if you've got legacy tables without an field called id, you could be a bit buggered. It's this plus other niggles (like the lack of an implementation for <form> tags, no URL rewriting built in, etc.) which has driven me straight back to Rails.
I have looked at Cake before, which is more complex, but more satisfying to use. It feels more generic, and covers more of the functionality of Rails. However, using these two has made me aware how great the documentation is for Rails. Granted, it's not perfect, but it is very, very good. Compared to this, Biscuit has a sketchy tutorial, while Cake has some fairly good documentation (though frustratingly incomplete in places). Don't underestimate the importance of documentation when deciding which open source software to use: for me, it's the number one consideration. I'd rather have a sparse piece of software with excellent documentation than something all-singing and all-dancing which I can't comprehend. Plus of course Dave Thomas' Ruby on Rails book is superb.
I'm really enjoying playing Ultracorps, and so far it's going well. At the end of turn 3, this is where I am in the rankings (out of 393 players):
Not bad, eh? Sad too, though. Plus I haven't had to deal with any real baddies yet, or opposition players (i've stayed out of their way so far).
Back from a good Christmas. Notable highlights:
As an aside, one game I really loved when I was growing up was Laserburn: an obscure, but really good miniatures gaming system set in the future, with highly detailed rules covering how laser weapons blind and maim opponents. The rules also had a good line in sardonic black humour. Any game where you can cut someone's arm off with a power sword has to be good. Nice to see that Tabletop Games, the originators of the game, are still in business, and Laserburn is still available for purchase (20 or so years after I bought my copy).
As another aside, how come Wikipedia can tell me more about the games I played when I was growing up than Games Workshop can (the company who supplied most of the decent board games in the 80s)? No sense of history, those people.
ROROX (Ruby On Rails On XAMPP) is now available for download. It's a bit rough round the edges, but at least one person has already downloaded it and successfully installed it.
Note I've put it up under my new "commercial" name we are programmers. I've decided to put my previous name nooq to one side for now. I still kind of like it, but everyone I know thought it was too obscure and not obvious to spell. So I decided to go for the extremely direct approach instead. I also bought up flickrlilli.org.uk for FlickrLilli.