Steve Freeman Rotating Header Image

Personal

Help with Ruby

_Update_ “RubyfulSoup”:http://www.crummy.com/software/RubyfulSoup/ is not the fastest code in the the world, but it seems to do the job.


So, I finally scrambled up on the Ruby bandwagon and I’m intending to use it to demonstrate the benefits of scripting languages in an upcoming lecture. I’m developing the examples and gradually coming to terms with the corners of the syntax, when I find a showstopper.

I want to scrape a web page that includes tags that are not closed properly. All the Ruby HTML/XML parsers I can find fall over at this point. I’ve implemented the exercise in (gasp) Java, which is a worse tool (right?) but has fault-tolerant parsers available.

This has to be a really common scripting task, so I must be missing something. Can someone help me out?


P.S. and a Happy New Year.

We went live this weekend

The system I’ve been working on for almost a year went live this weekend. Hooray!

We had a few changes to make on Monday, which we turned around within the day, and since then (touch wood) no show-stoppers. The changes have mainly been to do with discovering effects on downstream systems that we haven’t been able to spend enough time with. The really hard part about Enterprise Systems is finding the _end_ in “end-to-end”.

We had to shed some ballast to make the date, but it works, is sufficient, is covered by unit and FIT tests, and we’re already working on enhancements. We got there without last-minute crises or desperate hacking.

Perhaps this XP stuff can get a bit dull sometimes…

[AYE] Introverts and Extroverts

I’m at the “AYE”:http://www.ayeconference.com/ with a number of friends and colleagues, such as “Duncan Pierce”:http://duncanpierce.org/, “Alan Francis”:http://www.alancfrancis.com/, and “J. B. Rainsberger”:http://www.diasparsoftware.com/template.php?content=speaking.

The first session I went to was about how introverts and extroverts interact (badly) and how to mitigate that; of course, the IT industry is heavily biased towards introversion. It turns out that introverts and extroverts are actually wired differently in the brain, so it’s not just a matter of style. The very short version is that introverts prefer to sort things out in their head before speaking, whereas extroverts sort out their ideas by talking.

One of the better parts of the session was a pair of fishbowls where each side discussed in public their experience of interacting across the divide (of course, the extroverts interrupted more). What this made explicit was that the usual result of a conversation is that extroverts wonder if there’s anyone home since they don’t seem to get any feedback, whereas introverts want the extroverts to please _shut up_ while they think things through. Also, extroverts tend to view interruptions as a sign of participation, whereas introverts view them as just rude. The possibilities for misunderstanding are endless.

During the initial discussion, I noticed that a lot of people talked in terms of their relationship with their spouse, so we took a show of hands and a good 3/4 of the group were hooked up with someone from the other side of the divide. This seems like a fundamental division to me.

Create your own Web 2.0 company

Create your own Web 2.0 company.

My new company is Infelino which specializes in rss-based shopping via instant messaging.

via apophenia

A busy November

I seem to have ended up committed to quite a lot in November. Here goes:

* 2nd, “Story testing with FIT”:http://bcs-oops.org.uk/cgi-bin/view/SPA/StoryTestingWithFIT, BCS SPA Event, London. With Mike Hill
* 18th, “Responsibility-driven development, test-first”:http://www.xpday.net/Xpday2005/ResponsibilityDrivenDev.html. XP Day Benelux, Rotterdam
* 28th, “Getting to know your customer”:http://www.xpday.org/sessions.php#GettingToKnowYourCustomer, XP Day London. With Andy Pols
* 29th, “Before Iteration Zero”:http://www.xpday.org/sessions.php#BeforeIterationZero, XP Day London. With Nat Pryce
* 29th, “Storytelling with FIT”:http://www.xpday.org/sessions.php#FIT, XP Day London. With Mike Hill

So, right now I’m learning a lot about Apple’s Keynote software…

See you there.

Speaking at JAOO

I’m at JAOO in “Aarhus, Denmark”:http://maps.google.com/maps?q=aarhus+denmark&spn=0.094083,.236137&t=k&hl=en

With “Nat Pryce”:http://nat.truemesh.com, I’ll be presenting our talk on “Embedded Domain Specific Languages”:http://www.jaoo.dk/tracks/show_track.jsp?trackOID=1

Miles Whitehead

Today I went to the funeral of Miles Whitehead, who died of cancer.

A lovely man, very funny and very bright. I wish I’d spent more time with him.

A metaphor I won’t use again.

One of the features of getting older is that you start to experience the metaphors we use in everyday speech, like “being left holding the baby”.

On December 26th, I was in Penang, Malaysia checking into a solid Victorian hotel in Georgetown, having travelled over from the other side of the island. While we were waiting, several waves hit the stone seawall. The final one was 2 metres high, made the building shake and splashed over the trees. For us it was an inconvenience, the flood closed the kitchens for a while. We didn’t realise how serious things were until we opened the papers the next day. Had it been two hours earlier, the road would have been closed. Had it been a day earlier, we might have been near the “wrong” beaches.

I don’t think I’ll use that phrase from the dot com days about “riding the tsunami” any more.

[grid::fatherhood]

So, a whole “bunch of dads”:http://www.google.com.my/search?q=grid%3A%3Afatherhood have contributed to a “Gridblog”:http://www.ashleyb.org/archives/000188.html on the question, _What advice would you have liked to receive when you were a new or expectant father?_. Here goes…

*Allow enough time* You cannot believe how much time kids take up, especially early on, until they learn to entertain themselves (then you have different things to worry about). Remember when going out meant putting on your coat? A 2 year-old can throw a tantrum just before the train is due to leave. A 5 year-old can string out putting on shoes for 30 minutes.

*Career or Family* Think this one through. Traditionally guys didn’t have a choice. Now, as the existence of this list suggests, we want a slice too. Unfortunately, almost all companies are run by guys who’ve picked the first option and so find it hard to take the second option seriously. An astonishing number of companies think this is a gender issue.

*Tellytubbies, learn to love them* They’re pretty cool, actually. “CBeebies”:http://www.bbc.co.uk/cbeebies is one of the shiniing lights of the BBC and as a good an argument as I can think of for not leaving everything to the market.

One more thing, nappies (diapers) have a couple of strips that should be folded out when you open them. It took us a week of laundry before my wife’s mother turned up and showed us.