aleph3: (Default)
A couple of weeks ago now I pitched in to help with the annual inventory at my wife's bookstore. The end product is actually an abstraction of inventory: they don't need titles, or even a count of books, just the total cover price.

This is done by several pairs of people, one person to iterate over the shelves in a section and call down prices, and another to total them on a printing calculator. I naturally had an initial reaction of "can't a general-purpose computer - a laptop with a spreadsheet or a mobile device - do this just as well?", which I soon withdrew, having observed:

- the calculator effectively throttles the flow of information to a manageable pass, by sending a very audible signal that the last number has been entered
- the calculator has a very visible audit trail of all actions, even errors and the recovery therefrom

Most shared activities involve a certain amount of coordination, but the manner of that coordination can have different qualities of efficiency and pleasantness for the participants. For instance, in this case, the person entering the numbers could say "Next" if the operation was silent, but over several hours that gets to be unneeded wear-and-tear on the vocal cords.

(One of my favourite examples of "conservation of coordinating information" is paying in cash between Canada and the US. Canadian bills differ sharply in colour and are hard to mistake for one another; with American banknotes, the differences are subtle where they exist at all. So in the US, I've observed, people tend to hand over bills with "There's (denomination)", and the cashier echoes it back. Having picked up this habit, I now find myself doing it in Canada, and of course I sometimes get looked at as though I've just called someone an idiot.)

Some of the other out-of-band benefits of doing things the current way are:
- maintaining a community of people with some solid connection to the business other than being employees or patrons (full disclosure: we got compensated with store credit)
- running several sets of eyes over the whole store, increasing the chance of catching moved or mis-filed books, weird shit placed on shelves (Chick tracts, or the like), and things like that

And you know, apart from a data-entry app which makes a "ka-CHUNK" sound, I can't really think of a very helpful way to replace the adding calculator. Things in a system just tend to have a whole range of undocumented side effects: a recent classic example being that LED traffic lights don't melt snow the way incandescent lights used to, so municipalities now need to dust them off by hand. I'm never gonna say that the lesson is "don't change anything ever", but higher-order effects always need to be considered. Which sounds easy but is hard. At the very least, though, it means that the people who work with a system directly need a lot of input, and not just their managers and the people holding the purse-strings.
aleph3: (Default)
A few days ago I pitched in to help with inventory at the bookstore my wife works at; "inventory" in this sense meaning adding up the list prices of the items in the store. I'm putting together some thoughts on this as an information system. Before embarking on that, though, I want to throw out a pointer and a small example.

One of the more aha! things I've read was the chapter of Peter Checkland and Sue Holwell's Information, Systems, and Information Systems entitled "The Information System That Won The War", which was about how the RAF organized and distributed (and protected) radar data: and so despite having radar which was not, technically, as good as Nazi Germany's, made more effective use of it. The core take-away, though, being that the only computers involved were rooms full of people who were very good at sums.

The corollary take-away, and the one which I'm always finding examples of, is: a lot of information systems are still made from things rather than bits, and that if you are going to move them to a digital platform, you stand to gain a great many things (scalability, distributivity, speed) but there are also things that a physical system provides seemingly as a side-effect that are actually extremely important to how people use it. And these things get lost easily.

As a very simple for-instance: a deck of cards. Both in school, and in job interviews, I've been asked to implement a deck of cards in various programming languages. This isn't a very complicated task, unless you consider one of the main settings in which a deck of cards is actually used: playing a game of chance with money at stake, a setting in which the incentives for providing a deceptive deck of cards are, let's say, considerable. So in card-games played with real decks there are a number of social processes which leverage the physical properties of cards to promote transparency and trust.

For one, there's simply the thickness of the cards, a familiar quantity: a deck deviating from 52 by a noticeable amount will do so visibly.

For another, there's the uniformity of the back face: which increases confidence that someone working with a face-down deck isn't able to discern the identity of the cards. At any rate, actually flipping and sneaking a peek at one is a very visible act which it's hard though probably not impossible to do under the eye of several other players.

Of course, there is card-marking as an exploit, hence shuffling and dealing conventions have a strong tropism towards showing the backs of as many cards as possible, making it harder for a marked card to pass undetected.

And shuffling itself tends to be showy rather than trying for maximal efficiency: the goal being not just to mix the cards effectively but to demonstrate the mixing to observers.

By contrast, you can have a class in your programming language of choice doing everything a deck of cards does in a half hour, but it remains a black box. When you play a card game online, you essentially have to take the probity of Yahoo or MSN, say, as a given: and indeed not just their probity but the skill of their development and QA team, so that there's no bug which might, if the change to daylight savings time happens mid-game, result in their being two Jacks of Diamonds in a deck.

All the same issues, of course, but with much, much higher stakes, show up in voting technology. The principle remains the same, though: if someone has skin in the game, they also deserve ways to check that it's on the up-and-up, and not just "trust the experts, peasant".


aleph3: (Default)

August 2010

29 3031    


RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags