I had an itch – I wished there was a simple way of deciding whether to buy a book and where to buy a book. So I created http://isbn.net.in
The initial idea I had was to make a bookmarklet that will do everything – it will figure out the unique book number (the ISBN) from the current book page (whether a publisher’s site or any ecommerce site), and then search on all the potential Indian online book stores. I then realized that you can’t fetch from other domains because of the same-domain policy of AJAX (I could’ve used YQL or something like that, but I felt it was a slippery slope).
So I had to create a web backend that will do the searching on behalf of the bookmarklet and changed the idea to simply show a jQueryUI dialog showing the sorted list of prices.
Then I chanced upon http://isbn.nu and immediately said to myself: “I want that with Indian prices”. Since I was half-way there already, it took a few additional steps of buying a good domain name and configuring to use the simple URL format they used.
There was one major problem with the bookmarklet – on sites which already have jQuery, it used to conflict, and although jQuery itself can live with multiple versions side-by-side, I could never figure out if jQueryUI was loaded properly or not. I tried various things but had to give up in vain.
Finally, I decided the pop-up overlay thing was not important, and the bookmarklet can just simply take you to the correct isbn.net.in page directly.
So the “where” part of the question was answered.
I still had to answer the “whether” part of the question – that’s when a friend told me about Amazon ECS using which I was able to get the very useful Amazon ratings. Then I was able to get the image of the cover of the book and other details.
Then I came across bookseer.com which makes great book recommendations, so I included an automatic link to that on the book page.
So, after much ado, I present http://isbn.net.in to you. All the instructions are on the homepage.
Implementation was a lot of fun – I used Ruby, Sinatra, HAML, Mechanize, amazon-ecs, jQuery, Blueprint CSS. It was the first time I had really used any of these.
Disclaimer: I created isbn.net.in because I needed a tool like this. This has nothing to do whatsoever with my employer. It is just a personal side-project.
Updates on Praise, Feedback and New Feature: See isbn.net.in updates article.