<< March 2007 May 2007 >>

Thursday 26 April, 2007
#

Discovered today that I have a favourite train. Who knew you could even have such a thing? It's the 07:45 from Birmingham New Street to London Euston. Yes, New Street isn't exactly a jewel of a station so it's not a grand start. Euston, while admirably usable, is second only to Liverpool Street as London's least attractive station, so journey's end isn't especially exciting. But the bit in between! The 07:45 makes only one stop, at Birmingham International, then it charges, charges I tell you, to London, timetabled to arrive at 09:06. 81 minutes! And this morning it was earlier, because by 09:06 I was in Camden Food buying yogurt and coffee. 81 minutes!

I can leave my house in sunny Moseley, cycle to the station, hop on the train, get the tube across London, and be at my client's office near Waterloo in a shade over two hours. That's 120 miles by road, and I can do it in 2 hours. I might not have a flying car, but tell me I'm not living in the future.

Ken [e] said That Google estimate by road of 2hrs23 is clearly for a 3am journey. In the real world, by car, that mission is surely going to consume 3hrs minimum, on a good day?

If you're living in the future, then what about the citizens of France, or Japan? What kind of far-flung alternative epoch are they in? You'd get that total journey time down to much nearer the hour.

digress/

UK! Spend more on rail! In fact, divert Olympic spending to the bloody rail network! Pound-for-pound the benefit to the economy as a whole would surely be better, and more fairly distributed.

/digress [added 27th Apr 2007]

anonymous said Reminds me of the time you cycled to Norwich station and jumped on a train only to come back and find your front wheel nicked :) [added 27th Apr 2007]

I'd been up to interview at Hull University - spent bloody hours on the train that day. From Norwich to Peterborough, (via, if I remember, March and Ely) then onto the Inter-City to Doncaster (one of the nation's more desolate stations), then the final leg on the stopper to Hull. Still, managed to arrive early enough to walk from the station to the university - about 3 miles. Had a wander round, was interviewed by Dr Hall (not the world's most strenuous interviewer), walked back. Sat next to a fantastically pretty woman on the chug back to Doncaster. Was so taken I bought her a sandwich as kind of "I love you, even though I'll never see you again" present. Back to Peterborough, through the fens, to Norwich as dusk fell.

Recovered my bike, minus front wheel and quick release spindle from the rear wheel, from the fence. I was, still am really, furious about the spindle. It was my first encounter with a really pointless crime - there is nothing, absolutely nothing, you can do with a second-hand spindle. Nicking one only serves to annoy. Carried my bike across the city to the police station to report the theft to a rather bemused desk sargeant, pausing briefly on the way when a drunk stuck his out of a car window to let me know that, gosh! look, I seemed to be missing a wheel, I hadn't noticed that until you pointed it out, how could I have been so stupid. Tossbag.

It was half-term, which I thought significant. I took against school children for quite some time afterwards.

If I leave my bike for a long period now, I often use two locks. That's probably overkill, as kids these days don't give tourers a second look, they want fancy-pants city bikes with fat wheels and big suspensions.

[added 27th Apr 2007]
smellygit said You want some of these http://cgi.ebay.co.uk/ws/eBayISAPI.dll?ViewItem&item=160109616067&ssPageName=MERCOSI_VI_ROSI_PR4_PCN_BIX_Stores&refitem=200104287984&itemcount=4&refwidgetloc=closed_view_item&refwidgettype=osi_widget

Though when I came to fit one this week I found my quick release had seized so I couldn't get it undone anyway... [added 28th Apr 2007]

Well, I needed them then but that was 20 years ago. Now, nobody cares about nicking stuff off my bike, what with its tiny rolling resistance and low weight, and would rather heft about the bike equivalent of a 4x4. [added 28th Apr 2007]
Ken [e] said The only time I find the mountain bike useful is when I'm using the toddler-seat behind me. It's got no suspension but leaving the fat rear tyre a little softer at the back does help the flex / jolting that a high heavy load on a marginal chassis causes. When I'm on my literally-freecycle Peugeot racer, I can deal with the impact on my aging derriere by going light for a moment or two. If I did that with the nipper on t'back we'd both be in the gutter! [added 3rd May 2007]

[Add a comment]
Wednesday 25 April, 2007
#accu2007 Aftermath: Brains!

One of the curious little themes of this years conference was brains. What are they? How do they work? Can we monkey with them?

In my session on iterators, in amongst all the stuff about how badly most libraries are designed (if indeed they are designed) and blurred language/library boundaries, I talked explicitly about the Sapir-Whorf hypothesis. Basically, the Sapir-Whorf hypothesis says that the language you speak shapes your habitual thoughts. I was arguing that we shouldn't let the programming language and libraries we use blind us to alternative ways of expression. In the particular case of iterators, it was ok to write our own and we didn't have to rely solely on the standard library, because the standard library was actually holding us back. I should have laboured on that a bit more I think, because it's something that stands repeating.

Anyway, so I'd spent a bit of time talking about how our brains work. Phil Nash did a terrific session on a grab-bag of neuro-linguistic programming and cognitive psychology techniques. Identifying focus, how to trigger states of mind, speed reading, and so on. It was great, really enjoyable. In his endnote Dan Saks, one of C++'s bigger brains, talked about truthiness. Of course the term truthiness was coined as part of a satirical attack on Republicans in general and President Bush in particular, but it does capture quite an important idea - that people will prefer the to following their feeling about something over the objective reality. Saks illustrated this with examples from his congressional election campaign, and a discussion about the preferable placing of the C++ const keyword. He made an interesting and important point I think, and it's a shame the following discussion focussed rather tightly on const rather than on the significance of his argument on programming in the round.

Enthused by all this brain talk, I ordered the first two pop-sci cognitive psychology books I could think of; Mind Hacks and Mind Performance Hacks. The former is about how the brain works, while the latter is about using your own brain better. Mind Hacks is enjoyable and easy reading. I took over some code which was originally, I believe, co-written by one of the Mind Hacks co-authors. I like the book better :)


