Visit to Belgium

April 29, 2007

Brussels Grand Place

From Wednesday to Sunday, I was in Belgium, taking part in the Meeting of the Minds conference in Antwerp:

On my way, I spent a few hours in Brussels (taking the Eurostar train from London) before getting on a train to Antwerp. I had lunch with BookMooch fan and Associated Press Reporter Aoife White, a Dubliner who’s relocated to Brussels since a few years. Found out that she’d mooched two books from my wife, which was an amazing connection.

Some photos of Brussels (just another amazingly beautiful European city)

I spent a few hours at the Music Instrument Museum in Brussels. Here are a bunch of photos from that:


Picture 2Wednesday night kicked off with me having dinner with Bob Young, the CEO of and founder of Red Hat Linux. We had met a year earlier in London, but I didn’t have BookMooch launched at that time, so I didn’t talk to him about it then. I had told our mutual friend Laurie Racine (also a CC Board Member) about some ideas I had for Lulu and BookMooch to work together, and she wanted us to meet. As often happens, the best way to meet busy people is when they’re away from home. We ate at the Michelin-starred super-casual Gin Fish Restaurant where the chef brings you whatever he wants, and he makes different food each night (mostly fish). Bob & I gabbed late into the night, and we hope to figure out a way that Lulu and BookMooch could work together.

LoicAt the conference, I met French super-blogger Loic Lemeur. He’s also a compulsive serial entrepreneur, and we got on famously. Most recently he was working for Six Apart, but he’s a free agent now and he bounced a half dozen business ideas off me (I wasn’t of much help, unfortunately).

My presentation assignment was “What will the Internet be like in 2020?”. A PDF of my presentation slides are below. I believe there are also plans to put video of the presentations on the web, and I’ll put that up here when it’s available.
Antwerp Buckman 2007

I shared a 90 minute cab ride each way to the Free University of Brussels with BBC Creative Archive project leader Paul Gerhardt. I’ve known a number of people who’ve worked on that project, but never met Paul. After 3h trapped with me, I’m sure Paul had enough of my babbling about CC, Magnatune, and all that, but we got on well and promised to meet up in London, where Paul also works with a number of other UK groups that are running their own Creative Archive inspired projects.

Antwerp is a beautiful city, with lots of narrow streets, and ice cream and French fry (with two dozen sauces available) and waffle vendors everywhere:

The conference had us stay in the conference center “Elzenveld”, which has some connection to Erasmus (I couldn’t read the Flemish sign) and evidently has ghosts associated with it:


The trip ended with me taking an early morning train out of the spectacular Antwerp train station:
Antwerp Train

to meet up for lunch in Brussels with Laurent and Sylvain, the geniuses behind music-web-site Jamendo.
Jamendo Brussels

Gzip-Icon-SmallI reported last week that I was experimenting with a page-compression technique, to make BookMooch pages load faster. I was testing it out on only some pages at that time, to make sure it worked right. However, most of the big pages didn’t do it.

I’ve now turned gzip compression on every page at BookMooch. The speed increase is most significant on large pages, such as my history with details on, which is 496k of html “the old way”, and now transfer as just 27k of gzipped data. So, the new way needs to transfer far less data over the internet to your computer, in this case only 6% as much as previously, resulting in a super-huge speedup on large html pages.

If you “show details” on search results, it used to be a bit slow, but now what was 100k for just 10 books of details on the search results, is 11k with this new compression technique.

Pretty neat…

Part of the testing period was also to figure out if BookMooch “did the right thing” with people with firewalls, old web browsers or proxy servers that don’t like gzip. One person replied having problems last week with what I had, but said that my fixes a few days later worked for her.

If you have any problems reading BookMooch pages now (ie, some sort of browser error) do drop a comment on this blog.

Rsswisic-1On every wishlist page, there is now an RSS icon which will give you a feed of only the books on that wishlist which are currently available for mooching.

This is a really handy way to keep on top of your wishlist.

Many RSS readers will show a popup alert when a new RSS item appears. If you do that, then your alert will pop up on your computer whenever a book on your wishlist is available.

But wait, there’s more.

If you click “show related editions” and use the RSS feed icon from that page, then the RSS feed shows you books available for mooching from your wishlist, including any related editions of any of the wishlisted books. VERY handy!

