Deirdre Saoirse Moen

Sounds Like Weird

Validating Markup in Functional Tests

01 November 2005

Occasionally, one finds little gems in patches rejected for inclusion into Rails. This is one of those gems.

You can take the code, plop it into your test/testhelper.rb, add an “assertvalid_markup” to the right functional test and then it’ll tell you exactly how borked your (x)html is, complete with all relevant error messages.

Note: I recommend commenting that out after you’ve gotten valid markup and only check when you’ve made major changes to the markup or are about to deploy. That way, your testing will go much faster and you won’t slam the w3c’s servers.

Thanks to Scott Raymond.

Since putting the code here broke my layout (and my mother complained about that), get the info from the Rails wiki page.

Read More


29 October 2005

So here I am at TagCamp, and I was reminded of an upcoming talk I’ve got for the Silicon Valley BSD User Group on Thursday about Ruby on Rails. If you’re in the area and interested in finding out more about RoR, come on down. This will be sort of an intro talk, so if you’re interested in some of the more advanced stuff, I probably won’t be covering it except to give a brief nod to some of the new features in Rails 1.0. If there’s interest, I’ll show the “tag cloud and AJAX for newbies” application I’m working on at this very moment.

Technorati Tags: tagcamp, svbug, ruby on rails, rubyonrails

Read More

Why I love TextDrive

25 October 2005

For seven years, was hosted at Hurricane Electric. However, even though they were across the bay, I never really felt like I “belonged” there.

At BayCon this year, I talked to Matt Mullenweg, who suggested I look into TextDrive. I’d already heard of them, of course, but it took me a couple of days to sign up.

Turns out I signed up on their first anniversary, moving my site a few days later.

When I went to RubyConf, I had a whole bunch of fun hanging with the TextDrive staff and customers, coming back with my head reeling. This is the most fun company I’ve seen since Be. Everyone’s there because they really want to be. Imagine that.

The kinds of things that impress me aren’t the little things so much, but rather the openness.

Best move I ever made.

Thanks Matt, I owe you a beer. Good luck in your new venture.

Read More

Getting in the Zone

24 October 2005

I’ve been working to re-discover what music gets me into the right zone for certain deep-concentration work (including programming).

My iPod shuffle just reminded me of a sort I’d quite overlooked: slack key guitar, particularly the Hawai’ian Slack Key Guitar Masters CDs.

For those of you who know about my obsession for things Hawai’ian, you aren’t surprised, are you?

Personal favorite? Ledward Ka’apana, Radio Hula.

Read More

Deirdre's Gluten-Free Flour Mix

22 October 2005

As many of you know, I can’t eat wheat, rye, barley, or, in most cases, oats.

This morning, Rick was going to make crepes, but the container of gluten-free flour I had was empty, so I had to mix some more.

Bette Hagman, in her book The Gluten-Free Gourmet proposed a 9:3:1 mixture of White Rice Flour, Potato Starch (not potato flour, which is gross), and Tapioca Starch.

However, this mix is extremely caloric and low in protein, so I’ve been substituting for the last few years. Here’s what I used today:

1 cup soy flour
1 cup chickpea flour
1/2 cup white rice flour
1/2 cup buckwheat flour
1 cup potato starch
1/3 cup tapioca starch

If you can’t tolerate soy, then up the chickpea and white rice flour by 1/2 cup each and omit the soy.

Because of the higher protein, my mixture rises better than the original Hagman recipe. It can be substituted directly for any quickbread (e.g. banana bread) recipe, though I still usually use an extra egg. The recipes for yeast breads are still quirky, though.

Read More

SubEthaEdit and Conference Notes

16 October 2005

One of the features commented upon at RubyConf was the high percentage of people using Macs: approximately 80%. Really!

So, being enterprising folks, some people started conference notes for each session in SubEthaEdit, then sharing them for others to edit via Bonjour. Since many people had Bonjour and SubEthaEdit open, several people jumped in to add their own tidbits to the notes, creating a richer experience than if any one person had written them.

I got to co-write session notes with Martin Fowler (whose preferred color was green, fyi). I think that’s pretty freakin’ cool.

Read More


15 October 2005

So, here I am, at 2 a.m. on Sunday morning. Couldn’t get to sleep, so I got up for an hour, then tried to go to bed.

I hear one of those sounds one should not hear — wet, gurgling, splashing sounds. Yep, toilet overflowing.

So, naturally, this means I needed to get up again, get fully dressed, call the lobby, then wait. They didn’t have a plumber on-site, so that means that I get to throw a pile o’ towels onto the floor of the bathroom and hope that the water doesn’t land in the room below and ruin their night as well.

Fortunately for me, I have two bathrooms.

Last night, I had finally managed to get deeply asleep when the smoke alarm goes off. At 4:42 a.m. I bolted out of bed landing in a standing position (rather like a penguin shooting up out of the water). I’m not actually certain that it was my smoke alarm, but that’s what it sounded like. The noise stopped before I could figure out exactly where it was.

Having been in an office building that had a fire once, I naturally couldn’t get back to sleep, so I was tired all day Saturday.

Oh, and did I mention that this is my second room? Yes, it is!

You see, I was booked into a suite. I’ve worked in the hotel industry, and I’ve got to say, I’ve never heard of a second-floor walkup suite outside of, say, Santorini.

So, they sort of drew an arrow toward the back of the property when I checked in, so I trundled my luggage down there, looking wistfully at the stairs. I decided to take my handbag up first, checking to make sure I knew where the room was before lugging my baggage up the stairs.

That was a great idea, as it turns out because when I went to swipe my card in the gate, I only saw a red light. Tried the other card. Same deal. Naturally, I’d left the hotel info at the bottom of the stairs (in the top pocket of one of my bags), so I went back down the stairs to call the hotel from my cell. They sent a guy to help me. His keys wouldn’t open the gate either, so he went around the other way. Yes, the shorter way no one had mentioned earlier.

Turns out the battery had fallen out (!) of the card reader “a few minutes ago.” Hrm.

Much to my disappointment, the room wasn’t really anything like a suite. It was a double hotel room with two large beds. In other words, no sitting area, which is pretty much what defines the word “suite” for me. Naturally, they were sold out, so there wasn’t any place to move me that night. However, they did say that they’d move me the next day. So, when I left for RubyConf’s Friday morning session, I made sure that everything was back in the suitcase for the move.

When I got out of the day’s session, I found that they had moved me to another room that was really a suite. It even had elevator access. And, for a brief moment, I was happy.

There were, however, elevator issues. At the end of the day, the elevator didn’t ascend. Apparently people hadn’t been very careful about the maximum capacity of four people and had overcrowded the elevator, causing it to sulk and fail to respond to commands. This isn’t unusual for elevators, and is one of the reasons that science fiction conventions (the smart ones, anyway) have “elevator party hosts” to prevent overcrowding and unhappy elevators.

They went to reset the breaker for the elevator and it happily carried me onto my destination.

Anyhow, all this is a very long-winded (45 minutes for me) way of saying that if I look ragged and tired tomorrow, I have good reason.

I just hope I’m able to get an actual night’s sleep tomorrow night, you know?

Read More