[Add a comment]
Tuesday 24 April, 2007
#[linkfarm] Tales of maths and science: a career in science and communication - In his talk, Johnny Ball will discuss tales of heroic scientific characters he has featured over the years and how he makes their achievements still relevant to present day students and situations. He'll then round off with some personal views of how we might ensure we send the right messages to encourage ever more bright young minds towards careers in maths and science.
Public Lecture, May 1st at the The Royal Society. Might have to schedule a "client visit" and stay on :)

[Add a comment]
#[linkfarm] Markup's Dirty Little Secret
[Add a comment]
Monday 23 April, 2007
#[linkfarm] Sinclair ZX Spectrum: 25 today - The machine that really launched the UK IT industry hit the streets of a depressed Britain on 23 April, 1982.
Changed my life. Yours too.

   * Ken [e] said I'm still trying to work out how my impoverished dad managed to buy me one for Christmas back then. It was £125 or so, what's that in today's terms? Around £650?? For an effing Chrimbo pressie? I wouldn't do it... ;)

For some reason, two Christmases later he followed that with a double-whammy for my brother and I - an Acorn Electron, and an Amstrad CPC464 respectively. Do the 'math' on that one.

I hit a low point some months after that by buying an surplus-stock end-of-line Color Genie for £40, thinking in some bizarre way that I could interface its (slightly) better graphics and 3-channel sound with the Speccy. Needless to say this was a stillborn project.

Still, went on to lash a SpecDrum synth, 8bit sound sampler and centronics printer interface to the back of the Speccy - AT THE SAME TIME!! Remember the smell the Speccy made? And the swarm of bees noise as it went about its business? Well, with this lot on the back, the smell got decidedly worse, and the bees turned into hornets.

Fun? Hmmmm, maybe. 25 years later I can't help but remember my racing bike serenely rusting away in the back garden while all this was going on. [added 24th Apr 2007]

   * allan@allankelly.net said Proof that I was never into the latest tech. For some reason - don't ask me why - I can remember that we bought a ZX-81 a couple of weeks before the Falklands invasion. Crazy how my little mind connected the two events. Still, has I known that the Spectrum was just around the corner we would probably never have bought the ZX-81 and I certainly wouldn't have got a BBC Micro (model B) about 18 months later. Now that was a machine... [added 24th Apr 2007]