To mooch a book, click on the title or the cover graphic, which will then take you to the BookMooch detail page, and from there you can click “mooch” if you want the book.

Here’s what the RSS feed looks like in Firefox (this is with related editions on, and you can see several related editions of “Swann’s Way” available (I’m looking for the French edition, which is why it’s still on my wishlist):



There’s a little-know trick for making big web pages download faster called “gzip compression”.

I’ve enabled this technique on many BookMooch pages.

The web server can choose to compress the web page with gzip compression, which typically makes it about 80% smaller, and the web browser decompresses it automatically. Since decompressing files like this is fast on modern computers, and it’s slower to download large files, this is a big win.

For example, the “browse by zip codes” page at BookMooch is 236k large, but gzipped it’s just 37k large (85% smaller) thus 6.5x faster to download.

Please do me a favor, and visit this page:

and leave a comment if the page *doesn’t* work for you.

For technical reasons too boring to go into here, only some of the pages at BookMooch are currently using this technique.

In programming BookMooch, there’s an “Easy way” to do this technique, which works with pages like the Browse Page. And, there’s the “hard way” that I have to do for pages like

It’s the “hard way” that I’m a bit nervous about, because I had to code that myself, whereas the easy way comes with the web server and thus “just works”, but not for a lot of the pages at BookMooch, which use another technology, and thus have to use the “hard way” to do it.

So…if no-one has any problems with then I’ll put this speed trick into place everywhere, and long pages at BookMooch will start to load faster.


If you’d like to see whether a page is compressed, use Firefox and install the “Live Headers” add-on from

With this add-on, when you choose “info” on a page, a new tab titled “headers” is now available. Click on that tab, and look for “Content-Encoding: gzip” on the bottom window (i.e. the “Response Headers”). If there’s no “Content-Encoding” then the trick is not being used on that page. You’ll also see the transferred size of the file (2022 bytes in this case) and if you save the file to disk, you can see what the real size is (12k in this case) and thus what the speedup was.

Feed-Icon-32X32BookMooch now has RSS feeds available of:

– a member’s inventory, ordered by date the book was added, so you can be told when someone whose book tastes you like adds a book

– any search you can build, so you can be notified whenever books meeting your criteria become available

If you’re not sure what RSS is, take a look at wikipedia’s page about RSS.

Next to the member name on any inventory page there is now a small orange RSS icon. Click it, and you’ll get an RSS feed icon:

Click on that icon, and if you’re running Firefox, IE7, or any web browser that knows what to do with an RSS feed, you’ll see something like this:

which lets read and/or subscribe to the feed. RSS feeds are cached on a one minute timeout, so it’ll take up to 60 seconds for a new book to appear in the RSS feed.

With advanced search is where this new RSS feature gets interesting. Any search can be saved as an RSS feed.

For example, if you wanted to see what books by Orson Scott Card are added each day, you could do this advanced search:

click on the RSS feed icon and you get:

Here’s another scenario: you want to be notified any time any book appears with the title “Omnivore’s Dilemma“. This is a very popular book that is mooched immediately when it appears on BookMooch. You could use the related editions feature to find the various editions and wishlist them, but that wouldn’t help you if a new edition came out that BookMooch didn’t know it was a related book yet.

So, from the book details page you would click on the title to search for books with that title:

click the RSS feed button, and now you’ll be notified whenever a book with that title appears in BookMooch.

Note that ALL search options are saved in the search, so for example you can show book details in your RSS feed, search inside a topic, or any other feature that advanced search supports.

RSS Search Feeds are cached on an hourly basis.

I know that there are a few other RSS feeds people really want, most significantly:

1) all new books
2) all new books in my country

3) all new books in a topic
4) all new books in a topic in my country

5) all new books in a certain language
6) all new books in a certain language in my country

I’ll be working on those soon.

What other RSS feeds would be really useful?

Advanced search now done

April 15, 2007

The advanced search feature is all done now, and a whole host of new features that went into it, are available now. This blog entry will go over them all.

The inventory page now has a “search this inventory” feature, which looks for books in the current user’s inventory (very useful for users that have hundreds of books in their inventory):

