
A dialog of thoughts and ideas about software, usability, and products, with random science and wacky ideas thrown in for good measure.

Tuesday, August 31, 2010
When you search for "lightbulb" using a free stock photo site, you get no-frills pictures of lightbulbs that could have come straight from a hardware catalog. When you do the same search on a premium stock photo site, you find pictures that communicate the metaphors that a lightbulb represents. (Either way, I'm just looking for images to break up the text, although even better would be to have my own pictures that describe what I'm communicating)

Monday, August 30, 2010
On my bike ride to work, I pass over railroad tracks that have been inoperative for years. I noticed that the transit buses stop at the tracks, open their door, and look before crossing the track. Of course, the driver need not fear an oncoming train; the only thing he will see is a rickety track sinking beneath overgrown brush.
I thought about this. The driver is required to stop at the track because that's what he is trained to do. If he didn't stop at the tracks, he could probably get fired for not following protocol. But as long as he acts consistently at any railroad track, he reduces potential risk, and his boss will never be confused about what his driver will do when he comes across a railroad track.
However, this has some obvious inefficiencies. There is no reason for a bus to stop at a clearly unused track; this delays the passengers and other traffic behind the bus. And given enough buses with enough routes over this track, someone could probably calculate the maintenance cost that these stops require.
In the transit organization, drivers act according to their training, and bosses can predict how their employees will react in these situations. The transit organization works based on documented practices. But what about an organization that is based on knowledge of ideals instead of strict documentation -- and from these ideas, bosses can still predict how their employees will react, without specifically encoding those reactions in documentation?
I'll call such an organization an intuitive organization. In an intuitive organization, everyone can accurately predict how their teammates will act, without those actions being specifically encoded in a strict document.
Good sports teams are intuitive organizations: players know they can rely on the skills and abilities of their teammates, without knowing precisely how their teammates will execute a particular move (but with a certain degree of professional understanding and knowledge of best practices).
I think a good software team can be an intuitive organization. If I know my team well enough, I can predict how they might design a piece of software, or how they may have addressed particular technical challenges. This is about having confidence in my team and knowledge of how they work; the past is the best predictor of the future. (It should be noted that this isn't about signing up my team for work they can't possibly commit to!)
This is quite powerful. The ability to know how a teammate will act, without explicit communication and without constraint to some particular set of rules, gives an organization a dynamic, agile edge over other teams that are more by-the-book.
I thought about this. The driver is required to stop at the track because that's what he is trained to do. If he didn't stop at the tracks, he could probably get fired for not following protocol. But as long as he acts consistently at any railroad track, he reduces potential risk, and his boss will never be confused about what his driver will do when he comes across a railroad track.
However, this has some obvious inefficiencies. There is no reason for a bus to stop at a clearly unused track; this delays the passengers and other traffic behind the bus. And given enough buses with enough routes over this track, someone could probably calculate the maintenance cost that these stops require.
In the transit organization, drivers act according to their training, and bosses can predict how their employees will react in these situations. The transit organization works based on documented practices. But what about an organization that is based on knowledge of ideals instead of strict documentation -- and from these ideas, bosses can still predict how their employees will react, without specifically encoding those reactions in documentation?
I'll call such an organization an intuitive organization. In an intuitive organization, everyone can accurately predict how their teammates will act, without those actions being specifically encoded in a strict document.
Good sports teams are intuitive organizations: players know they can rely on the skills and abilities of their teammates, without knowing precisely how their teammates will execute a particular move (but with a certain degree of professional understanding and knowledge of best practices).
I think a good software team can be an intuitive organization. If I know my team well enough, I can predict how they might design a piece of software, or how they may have addressed particular technical challenges. This is about having confidence in my team and knowledge of how they work; the past is the best predictor of the future. (It should be noted that this isn't about signing up my team for work they can't possibly commit to!)
This is quite powerful. The ability to know how a teammate will act, without explicit communication and without constraint to some particular set of rules, gives an organization a dynamic, agile edge over other teams that are more by-the-book.

