July 2006 Archives

NetworkWorld has an article about self-checkout. Since this has become a recurring subject here, I thought I should mentions some highlights:

According to IHL, consumers report buying junk food, supermarket tabloids and the like 45% less frequently while scanning their own purchases than when checking out the old-fashioned way.

Which makes perfect sense, when you think about it — self-checkout lines tend to be shorter, so you’re not waiting your turn as long. And instead of standing there waiting for someone else to ring you up, you’re busy doing it yourself.

…Retailers such as Meijer and Kroger have adjusted by offering items such as rotisserie chickens and fresh baked breads to rely more on the sense of smell to drive sales rather than simply visuals when trapped in a staffed lane.”

Our Albertson’s has started putting baskets of French bread next to the checkout. The self-checkout there also talks to me, reminding me to use a loyalty card I do not have. I suspect it will eventually offer me suggestions for other things I might want based on my purchases.

Shoppers logged $111 billion worth of self-checkout purchases last year, an increase of 35 percent over 2004, according to IHL. Fewer than a fifth of consumers report using self-checkout every time it’s available, while 29 percent say they do so only when the staffed lines look daunting.

The biggest gripe? That’s predictable: 55% say it’s when something goes screwy and they have to wait for a human being to come over and fix it.

Which is why I think customers who have proven to be good self-checkers (*cough*me*cough*) should be given system logins just like the employees so they can clear their own errors.

Be sure to also read the comments on that article. The first one confirms my “natural selection” theory of self-checkout. Those who adapt, thrive.

It’s interesting to me that my experience has been quite different from Matt’s. Despite growing up in a town of about sixty (no, I’m not exaggerating, here’s the census data) located in a very rural area, I regularly meet people who know exactly where it is. The conversation usually goes like this:

Them: So, where are you from?

Me: You’ve never heard of it. It’s a little town called Macomb and it’s…

Them: Oh, yeah, I know where that is. My _____ lives/works out there.

My most recent encounter was with a business associate who turned out to be the ex-husband of my high school english teacher. That brought back a flood of memories about high school, friends, and knowing things you’re not supposed to. But I’ll save that for another story.

I’ve said it before and I’ll say it again: I enjoy a good bandwagon. So it shouldn’t surprise you in the least that I would be intrigued by Ruby on Rails. Stories of increased productivity, happier programming, and elves that write your code for you while you sleep made me think this might be what I’m looking for.

What? That’s what it said on Wikipedia, so it must be true.

Anyway, I started reading up on it, going through some tutorials, and I really liked what I saw. I love the way that data is just there. Need all of a user’s lists? user.lists has them. Need all the items on a list? list.items has ya covered. Create a table, create a model based on the table, then associate that model with other models, and you get an amazing collection of useful ways to access your data.

I decided to use it to build Gift Goat so I could put RoR through its paces. Tutorials are fun, but to find out if you have the right tool you have to use it on your own project in your own way. I wanted to see if it was something I could use on a regular basis for building the many different web site ideas Angela & I have.

So far, I really like it. Other work has kept me from spending as much time on it as I’d like (I’d hoped for a July 1 launch. That’s looking less and less likely.), but what time I have had has been really productive. It’s amazing how much you can do with just a few lines of code.

As I get more of Gift Goat done I’ll post more about what it’s like working with RoR and what I think its strengths and weaknesses are.

Question: How much does a head of lettuce weigh?

(Stay with me, I’m going somewhere with this.)

Astute reader that you are, I’m sure you immediately answered, “It depends.” Well, you’re right. In my quick Google search I did not find a definitive answer to how many varieties of lettuce there are, but some advertiser would eagerly sell me over 40 different lettuce seeds, so let’s assume there are at least that many. I’ll narrow it down a bit, then: How much does an adult head of iceburg lettuce, like you would buy in any grocery store, weigh?