The wishlist page now lets you search for books in that wishlist, as well as searching all wishlists.

The really messy and complicated options that used to appear the bottom of every search result page and look like this:
have all been removed, and all the same options are now available in a clearer form in the advanced search page, and an advanced search button appears on the top right of all search results:
The advanced search form is automatically pre-filled with the values from the current search, so it’s easy to repeat the previous search and modify things slightly. This is especially convenient when you’ve done an advanced search from a “search this topic” page, or some other page where advanced search was automatically used, because you can see how the advanced search features were used in that search, and modify them slightly to your needs.

The advanced search page lets you only show books that are available from your country or from a specific country. This is very handy for people outside the USA who want to see what books are available in their country.


For example, if you’re looking for a book that has many different editions, available all over the world, you can limit the search results to just editions that you can mooch from your country. An example might be if you were looking for an edition of Shakespeare’s MacBeth from the UK.

Recently added books: you can limit the search results to only books that have been made recently available on BookMooch. This is useful if you want to see what books are now available by an author, and only want to see books that were added to BookMooch since you last checked.


Note that when a 2nd copy of a book is made available on BookMooch, the date of the new copy is the one that is considered. This is by design: there may be pre-existing moochable copies of a book that you don’t want to get, perhaps because they’re in another country or the condition is poor. This lets you notice when another copy of that book becomes available.

This advanced search example will find books authored by Shakespeare, available only in the UK, that were added in the past 10 days.

as part of this new search feature, a new piece of information now appears on the book details page, showing the date when the most recent copy of this book was made available on BookMooch. The information is displayed with a “Since:” label:

I don’t like the descriptive label “Since”, as it doesn’t really describe what this date actually is. I thought about “Date added” but that sounds like when the book was first added to BookMooch. I’d appreciate suggestions on a better label for this information.

You can now specify a date range that the books in the search results needed to be published by. This can quite handy if you are a fan of old editions, such as pre-1950 editions of books by John Milton. In general, I was quite surprised how many antiquarian books are available on BookMooch. There was a 1908 edition of a Room With a View available until a few days ago. Wow!

I also use this feature to find recent editions of translated works, because I tend to prefer recent translations. For example, works of Immanuel Kant published after 2000.


You can specify members that you want to search. Normally, you would only specify one name, but you can specify several names if you like, on name per line.

For example, this search searches my inventory for books by Bill Griffith.


this is actually exactly what the “search this inventory” field does for you, and this search has the same effect:


You can search wishlists, inventory, or all books that BookMooch has in its database using this new option in advanced search. Previously, you could only search available books (i.e. books in someone’s inventory).


The pages showing regions in France, Towns in the UK, and areas in the USA give you a simple search bar to search directly in that country. This allows you to avoid having to use the advanced search form and is easy to use.


When browsing books in a language, there now is a pre-filled search bar to search for books published in that language, thus no need to use the advanced search form to do this common task.


When browsing books in a country, there now is a pre-filled search bar to search for books available in that country, thus no need to use the advanced search form to do this common task.