Saturday, August 21, 2010
I sometimes hear that social sites like Facebook and Twitter will be heavyweights in the future of recommendations (or of search itself), the idea being that your friends can give you better recommendations for things like books, movies, music, and travel than random strangers can. I respectfully disagree.
First, it's hard to imagine this being the future when searching on sites social network sites is so abysmal. On Twitter, searches only go back 7 days. And while Facebook lets you search for friends, it has no decent way of searching the content of wall posts. I had to dig around pretty hard when I wanted to re-find an awesome song that a friend posted months ago.
Technical feasibility aside, there are conceptual issues with relying only on friends for recommendations. Social networks don't have the "long tail" that other sites on the Web support. For example, I have about 300 friends on Facebook, and these people tend to come from similar backgrounds as me: for the most part, we attended high school or college together, or we've worked together. Or we're related. I might value my friend's opinions on good books for summer reading, but if I'm trying to stretch my horizons, my friends are a terrible source of input, since we're so homogeneous.
Relying on Facebook or Twitter for recommendations will only benefit the socially rich, those who have thousands of diverse connections. For the rest of us, we'll have to rely on the diversity of people who aren't connected to us, but who can still influence our decisions: the people on Amazon, TripAdvisor, and other sites who tell us how good a certain book is, and what's wrong with that hotel.
The other thing that makes social network sites unsuited for recommendations is the fleeting nature of posts. On Amazon or TripAdvisor, other people's recommendations are associated with the desired object itself. But in social networks, your friends' recommendations are associated with your question. If you post a question when no one is looking, no one will answer it. If you post a question a few days after a friend posts a similar question, you won't benefit from those recommendations unless you're somehow aware of them.
I'd like to see improved search capabilities in Facebook and Twitter (why can't I search my friends based on location?), but it'll take a lot of work to rend recommendations from these sites.
First, it's hard to imagine this being the future when searching on sites social network sites is so abysmal. On Twitter, searches only go back 7 days. And while Facebook lets you search for friends, it has no decent way of searching the content of wall posts. I had to dig around pretty hard when I wanted to re-find an awesome song that a friend posted months ago.
Technical feasibility aside, there are conceptual issues with relying only on friends for recommendations. Social networks don't have the "long tail" that other sites on the Web support. For example, I have about 300 friends on Facebook, and these people tend to come from similar backgrounds as me: for the most part, we attended high school or college together, or we've worked together. Or we're related. I might value my friend's opinions on good books for summer reading, but if I'm trying to stretch my horizons, my friends are a terrible source of input, since we're so homogeneous.
Relying on Facebook or Twitter for recommendations will only benefit the socially rich, those who have thousands of diverse connections. For the rest of us, we'll have to rely on the diversity of people who aren't connected to us, but who can still influence our decisions: the people on Amazon, TripAdvisor, and other sites who tell us how good a certain book is, and what's wrong with that hotel.
The other thing that makes social network sites unsuited for recommendations is the fleeting nature of posts. On Amazon or TripAdvisor, other people's recommendations are associated with the desired object itself. But in social networks, your friends' recommendations are associated with your question. If you post a question when no one is looking, no one will answer it. If you post a question a few days after a friend posts a similar question, you won't benefit from those recommendations unless you're somehow aware of them.
I'd like to see improved search capabilities in Facebook and Twitter (why can't I search my friends based on location?), but it'll take a lot of work to rend recommendations from these sites.

Tuesday, July 27, 2010
Google has unveiled their new Image Search interface. Doc Searls expressed his dislike of the new search (and his growing preference for Bing's image search) on his blog, and Dave Winer tweeted his agreement. I thought I'd check out Google's new capabilities to form my own opinion.
I tested Google Image Search by searching on my own name. In the new search results, images are shown on a page in a way that makes them visually strong - this looks less a sparse collection of images, and more like a montage of big, bold pictures. Instead of pages of search results, you can scroll down the page to see more results. Moving the mouse over an image may zoom in on the image if it's not already shown at full size, and displays additional information about the picture. This was helpful when I tried to understand why there were pictures of herpes in my search results (one of the world's people named David Koelle is a medical doctor).
When you click on an image to go to the website on which it was found, Google places an overlay on the site that shades the original page and shows the image you were looking for in the middle. I found this to be an annoying extra step - my intention in clicking on the search result was to go to the original page, so why should I be presented with another instance of the image, that I then have to close so I can view the page? It would be better to have a small copy of the image in Google's right-hand pane, with a button to "Find image in page" that would automatically scroll to (and maybe highlight?) the image.
So, what about Bing? It turns out that Bing is just plain wrong. Doing a Bing Image Search for David Koelle doesn't show any of the people I know named David Koelle. I can't find my picture in the whole list, and the first actual David Koelle doesn't show up until about 100 pictures down - but it's the only accurate hit for another 100 or more pictures. Instead, I see a few images that I'm familiar with: the JFugue logo; a picture of PragPub magazine, in which I once co-wrote an article; a picture of Michael Swaine, the editor of PragPub. Otherwise, I don't recognize any of the returned images, and very few of them seem to fit my search criteria.

When you click on an image to go to the website on which it was found, Google places an overlay on the site that shades the original page and shows the image you were looking for in the middle. I found this to be an annoying extra step - my intention in clicking on the search result was to go to the original page, so why should I be presented with another instance of the image, that I then have to close so I can view the page? It would be better to have a small copy of the image in Google's right-hand pane, with a button to "Find image in page" that would automatically scroll to (and maybe highlight?) the image.
So, what about Bing? It turns out that Bing is just plain wrong. Doing a Bing Image Search for David Koelle doesn't show any of the people I know named David Koelle. I can't find my picture in the whole list, and the first actual David Koelle doesn't show up until about 100 pictures down - but it's the only accurate hit for another 100 or more pictures. Instead, I see a few images that I'm familiar with: the JFugue logo; a picture of PragPub magazine, in which I once co-wrote an article; a picture of Michael Swaine, the editor of PragPub. Otherwise, I don't recognize any of the returned images, and very few of them seem to fit my search criteria.