Unfortunately, the answer is still, “it depends.” Circumference and leaf density are going to be your main variables at this point. Still, we should be able to define a range of weights that 99% or more of the iceburg lettuce heads you see in a grocery store will fall into. According to the University of California Vegetable Research and Information Center’s report on Iceberg Lettuce Production in California, heads of iceburg lettuce are typically shipped in 50 pound cartons containing 24 to 30 heads. These numbers give us a range of 1.67 - 2.08 pounds per head. We should probably extend our range to something like 1.5 - 2.25 to reduce the number of outliers.

Still, we’re only guessing. What we really need is sample data. What if we could weigh millions of heads of lettuce? Then, do you suppose it would be possible to define a range that would encompass 99% or more of iceburg lettuce heads?

Apparently not.

I say that because, despite Wal-Mart having access to that volume of statistical data — over a long period of time — they still do not know, even approximately, how much a head of lettuce weighs.

We eat a lot of salads and, consequently, buy a lot of lettuce. Lettuce is sold by the head, not by the pound, so it makes sense that when I buy lettuce, I buy the biggest head I can. And when I shop at Wal-Mart, I always use the self-checkout. Nearly every time, the self-checkout gives me a “weight error” on the lettuce, because the machine thinks the weight is outside of the boundary of what a head of lettuce should be. I then have to stop and wait for the error to be cleared by a checker who doesn’t know what the error actually means. And since they don’t know, they don’t report it, and the problem never gets fixed.

If this was a rare occurance, I wouldn’t think anything of it. But it happens almost every time, which means a statistically significant percentage of their lettuce falls outside the acceptable range they have programmed for the weight of a head of lettuce.

From a developer’s point-of-view, I see two possible solutions: one easy but buggy, the other complicated but accurate. They could simply extend whatever range they are using. Probably a half pound on either side of the range would do it. You will still have outliers, but a lot fewer. The other option would be to constantly recalculate the range. Every time someone buys a head of lettuce, re-average based on the new data. I imagine it wouldn’t be long before they had enough data that outliers would almost never happen.

I suppose there’s a third option. If all you lettuce farmers out there (which I choose to believe is a statistically significant portion of my audience) would start weighing each head of iceburg lettuce you grow and sending the data to Wal-Mart, they could re-calculate based on that data. Here’s the address:

Wal-Mart Stores, Inc., Home Office
702 S.W. 8th Street
Bentonville, AR 72716

Of course, from a user’s point-of-view, I’ve already solved this problem for myself: I won’t ever buy lettuce at Wal-Mart again.

The following was written in June of 2003 about a trip we took in October of 2002. Timing is everything.

Continue reading “Wedding 2: Viva Las Vegas”…

Like a lot of people, I rarely visit blogs anymore. Anybody I want to read I add to Bloglines. Almost all of them offer full feeds — in fact, a site has to be really good for me to subscribe to an excerpt-only feed. The web site, in these cases, is irrelevant: It’s the content I’m after. About the only time I visit someone’s actual web site is when they announce a redesign.

It occurred to me, as I was testing a client’s site in 10 different OS/browser combinations, that perhaps feeds are an acceptable replacement for cross-browser compatibility. There are plenty of quality feedreaders out there. Chances are, a person could find one they liked. If I’m publishing all my content in a format that can be presented any way the user likes, is there really anything else I need to do? Is there any reason not to design my site solely to my browser of choice, and let anyone who can’t handle it subscribe to my feed?

I’m not sure I’ve even convinced myself of this argument, but I think it’s an interesting possibility created by the blogging/feeds phenomenon. One could even take this a step farther and publish a blog that was only a feed. A good writer could pull this off — with trackbacks and off-site commenting, they could even build a community. All without an actual web site.

Ultimately, it comes back to the same question that has always plagued web designers: Who’s responsible? Where does our responsibility to provide good design and usability end, and the user’s responsibility to learn and adapt begin?

The answer seems to always be the same: it depends. It depends on the blogger and the audience. If you find most of your visitors are reading your feed, then maybe you don’t need to worry about what your site looks like in IE. Maybe, you don’t need to worry about what your site looks like at all.

Then again, maybe it’s time for another redesign. That always brings you lots of visitors.