codahale.com٭blog

Coda Hale lives in Berkeley, CA, where he writes about Ruby on Rails, usability, web design and development, and the occasional bit about bicycles.

On trying hard not to think

I’ve never been a good sleeper, and when someone says this:

From time to time I’ve got real trouble sleeping. My mind literally races. My thoughts coming in and out faster than I can deal with them. It’s almost like a thousand bees buzzing in my head.

I sympathize. So what’s the solution?

(continue reading…)

Comments Off

The hipster version of a Honda ground effects kit

Living in the Bay Area is definitely a bicycle fan’s dream come true. I get to see all sorts of interesting rides, and as my girlfriend knows, I’m always stopping at bike racks to check out the goods. But I’ve noticed a trend in the past few years which makes me uncomfortable: scenester bikes. If you live in the Bay Area, NYC, Seattle, or any other bike-friendly metropolitan area in the US, you know what I’m talking about. If you don’t, you will… you will…

(continue reading…)

10 comments »

Google’s UX staff take a vacation, return to horror and destruction

So Google made an RSS reader.

Wait, let me back up: what is it about RSS readers which make people’s frontal lobes turn off?

An RSS reader is a way for people like me to manage our infOCD tendancies by–y’know–aggregating information to reduce the amount of time needed to monitor a wide variety of sources. Your RSS reader is the thumbnail view of your daily web readings.

So why the hell make one which forces you to cycle through each story, one by one? Well? Yeah, I can’t think of a good reason, either. It’s like trying to scan a hundred newspapers through a microscope. Wrong, wrong, wrong. Backwards, even.

I try to keep track of the various postings on Craig’s List SF in the bicycles section. The information for each post on RSS is the title–that’s it. There’s probably a thousand posts a day, and the vast majority of them are crap crappity crap crap. Now Google would have me blipping through each one, one at a time, looking at a single line of text and about 250,000 blank-ass pixels.

What an amazing user experience that would be.

Focus on functionality–from the user’s perspective–instead of buzzword compliance. Bloglines, despite their clunky Web 1.0 look, works. It lets me choose how each feed is displayed. Boing Boing shows the full story, and the BBC and Craig’s List just show the titles. It helps me work, it doesn’t try to wow me with its Web 2.0-y goodness. Not everything needs tags, not everything needs Ajax, and frames can be useful.

RSS readers need to make a visual gestalt of the user’s feeds. They should be able to look at their feeds and know, at a glance, which ones have been updated. They should be able to choose how much of each feed they see, because not all feeds have the same importance. Don’t try to out-think the user; help them think.

So, uh, yeah: a Jabber client and a myopic RSS reader. Google’s supposed to be the future, right? Yikes.

3 comments »

Who Is The Devil’s Advocate, Anyway?

From Creating Passionate Users: Death by Devil’s Advocate:

We’ve all been in a meeting where a passionate idea is put forth but someone plays devil’s advocate and drains the life out of the room. Invoking “the awesome protective power” lets the devil’s advocate be incredibly negative and slash your idea to shreds, all while appearing not only innocent but reasoned, balanced, intelligent… all attributes loaded with business “goodness”. Whew! Thank GOD for the devil’s advocate, or we’d all be off blundering with our stupid ideas, oblivious to the insurmountable problems we were too clueless to see.

It’s easy to look at someone who sits in the corner of a blue-sky brainstorming session and does the real-world equivalent of threadcrapping and see them, as Kathy said, ripping the throat out of your infant idea. There probably are inveterate creativity-slayers, but I think a lot of it boils down to thinking styles and communication styles. So how do we make sense of devils’ advocates? Read on to find out.

(continue reading…)

2 comments »

Visual Studio 2005: Actually Quite Nice!

First off, I should come clean: I cut my eye teeth on Borland tools. This is possibly the worst way to start off programming, because everything feels like a Huffy. I first started programming (not including the HyperCard animations) with Delphi 1. The VCL and many other aspects had been designed by Anders Hejlsberg, and–compared to the other applications used to write programs with UIs–it was heaven. But Anders went to Microsoft, and Borland… well, Borland’s still Borland: marginal.

Wikipedia’s article on Delphi puts it best:

Persistent doubts about the long-term future of Borland have made its products seem too much of a risky proposition for many employers, leading to shrinkage of the job market for Delphi programmers.

And how. But still, Delphi and the VCL still has a sense of rightness to it; if God had sat down to make a language, IDE, and RTL, I still think He would have made Delphi. The vast majority of IDEs I’ve used so far have seemed like glorified text editors. “Oh, how cute: a compile button that asks me where the compiler is.” They work, of course, but it takes more for me than highlighting the matching bracket to make a tool worth using.

I have friends who started off using vi and duct tape. They’d be happy with a set of crayons, some construction paper, and some bearded guru type who would grunt once for “successful compile” and twice for “unsuccessful compile.” These are the guys whose code usually has a log of conditionally compiled println("I'm in the do_something_right() function");-type stuff in it.

I’m not one of those guys. I grew up with Delphi, and I need a big IDE with a truckload of project management tools and a small town full of UX designers under the hood. I want my IDE to refactor my code for me, and I want a huge-ass help database a few keystrokes away. I want a debugging interface which lets me see everything but doesn’t bury me in hex dumps. And most importantly, I want something which doesn’t make developing a decent UI a total chore. Programs that have UIs which were laid out in the editor look, unsurprisingly, like they were written via morse code. Visual processing, from the very first fart of the feature detectors, is non-sequential, unlike a list of create-control-set-position-set-size instructions. Writing “button goes here” doesn’t work as well as actually putting the button there.

So given my total pickiness when it comes to development tools, it’s kind of a surprise that Visual Studio 2005 Beta 2 feels like coming home. It shouldn’t be a surprise, since C#/.NET is what my man Anders has been working on for the past 9 years, but still–VS2003 was decent but still clunky, mixing static display code with behavior code. VS2005, while a bit bloated, is a joy to work with. The guides which pop up when moving elements around the screen are so helpful in laying out a window according to HCI standards that I’m surprised it hasn’t already been done. The code suggestions scare me sometimes (”How did you know I wanted to do that?”) and it never feels like an unadorned cousin of Clippy.

It’s just a beta, and I’ve only spent the day working with it, but from now on, my primary tool in working with Windows applications will be Visual Studio 2005. I didn’t think you had it in you to make me think of Delphi as quaint; well played, Microsoft… well played.

Comments Off