Dave's Quick Search Deskbar
An interview with Dave Bau, the wizard behind Dave's Quick Search Deskbar
Conducted via email by John S. Rhodes (28-October-2001)
It's a little search textbox for your Windows Deskbar. Type in some search terms, and you launch a web search.
It has a few advantages over similar solutions such as the Google Toolbar. First, it's smaller and it's always there, even without a web browser, so you can do searches no matter what you happen to be doing. Second, search results pop up a new web browser instead of replacing your current browser. That doesn't sound like a big deal, but it really does work better. And finally, it does a ton of things besides Google searches. For example, you can search Yahoo, Merriam-Webster, Switchboard, newsgroups, Bloomberg, Accuweather, CNN, and so on. I use the little built-in math expression calculator all the time.
It doesn't sound like much, but it turns out to be indispensable for search hounds like me. I couldn't live without the thing.
It's for Windows - obviously, since it installs onto the Windows Explorer Deskbar. It works best if you've installed Internet Explorer version 5.5 or better. I've run it on Windows 98 a few times, and I run it on Windows 2000 every day.
I haven't yet tried it with XP yet. So if you've got XP, I would really appreciate any reports on how it works!
The GNU GPL means that the program is freer than free.
Since "Quick Search" is licensed to you under the GPL, not only do you get the program for free, but you also get the source code for free, and you also get the right to modify and redistribute the program if you like. The catch is that redistributions have to have the same terms and include the source code.
Why license under the GPL? Because I'm lazy! I made the quick search bar for fun, and eventually I won't be so interested in it any more. But inevitably there will be problems in the tool. For example, some of the search engines will someday change their query format and break compatibility with the search bar. By including the whole source code for the tool, I'm allowing developers to fix problems even when I'm too lazy to fix them myself. And if you have an idea for a cool feature you want to add, you can add it yourself instead of waiting for me to add it.
There's more. The GPL protects contributors. If you contribute code, you can be confident that somebody else won't make a proprietary version of the code and make money on your work without your consent. The GNU GPL isn't perfect, but it's the most widely-understood open source license that blocks closed-source redistribution.
The Quick Search Deskbar is all done in HTML. HTML is great - it only took a couple hours to get the first version running since it's such a simple concept. But it took several weeks of evening hacking to get it to work nicely. On this project I hardly used any tools. My only development tools were the web browser, Notepad, and a nice open-source setup system called NSIS for creating the installer.
Quick Search doesn't do anything new - it just makes life easier in its own little way. So the whole thing is about usability.
Testing was key. The design of Quick Search is thanks to a number of friends who installed early versions of the little textbox (including Gary Burd, Dave Maymudes, Mark Rafn, Roger Weber, Ken Tam, Rod Chavez, Kevin Bau, and other unsuspecting guinea pigs). It turns out that they all used the search bar in slightly different ways, and every aspect of the design that you see in the current Quick Search bar comes from their suggestions.
Quick Search is a concentrated, compact usability problem. It's a few hundred pixels, and there's nowhere for problems to hide. Keystrokes, colors, focus, pixels, timing, syntax, menus - after using it for a few seconds, you'll notice the smallest problem, so after just a few weeks, most of the problems have been fixed.
There are still some usability problems here and there, including some bugs for which I haven't figured out workarounds. But it's open source, so perhaps somebody more clever than me will continue to improve it.
I've posted a few other toys out there.
I've dabbled with other things, like a postscript printer maze generator (Note: PostScript file). It's a little postscript file that prints random mazes and solutions. Every time you print it, you get a different maze. You might also want to check out my little Conway's Game of Life screensaver (Note: .SCR file) if you like math puzzles.
Sure. Here's a resume.
I used to work for Microsoft - I helped write Internet Explorer. I'm currently working for BEA (they recently bought the startup I was working for called Crossgain). And so my current work is in the Java tools world, trying to make life easier for Java programmers. My current product involves XML web services, SOAP, WSDL, and that sort of thing.
We're doing some pretty ambitious things at BEA. Many people have never heard of BEA, but you should keep an eye on the company.
I've also been writing a little weblog called "dabbler" about little software topics. It's run on Dave Winer's great Manila system. It's mirrored on "dabbler.org" and "dabbler.manilasites.com". I write there when other things don't keep me too busy.
Small software is important.
In the last few decades, it's sometimes seemed as if the best software - like Microsoft Excel or Oracle - would inevitably grow bigger and bigger and more and more expensive to build. It's sometimes felt like the only way to build real software was to join a corporate giant like Microsoft or Oracle.
But it's now become clear that big software is becoming more commoditized and less interesting, while small software is becoming more and more important. This trend is being driven by market saturation of computers and a Moore's law overshoot in cheap computing power. With overpowered computers everywhere, it's not appropriate to spend huge amounts of time developing big software that runs the same way everywhere. Instead, there is an increasing need for small, specialized solutions that solve very specific problems. Computers are fast and opportunities are fleeting, so tuning your implementation for speed isn't as important as narrowing your design to target your specific customers' problems.
Software won't be about programming big software to system APIs in C++ - it will be about scripting small software that integrates other higher-level systems to target a specific user or a specific problem. Websites are like that. Dave's Quick Search Deskbar is like that. These are harbingers of things to come. Software development used to mean writing big software top-to-bottom over many years. But now, it's time to be an impatient developer. It's time to understand how to build small software.
-- John S. Rhodes
If you want to know when new interviews go online,
Home | Moving WebWord | Cool Books | Hot Web Sites |
Reports | Newsletter Archive | Interviews | About WebWord.com
© 2001 by WebWord.com. All rights reserved.
Do not reproduce or redistribute any material from this document,
in whole or in part, without explicit written permission from WebWord.com.