[Add a comment]
#[linkfarm] Program Names govern admin rights in Vista - "If Vista sees that you have created a Microsoft Visual C++ project with install in the project name, then that .exe will automatically require Admin Rights to run. Create exactly the same project, but call it, say, Fred, and the problem disappears," he explained. "Vista's security isn't just concerned with what an .exe is doing to your PC, but what it's actually called."
Large software companies, by necessity, employ any number of people who may well have lots of brains but rather lack experience. When you read something like this it makes you wonder if this particular feature was written by one of those employees, and if so what the hell was their team lead doing?

[Add a comment]
Friday 20 April, 2007
#Attention Code Generation Tool authors

It is extremely, let me repeat extremely, important that you code generator should include the name of the source file or files as part of the Don't edit this, it's generated warning at the top of the output.

By way of a negative example, this

//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:2.0.50727.42
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated> //------------------------------------------------------------------------------

//
// This source code was auto-generated by Microsoft.VSDesigner, Version 2.0.50727.42.
is woefully inadequate.


[Add a comment]
Thursday 19 April, 2007
#

Still struggling with physical side effects of the conference. It's something of a cliche to say so, but there's quite a lot of late night drinking and general carousing. It's to be expected really - it's a bit like a family Christmas (but a family that really likes each other). Often it's the only time people see each other from one year to the next. There's a lot of catching up to do, not to mention all the new people to meet. Pete and I long ago realised that many people went to comic conventions to meet and drink, rather than to fill gaps in there run of Simonson Thor's. The ACCU conference has a similar social buzz. This year, though, was even more boozy than most.

Large-Scale C++ Software Design by John Lakos is one of the early classic books on C++. It was among the first, if not the first, to really address the difficulties that arise when working on large code bases. It provides a variety of solutions to those problems and the trade-offs between them. Much of what it talks about applies beyond C++, but at the time Java and C# were but a twinkle in their corporate sponsors' eye. The book remains relevant, some 11 years after publication, and really has no serious competitor. It is, without a doubt, an important book and if you work with C++ or large systems then you should have read it. It is, however, as dry as dust and I found it very hard work. Canvassing suggests I am not alone.

John Lakos spoke at accu2007. The mental model I had of a tall-ish, quiet, perhaps slightly shy academic were exploded when I realised the scurrying, ebullient, pugnacious even, New Yorker who kept buying drinks was Lakos. Smartly dressed, combative in conversation, fiercely clever, seemingly indefatigable, Lakos was one of the surprise hits of the conference.

As he bought another round at 4am on Saturday, he declared "I love this conference. This is great". Hope he comes again.

Ewan said

Ah, John Lakos... He seems keen to come back, and I'm sure the hotel hope he (and more importantly his expense account) does too.

After drinking far too much of his tequila the previous night, I escaped to bed (relatively) early on Friday. I did wake up around 6am Saturday morning, and wandered through to reception out of curiosity.... yes, Lakos was STILL GOING, bottle of tequila on the table before him, holding a serious and surprising cogent debate on value semantics with a fading Jonathan Wakely. I went straight back to bed for another couple of hours.

[added 20th Apr 2007]

allan@allankelly.net said Funny, my mental model of John Lakos was very similar. Are we sure it is the real John Lakos?

I was really looking forward to meeting him so when he sat opposite my at Pizza Express I was in awe. Then I realized that Kevlin was next to him and not only had Kevlin met his vocal match but that the two of them were disagreeing on some finer point of C++. I quickly concluded that for me the chances of speaking the demi-god were decidedly slim so I did the honorable thing and left.

[added 23rd Apr 2007]


[Add a comment]
Wednesday 18 April, 2007
#accu2007 winding down

Spent Sunday as basically a vegetable, been back at work two days, brain is still buzzing from accu2007. As part of my initial decompression, I've updated and corrected the slides from my presentation on Java Iterators. While I was talking about Java and the Java libraries in particular, you can apply what I said to .NET Enumerators and, perhaps, Python iterators (although you might be considered to be writing Python in a bit of a funny way). I thought it went well, and I had some people there who I hadn't expected and was quite flattered they'd come. To be honest I would have liked a few more, but the programme this year was so, so strong I should probably consider myself lucky to have had anyone.