Three small other changes were made:

  • the bio page no longer lists 10 books from your inventory, since this was not very helpful and made the page busier
  • the member main menu no longer shows your postal address, as this didn’t seem all that relevant and made the page a lot busier. You can see your postal address by clicking on your user name on the member main menu, which brings up your profile.
  • the bio page now links your country of residence to a page listing people in that country (though there seems to be a bug here with the USA, which shows no users, while other countries seem to work fine– I’ll have to fix this)

    I’m going to take a few days off now, as I’ve been working very long hours for about 3 weeks to get all these search features done, and my body needs a rest.


  • Noinv

    I’m thinking of removing the “member’s inventory” lookup feature in “browse“, because it really isn’t all that important (I think) to feature it right next the main search and amazon search features. It seems to me that it should placed on a secondary page.

    The two places that seem to make sense, would:

    – inside the “all members” page, as a search bar at the top.

    – on your “inventory” page, so you can lookup someone else’s inventory

    Any other suggestions or thoughts?

    I’m also not sure the “all wishlists” feature is useful in its current state. It gives you a page of the members with the biggest wishlists.


    Who would want to browse through thousands of wishlisted books? Now that advanced search can search wishlists, I’m tempted retire this page to a less prominent position, maybe at the bottom of your own wishlist page.

    The advanced search feature on BookMooch received a few more options today. I’m still working on it, and several more things are due soon, but here is where it stands now:


    The “not in these words” feature lets you specify words that must not appear in the hits. For example, if you search for “card” you will get lots of books by Orson Scott Card. Enter “orson” in the “not in these words” field and books by Orson Scott Card will be removed from the search results.

    The “words appear in” listbox has these choices:

    which are hopefully self-evident.

    The “From country” choice only appears in the advanced search for in the member section, because it needs to know your user id to determine what country to limit search results to. The two options are:

    This is quite handy for non-American members of BookMooch, who want to see if a book they’re interested in exists in their country. What this feature does is look at the country setting of every person who is offering to give away this book, and only shows the book if someone in your country has the book.

    You can specify the language you want the book to be in.

    The most common BookMooch user’s languages are listed as the top 20 or so choices, followed by all the languages in the world.

    This feature doesn’t work perfectly, because it uses the ISBN code to determine what language the book is in, and sometimes this can be wrong, for example if a German publisher prints a book in English, it will probably mis-identify the book as German. But, it’s right a great deal of the time. I may change this feature to use LibraryThing’s “ThingLang” lookup in the future, but I’ll probably always need to lean on the ISBN to some degree, when I can’t get better information about a book elsewhere.

    The “in topics” box lets you type a topic that you want to search in. For example, enter in “Humor” and your search will only find books that have the topic “Humor” attached to them. You can put multiple topics in this option, separated by a carriage return, and books that match any of the listed topics will be shown.

    This “in topics” feature has enabled me to offer a “search in topic” field in the “Browse topics” pages. It looks like this:


    I’m still adding features to advanced search, which will be released shortly. On my todo list are:
    1) search in wishlists
    2) don’t include your own books in the search results
    3) only books added recently (you determine how recent)
    4) search in a single member’s inventory (including your own)
    5) date published

    Over the next few months I’m going to be traveling a lot.

    If you live somewhere I’m traveling too, please drop me an email and let’s meet up and have coffee!

    • April 21-24 : London (at home)
    • April 25-29 : Antwerp (participating in the Meeting of Minds: the user is content [re: BookMooch])
    • April 30-May 12 : London (at home)
    • May 13-May 24 : Northern Italy (mix of vacation, and Magnatune business visiting Montisi Harpsichord Center). I’m traveling with my good friend Mary Deissler.
    • May 25-28 : Zurich, Switzerland. Giving the keynote presentation for the launch of Creative Commons Switzerland.
    • May 28-30 : Copenhagen, Denmark relaxing for two days before the next conference
    • May 30-June 1 : Aarhus, Denmark speaking on behalf of Magnatune at Knock Knock, The Future of Music
    • June 1-June 3 : Copenhagen, Denmark speaking on behalf of Magnatune at Reboot9
    • June 3-14 London : back home relaxing for two days
    • June 14-18 Dubrovnik, Croatia : speaking and partipating the iCommons Summit.
    • June 19-July 31st Berkeley, California : back home, 6 week break from traveling, phew!
    • August 1st-August 31st Stockholm, Sweden : a summer month relaxing in a great Northern European city
    • September/October (dates not yet firm), speak at the Creative Commons Luxembourg Launch (in Luxembourg) and the Media in Transition conference in Munich

    NewmFor the past week, BookMooch has seem a big spike in new members. I’m not yet sure why, but it makes me happy (grin).

    New members were averaging about 70/day, and has been at double that rate now for a week.

    Maybe it’s all those BookMooch cards I sent out (85,000 of them) that are starting to reach people?

    These are the raw numbers for “new members added per day” for the past few weeks:

    3/20/07 66
    3/21/07 85
    3/22/07 92
    3/23/07 59
    3/24/07 74
    3/25/07 68
    3/26/07 73
    3/27/07 79
    3/28/07 72
    3/29/07 88
    3/30/07 57
    3/31/07 61
    4/1/07 64
    4/2/07 65
    4/3/07 76
    4/4/07 95
    4/5/07 80
    4/6/07 119
    4/7/07 135
    4/8/07 277
    4/9/07 172
    4/10/07 157
    4/11/07 129