elliot's blog

OSCON 2005 (part 3)

(I wrote this on Friday night, after the conference, but am only just getting round to posting it.)

Since part 2 of my report, I've attended the remaining sessions at OSCON. These included a very funny (but ramshackle) musical/puppet/performance art piece by why the lucky stiff. He is ostensibly a Ruby person, and wrote the Poignant Guide to Ruby, but his presentation was almost like a surreal stand up, with some hilarious satirical cartoons about how fashionable Ruby has become, and a song about Ruby syntax. There were several Ruby sessions at the conference, all of which were packed out (I was turned away from one because it was too full!): a sign of Ruby being on the up and up, largely prompted by the success of Rails. This is pretty much deserved, though I think there is a danger of over-hyping. Having said that, I bought the new Rails book, being a fashion victim myself. The content is a bit scant, but there's some useful reference material and examples in there.

Other sessions were varied and good. I particularly enjoyed the Howtoons stuff (cartoons explaining how to do "hardware hacking" with everyday items). The presenter showed lots of entertaining videos of children making bottle rockets, riding hovercraft built from vacuum cleaners, and firing marshmallows at each other. Miguel de Icaza did a reasonable presentation on Novell's new plans for the desktop, and did some Xgl demos (apparently it will be in Suse Linux 10, due in October - Miguel was running his whole desktop, including OpenOffice.org, off of it); while impressive, Jono and Paul played me videos of this in the office a couple of months ago, so nothing too exciting. Danny O'Brien did a deadpan funny "On Evil" talk. Ben Hammersley and Tim Appnel did an inspiring (though slightly self-obsessed) run through 45 syndication hacks, including using syndication to show todo lists, website logs and Amazon wishlists. I also went to a so-so talk on rdflib/Zemantic for Python/Zope, a pretty dry talk on Drupal, saw a really dull keynote on Ingres (I think most people are still skeptical about CA's stance on open source), and a practical overview of PDO (PHP Data Objects). I may well start using the latter, as it looks pretty useful.

After the conference, I went to the Japanese Gardens, braving a 32 degrees centigrade heat (I thought I was going to pass out it was so hot on the way there). The garden is beautiful, but I don't think it warrants the entrance price, as it's not very big. I came back on the MAX (tram system): it's amazingly cheap, and actually free within the main part of the city.

In the evenings, I've been doing some Prolog hacking, which I haven't done for a while. I actually found it quite hard trying to remember how to program Prolog: in fact, I spent most of an evening trying to work out how to write a list permutation function and failing. The next day, I found the elegant, concise code I was trying to remember on the web:

permute([], []).
permute(L1, [H|T]) :-
  remove(H, L1, L2),
  permute(L2, T).

remove(Elt, [Elt | List], List).

remove(Elt, [H | T1], [H | T2]) :-
  remove(Elt, T1, T2).

When I used to teach Prolog, it really blew the minds of the students, as it looks (and behaves) nothing like a procedural or object oriented language. You need a whole separate mindset to write Prolog programs. But it is amazingly elegant once you grasp this, and can do some extraordinary things in certain problem domains. This week I was trying to write a Sudoku solver, and wrote the first part of it, but then lost heart as it was so ugly, and didn't finish it.

I also did some work on my Rails authentication code, modularising it and making it into a component which can be (fairly) easily dropped into any Rails application. My plan is to add some authorization code (the skeleton for this is there already), tidy it up, finish the documentation, and write some tests for it. I'm considering submitting it to the Rails community for comments once it's done. A bit daunting, but I reckon my solution is more elegant than the authentication examples on the Rails website, and the one in the Rails book.

I watched a series I've never seen before called American Dad. It's by the same people as Family Guy, and is similarly funny. The eponymous dad works for the CIA and harbours a camp alien from Area 51. There were some excellent barbs against Christianity in the episode I watched. Here's hoping it makes it to the UK soon.

I've been eating far too much crap, and sampling the many snack varieties available. Tonight I'm trying Nabisco Mixers (Cheddar). However, this is just wrong, as it contains Shreddies. Yes, the breakfast cereal Shreddies. But cheese flavoured. Wrong, wrong, wrong. I have also been eating out at the local mall (it's a long way to walk into the restaurants in town), and have sampled some lovely veggie burritos and excellent Chinese (tofu, green beans, fried rice, chow mein). I have also noted more insane food embedding, as there is an advert on TV for Cheesy Gordita Crunch: a taco with cheese, chilli and sauce...so far, so normal...but with a flatbread wrapped around the taco. Basically a taco sandwich. What is wrong with these people?

Other news I heard while at the conference: OpenAdvantage has made it to the finals of the CNet Networks Technology Awards, in the category of Open Source Initiative of the Year. This is pretty great (we're up there with JBoss), and I feel especially pleased as I wrote our entry (alongside Julia, our marketing manager).

Not looking forward to the journey back tomorrow. Plus I've got to get up at 4.30 in the morning. I really wish I'd arranged this a bit better, and gone home on Friday afternoon, as the conference finished at 2.00 p.m.. Oh well.

OSCON 2005 (part 2)

Well, the conference is in full swing, and I'm enjoying it thoroughly. There's a good mix of technical and business presentations, and some really good speakers. I've seen several by the Rails man (David Heinemeier Hansson), plus I attended his Rails tutorial, and have been really impressed by his passion and charisma. I think this is part of why Rails is successful, as it has such a vocal spokesman. Plus the talk by John Roberts of SugarCRM was excellent: he covered the history of the company, why they went open source, what's happened as a consequence, how to work with the community, and where the product/company are heading. He came across really well, as a really genuine fellow, obviously committed to engineering excellence in his product, and content that other companies are taking his company's engineering and re-selling it, without him seeing any of the revenue. He accepts this as the price you pay for the benefits of open source, which is a very healthy attitude. Some really useful insights I can hopefully pass on to our clients at OpenAdvantage.

Other highlights: an amazing talk about origami by Robert Lang; an impressive talk about identity by Michael Hardt (from Sxip), with a really engaging presentation style; a very proficient tutorial on performance enhancing PHP applications; interesting demo of PythonCard; and entertaining talk by r0ml Lefkowitz.

OSCON 2005 (part 1)

In Portland, Oregon for OSCON 2005. That was one long journey: 1 hour in the taxi from my house to Birmingham airport, 2 hours in the airport, 7.5 hours from Birmingham to Newark, 2 hours in Newark airport, then 5.5 hours from Newark to Portland. At Portland airport I got on the shuttle to the wrong Holiday Inn; so they shuttled me back, and I caught the right shuttle. Arrived here at about 10:00 p.m. local time, after roughly 19 hours travelling. I was knackered. On the plus side, I went to sleep around 11 p.m., and woke up this morning at 7:30. So hopefully my body clock is roughly on the right track.

Portland is a great city - some of the friendliest people I've ever met, very accommodating.

Holiday Inn is supposed to have free wireless in all rooms, but the signal is exceedingly weak. Air conditioning in my room, which is much needed, as Portland seems to be having a heatwave (apparently it normally rains a lot here).

Enjoyed the Saturday Market (also open Sundays) - nice, hippy-ish vibe throughout; sweet smells of incense, tie dye, stained glass, bonsai, candles. Even a bloke selling this game he'd designed called "The Real Game of Life", which included sections where you have to avoid getting sucked into a drugs nightmare. Had felafel with salad and yoghurt, plus real lemonade, for breakfast, sitting on the sidewalk. Very nice. Had a beautiful iced, blended coffee for elevenses. Lunch was iced tea (seems very popular here), potato salad, banana and a "food bar" (like a flapjack). There's even a wholefood supermarket here, which I may explore later in the week if I get a chance.

Nearly fainted when I went into Powell's book shop: it is enormous. I stayed there for about two hours. Bought lots of classic 70s sci fi. Mainly US, some US publications of British authors (John Brunner, Michael Coney); lots of Barry Malzberg I didn't have. Also got some second hand sixties Dr. Seuss books (actually Berenstain Bear books by the Berenstains, which Madeleine loves). Round the corner, I visited the technical section: I'll go back there once I've registered for the conference, as I can then get 20% discount off any purchases.

I had planned to go to the Japanese garden, but it was extremely hot, and I spent too long browsing for books. Also had to go and buy a power cable for my laptop, as I neglected to bring a US plug adaptor. I tried a couple of places in the city centre (the Powell's technical books people were extremely helpful in suggesting where I might get one), but without any luck. So I went to the Lloyd Centre mall, the biggest mall in Portland, so big it even has an ice rink in the middle. It was interesting to watch Americans at rest, out shopping for the afternoon. Managed to get a Compaq lead in Radio Shack there (again, really helpful sales people) which is 100% compatible.

While I was there, I had yet more iced coffee (it is extremely hot). I asked the sales assistant in Starbuck's "Could I have a receipt please?" and he replied "You betcha!", which made me smile. Then, on the way out of the mall, I held the door for someone who was pulling a big trolley load of boxes and he said "'preciate it, dude". Like I said, very friendly.

Later on, and I've hooked up to the free wireless in the conference hall. I have got my goodie bag, the most exciting element of which is a pocket Etch-a-Sketch, which I'm sure Madeleine will love. I saw someone with one of these on the plane on the way over, and was thinking of getting hold of one, and providence has seen fit to land one in my lap. (Another coincidence: I started reading "The Lathe of Heaven" by Ursula K. Le Guin on the plane over. I picked it almost at random before I left the UK. Turns out it is set in Portland, Oregon.) Other conference goodies: a mug, a Firefox sticker, some free magazines, conference schedule of course, course materials, a free book ("Open Source for the Enterprise": I'm sure Jono will love that one, he likes anything with "enterprise" in the title), some Yahoo! mints, and a couple of CDs. Plus a rucksack. Hurrah! I love free junk.

The worst advert on US TV: the one for Urine Gone. A spray which has "an appetite for urine"; eliminates urine stains and smells from carpets, eating it out of the lino and the wooden floor underneath it. Demonstrated by showing urine splashes on toilets using ultraviolet light, which disappear when Urine Gone is sprayed on. Surely they could have thought of a better name? Wee-Be-Gone? Piddle Away? Piss Sucker? - maybe not that one.


Cake is a pretty nice MVC, Ruby on Rails-like framework for PHP and MySQL. I've written a very simple CD manager application using it, which took me about a day; I then spent about another day writing some authentication code which plugs into it to do simple authentication against a MySQL database. I need to refactor the code a bit (e.g. make it configurable via a file) but it works OK as a first pass. (I would like authentication and authorisation to be in the core of Cake, so if I'm feeling brave I might submit my code.) If you're used to Rails, Cake is not too hard to pick up; or, for that matter, if you're used to MVC more generally. As it's in PHP, it's also fairly easy for me to extend. However, it is far less mature than Rails, and doesn't support the full set of Rails features. Plus the documentation is nowhere near as good. I think I'll stick to Rails for now, but Cake is worth keeping an eye on, and it's something I can mention to PHP programmers we work with at OpenAdvantage who are looking for a decent MVC framework.

Bits and pieces

As I have the house to myself this week, I am spending the evenings tidying up stuff I've been meaning to do for months. Namely:

  • Experimenting with using DOSEmu to run my old DOS games, including Ascendancy. (I plan to put together a howto explaining this as the DOSEmu documentation is far too complex).
  • Putting up photos of our holiday in the Scilly Isles, holiday in York, and latest pictures of Madeleine; then adding captions to as many as I could manage.
  • Fixing a few bugs in my music manager script and putting it up for download. Here's a description of the script plus links to download it.
  • Getting the latest source release (0.9.4) of gtkpod and compiling it, so Nicola (my wife) can use it with her iPod Shuffle (this version of gtkpod is the first one I've noticed which supports the Shuffle).

Ruby on Rails installation guide

I've just put up an installation guide for Ruby on Rails on XAMPP with FastCGI on Ubuntu Hoary (phew!). I thought it was worth writing this up, as I had my first enquiry from a client about Ruby on Rails last week, and get the feeling that some of OpenAdvantage's more adventurous clients might be interested in it.


TiddlyWiki is a one HTML page, Javascript-based wiki engine, which requires no server-side scripting. You basically edit a single page which constitutes the whole wiki, save it to disk, then upload it to your website (if you want it to go onto a live site). It works pretty well, though when I deleted the title for a "tiddler" (the name for a wiki entry), it disappeared into limbo, so I could no longer edit or delete it, at which point I abandoned TiddlyWiki. Could be useful for people with no server-side scripting to enable them to create a dynamic site, though. Also a good example of the pretty things you can do with DHTML.

Tagged filesystems

A friend of mine has long hankered after a filesystem with metadata. This is an interesting first pass at the problem.

Dr. Who Technical manual and Horror Top Trumps

I would have loved this when I was a kid. And why did I never have these Top Trumps? Who can resist Top Trumps where you compare "killing power" and "fear factor"? I got to these via Slashdot, where someone posted about the Ladybird computer books: funnily enough, I have a near-pristine, 1971 edition of this which someone bought me for Christmas. It's a great read.

I didn't realise I was so short

Went to hospital today for a liver test, and they decided to measure my height to work out my body mass index. I am 174 cm tall, apparently. I did a quick conversion, and it turns out all my life (since I've been about 16) I've been telling people I'm 5' 10", when in fact I am 5' 8 1/2". Either I've been labouring under a misapprehension for most of my life, or I'm shrinking. Depressing, really.

Syndicate content