For these slides, I've added syntax highlighting on the code (woo!), added a couple clarifying bit to the notes, and corrected some code. It was pointed out to me by someone who's name I neglected to take that one of my code samples didn't work as advertised, so I've fixed it. It was a good catch too, because I didn't leave it hanging around on display for very long. Thanks to him, anyway.


[Add a comment]
# Things to read in the next few days, if I get round to it ... Paul Graham thinks Microsoft is Dead, lots of people think he's worth listening to but I thought his book could have done with fewer reminders of how he's really rich and using rich as a synonym for clever (and if that were true Bill Gates would be the cleverest man in the world, dead company or no). Couple of pieces on the new GPL draft - 1 and 2. Is All of Microsoft Dead or just bits of it? My chum Pete sticks it to a couple of local politicians who really should know better, especially since Hemming claims to be "one of the world's leading internet technical experts and programs in eight different programming languages". Jobs at Canonical/Ubuntu - my friend Tim says I should think about one. Genshi, Python toolkit for stream-based generation of output for the web. Antsim, code from a talk I went to last week. Oxford Geek Night 2, they got on telly! Taking freedom further - Mark Shuttleworth looks forward. I met him last week, I said "Hello Mark", he said "Hello Jez" - not bad for starters :)
[Add a comment]
Tuesday 10 April, 2007
#[linkfarm] How to Write a Spelling Corrector
[Add a comment]
Saturday 07 April, 2007
#

Daniel was invited to one of his classmate's birthday party today, a swimming party at Moseley Road Pool. Natalie had volunteered me to go in the water to help keep the child/adult ratio on the right side of legal.

"You don't have to stay while they're having their party food", she told me. "You could pop into the city centre and go to Nostalgia or something." I couldn't really believe what I was hearing. Natalie was inviting me to go to the comic shop, with the clear implication that I should spend money there. I can't remember Natalie ever refering to a comic shop by name before, let alone virtually instruct me inside. Clearly our marriage is entering some new and mysterious phase.

I played it cool. "I could ..."

Ken [e] said A suspicious man might expect some kind of quid pro quo :) Big holiday plans this year? [added 8th Apr 2007]

[Add a comment]
#

Having seen Daniel and chums safely installed with party nosh, I hopped on my bike and sprinted down to Nosties to score the latest in graphic literature. To my surprise and delight, Bryan Talbot was there signing copies of his new book Alice in Sunderland. So I bought a copy. It would have been rude not to. "I hope you enjoy it", he said quietly as he signed the flyleaf.

One does not rattle through a 300+ comic page in an afternoon, especially while the cricket's on, and you have your first-born looking for assistance with a computer game. I did flick and feel though. It's a handsome package. Large, heavy, solid in the hand, with a wild collection of art styles, colour, black & white, collage, paint. It looks great, and I'm really looking forward to reading it.

The book's reference credits include Andy Kronky Kru's Obadiah Oldbuck essay on BugPowder. While Andy's vast collection of pages caused Pete and I some exasperation back when, it's a significant and important body of work. I'm glad Pete offered Andy the space, and I'm happy to pay for hosting (although given the pathetic weakness of the US dollar at the moment, I can't pretend that's any kind of hardship).


[Add a comment]
Friday 06 April, 2007
#

Because I should be working, I did something else instead. Here's a map of Moseley & Kings Heath, Acocks Green, Springfield, Sparkhill wards. I've plotted where each election candidate lives. Each ward has one candidate who lives way out of the ward. Can you guess which party's candidate?

Best response from Moseley Free list so far
I do hope that if anybody does actually get canvassed by any of the BNP that they regale them with "You're not from round here though are you" and "Go back to where you belong"
[added 6th Apr 2007]

[Add a comment]
Monday 02 April, 2007
#

Uploaded the slides for my talk Find the utility in a java.util.Iterator which I'm presenting at the ACCU Conference a week on Wednesday afternoon. My speaker notes are in there too, so it should make some kind of sense, and any suggestions are welcome.

Going through it again now it seems to be awfully code heavy, although that was part of the point. I'm hoping my cheerily enthusiastic and hand-wavey delivery will illuminate rather than obscure, and thus compensate for the lack of on-screen action. I could still work in some pictures, I guess.


[Add a comment]
<< March 2007 May 2007 >>