Wednesday, July 21, 2010
I'm surprised at how dependent I've become on certain Windows 7 user interface features, and how natural they are to understand and use:
- Searching within the Start menu (How did I ever find things before?)
- Aero Snap: Moving a window so it fills the left- or right-half of the screen (I only rarely did this by hand, but it now feels so necessary)
- Dragging the title bar of a maximized application to minimize it and move it around (Really? I couldn't do this before?)
- And I haven't even started using Aero Shake (click and shake one window's title bar, and all of the other open windows will minimize) or Aero Peek (makes your windows transparent so you can see your desktop)
I came to realize that the way I navigated my Start menu (which, despite my valiant attempts at cleaning up, spans at least two columns) was my physical location as opposed to logic: "I know WinSCP is on the top half of the second column." This knowledge became organic: as I added new applications to my system - WinDirStat (which is awesome), Google Chrome, and so on - they were added to the end of the list, and I became familiar with their physical placement. But on my new Windows 7 machine, I've installed so much new software so quickly (e.g., Paint.NET, LMMS, Synthesia (which is awesome), Blender, Boxee) that it's difficult to build up that physical memory... not to mention, the Windows 7 Start menu limits itself to one scrolling column.
I've searched in vain for Windows XP add-ons that can give my old windows the same side-of-screen, drag-from-maximize, drag-and-shake interaction that I don't know how Windows users have lived without for the past (almost) 20 years. It's clear that Microsoft doesn't have a vested interest in back-porting changes like these, but I hope some third-party developer will come around and do it some day (not me... I've got other projects cooking).

Monday, June 14, 2010
As I previously discussed, there are really only four types of energy: solar, nuclear, geothermal, and gravitational.
Some of our energy sources are actually the accumulated potential of these types of energy. For example, fossil fuels represent solar energy collected over a long period of time.
Let's say that by using fossil fuels, we can effectively put the power of 1 million years' worth of the sun's energy to work in supplying our day-to-day energy needs (probably a conservative estimate). Every day, maybe we use 10 months worth of collected fossil energy (the actual numbers are less important than my point).
Now, let's suppose fossil fuels run out.
Can the sun itself supply all of the world's energy needs in real-time? Is the amount of energy that we can collect and use per second greater than the total power consumption of the world per second?
If not, there's a lot of opportunity for scientists and corporations to improve devices that collect energy, and optimize devices that use energy.
Some of our energy sources are actually the accumulated potential of these types of energy. For example, fossil fuels represent solar energy collected over a long period of time.
Let's say that by using fossil fuels, we can effectively put the power of 1 million years' worth of the sun's energy to work in supplying our day-to-day energy needs (probably a conservative estimate). Every day, maybe we use 10 months worth of collected fossil energy (the actual numbers are less important than my point).
Now, let's suppose fossil fuels run out.
Can the sun itself supply all of the world's energy needs in real-time? Is the amount of energy that we can collect and use per second greater than the total power consumption of the world per second?
If not, there's a lot of opportunity for scientists and corporations to improve devices that collect energy, and optimize devices that use energy.

Saturday, June 12, 2010
I have a question for companies like BP, ExxonMobil, Sunoco, and so on:
Because if you're an energy company, it's in your vested interest to honestly and thoroughly explore alternate forms of energy. You want to pour money into research and development, because you can see that we're heading away from oil and towards renewable energy sources. You want to be the first to develop facilities that can store solar energy for use at night; you want to be the first to devise ways to transport energy from the Arizona desert to Alaska during the winter. You - not GM, not Ford - YOU want to build the solutions that let cars run on something other than gas, so you can lock us into "HydroGen(TM) from ExxonMobil" or something like that, and license the engines to the auto industry. You see decentralization of energy on the horizon, as more homes and businesses generate energy at their location with localized solar and wind generation, and you want to tap into that market. Solving those problems will put you ahead of the competition. From a business survival perspective, you want to make sure that your company continues to exist if oil runs dry, if public opinion moves away from oil, if evolving national security concerns make it unrealistic to rely on foreign oil, and so on.
If you're an oil company, you're already a dinosaur. We'll see your demise in the coming decades.
Are you an oil company, or an energy company?
Because if you're an energy company, it's in your vested interest to honestly and thoroughly explore alternate forms of energy. You want to pour money into research and development, because you can see that we're heading away from oil and towards renewable energy sources. You want to be the first to develop facilities that can store solar energy for use at night; you want to be the first to devise ways to transport energy from the Arizona desert to Alaska during the winter. You - not GM, not Ford - YOU want to build the solutions that let cars run on something other than gas, so you can lock us into "HydroGen(TM) from ExxonMobil" or something like that, and license the engines to the auto industry. You see decentralization of energy on the horizon, as more homes and businesses generate energy at their location with localized solar and wind generation, and you want to tap into that market. Solving those problems will put you ahead of the competition. From a business survival perspective, you want to make sure that your company continues to exist if oil runs dry, if public opinion moves away from oil, if evolving national security concerns make it unrealistic to rely on foreign oil, and so on.
If you're an oil company, you're already a dinosaur. We'll see your demise in the coming decades.
Subscribe to:
Posts (Atom)