Blue Sky On Mars

Thoughts on Building Software Products

Ruby on Rails and scaling

by Kevin Dangoor

David Heinemeier Hansson has written a rebuttal to the “it doesn’t scale” argument in defense of Ruby on Rails. It’s a good, concise article that applies equally well to all of the variants of LAMP. If someone is giving you grief about scaling something in Python/Ruby/PHP/Perl or Java without EJB, David’s article and Ryan Tomayko’s earlier article provide good counters so you don’t have to write your own.

A Sparklines web service in Python

by Kevin Dangoor

Here’s a handy article that takes you through designing a convenient web service *and* provides a nice introduction to sparklines, if you’ve never seen them before. XML.com: A Bright, Shiny Service: Sparklines

CSS3 Columns

by Kevin Dangoor

Since I’m running Deer Park, I thought I’d see what CSS3 columns actually look like. Being too lazy to type a few lines into a text file, I googled and found this: Well, I’m Back: Gecko 1.8 For Web Developers: Columns. Lo and behold, that very blog entry uses two columns.

Multiple columns are nice, because you can use the full width of your media without your lines being obnoxiously long and painful to read. However, for reading on the screen I think I’d prefer to waste screen real estate and keep scrolling down vertically. It’s rather annoying to hit the end of the column and then have to scroll back up to the top to continue.

For printing, however, having multiple columns is great. For your eye to jump from the bottom of one column to the top of the next on the same page is very quick and painless.

Sure, when viewing on screen, you can get back to the top just by hitting the home key. But, on screen there is no vertical limit. Why interrupt the flow of reading for no appreciable gain?

Attention to detail in Help Spot

by Kevin Dangoor

I’ve been following Ian Landsman’s development of HelpSpot since the beginning, and it is very interesting to observe his attention to detail. Check out his latest preview. I worked in a network operations center some years back (and developed tools for them as well), so I have an idea about “trouble ticket” systems.

Ian is building software that is “subtly innovative”. If you’re entering an established market and produce something that is wildly different from everything else out there, you’ll have an uphill battle getting people to use it. What I see in Ian’s preview is that he’s providing some new ways of doing things and thinking about things that are unsurprising and natural.

Seems like a great software design strategy: unless you’re in some brand new market and you’re inventing the rules, make the overall experience follow what the user expects, but pay attention to the details because that’s where you can really improve the experience.

Trying out Firefox 1.1 (Deer Park)

by Kevin Dangoor

Since I’m primarily a Mac user these days, I was interested to learn that Firefox 1.1 has improved the user experience for Macs. Things like middle-clicking to open a link in a tab and making the preferences work more like Mac preferences do. So far, after a short time using it, Deer Park seems mighty fast. It also supports interesting things like CSS3 columns. Of course, you can’t use them because no one else in the world is running a browser that supports it, but it’s nice to see the standards support growing.

Deer Park is an alpha, though, so we’ll see if I end up running into stability problems. If I do, Firefox 1.0.5 is out and that reportedly includes stability fixes and whatnot.

CIA Leak Quotes

by Kevin Dangoor

The Associated Press gathered up White House spokesman Scott McClellan’s statements about the CIA leak. “On the record” can be a beautiful thing sometimes. As I understand it, government press conferences are public domain, so I’m including the quotes here:

Sept. 29, 2003

Q: You said this morning, quote, “The president knows that Karl Rove wasn’t involved.” How does he know that?

A: Well, I’ve made it very clear that it was a ridiculous suggestion in the first place. … I’ve said that it’s not true. … And I have spoken with Karl Rove.

Q: It doesn’t take much for the president to ask a senior official working for him, to just lay the question out for a few people and end this controversy today.

A: Do you have specific information to bring to our attention? … Are we supposed to chase down every anonymous report in the newspaper? We’d spend all our time doing that.”

Q: When you talked to Mr. Rove, did you discuss, “Did you ever have this information?”

A: I’ve made it very clear, he was not involved, that there’s no truth to the suggestion that he was.


Oct. 7, 2003

Q: You have said that you personally went to Scooter Libby (Vice President
Dick Cheney’s chief of staff), Karl Rove and Elliott Abrams (National Security Council official) to ask them if they were the leakers. Is that what happened? Why did you do that? And can you describe the conversations you had with them? What was the question you asked?

A: Unfortunately, in Washington, D.C., at a time like this there are a lot of rumors and innuendo. There are unsubstantiated accusations that are made. And that’s exactly what happened in the case of these three individuals. They are good individuals. They are important members of our White House team. And that’s why I spoke with them, so that I could come back to you and say that they were not involved. I had no doubt with that in the beginning, but I like to check my information to make sure it’s accurate before I report back to you, and that’s exactly what I did.


Oct. 10, 2003

Q: Earlier this week you told us that neither Karl Rove, Elliot Abrams nor Lewis Libby disclosed any classified information with regard to the leak. I wondered if you could tell us more specifically whether any of them told any reporter that Valerie Plame worked for the CIA?

A: I spoke with those individuals, as I pointed out, and those individuals assured me they were not involved in this. And that’s where it stands.

Q: So none of them told any reporter that Valerie Plame worked for the CIA?

A: They assured me that they were not involved in this.

Q: They were not involved in what?

A: The leaking of classified information.


July 11, 2005

Q: Do you want to retract your statement that Rove, Karl Rove, was not involved in the Valerie Plame expose?

A: I appreciate the question. This is an ongoing investigation at this point. The president directed the White House to cooperate fully with the investigation, and as part of cooperating fully with the investigation, that means we’re not going to be commenting on it while it is ongoing.

Q: But Rove has apparently commented, through his lawyer, that he was definitely involved.

A: You’re asking me to comment on an ongoing investigation.

Q: I’m saying, why did you stand there and say he was not involved?

A: Again, while there is an ongoing investigation, I’m not going to be commenting on it nor is … .

Q: Any remorse?

A: Nor is the White House, because the president wanted us to cooperate fully with the investigation, and that’s what we’re doing.