BeanBag FrontEnd

What is BeanBag?

Beanbag is a book cataloging application on steroids. It primarily relies on Amazon E-commerce Web Service, ISBNDB etc for getting information about the book.

Features

1) Add/Delete a Book

Give it an ISBN No, and it will query first the AWS to get book details (authors , publisher, recommendation, description, review, rating, Book Image). It queries ISBNDB only if it cannot find the book thru AWS.

[ Relevant Screenshots 1/2/3/4/5 ]

2) Import/Export a Book

Import is pretty simple we just scan a file for valid ISBN No’s, then skip those which are already there in our catalog, then simply loop the Add a Book Function. One can Export either the entire book collection or the one’s on the shelf.

[ Relevant Screenshots 1/2 ]

3) Search

You can search the catalog for books based on Title / Author / ISBN.

[ Relevant Screenshots 1/2 ]

4) Gutenberg reader

The entire gutenberg archive of approx 19000 books is incorporated. User can browse and download any book that he may please. Besides a user can check whether the book he has cataloged is available @ gutenberg as an eBook. If so he can download and read it. All of this in two clicks.

[ Relevant Screenshots 1/2/3 ]

5) Collecting Book Relevant Data

This is my fav feature. During the Book add procedure, after the user verifies the book as the correct one. We use the Yahoo Search API to locate the Wikipedia Entry for the Book ( By searching en.wikipedia.org and using the book title along with author in search string ). Once the wikipage is located we then use the Technorati COSMOS API to figure which blogpost link to that books wikipage. Thru this we get relevant blogpost talking about the book. Then comes into picture the Yahoo Site explorer API where in we get the inlinks for the books wikipage. Thru this we get relevant weblinks for the book. We repeat the above process for the author of the book. Get his wikipage and then use site explorer to get inlinks. Now comes the most ambitiously stupid insane part. We use the Yahoo Image Search API  to extract 5 possible picture of the author. Then we use Librarythings API to locate the books catalog page at librarything. And then the madness comes to an end.

[ Relevant Screenshots 1/2 ]

6) Tracking Loaned Books

Incase u give the book to someone you can track the book as in to whom you gave it and when u did expect it back.

[ Relevant Screenshots 1/2/3/4 ]

7) Read/Write/Blog Book Review

You can read the reviews fetched frm Amazon, write your own and even better, blog them.

How relevant is the Fifthth feature ?

I know it’s quite ambitious, it has the potential to work flawlessly or be a total disaster. Lot depends upon getting the correct wikipage for the Book. Coz if that is right, you will get mostly relevant data from Technorati COSMOS API and Yahoo Site Explorer (InLinks). But Sometimes for e.g say the book Anthem by Ayn Rand … Beanbag selects this page instead of this as the books wikipage. So everthing that follows is incorrect. We get ppl talking on their blogs about the various National Anthems or theirs. InLinks are incorrect too. I guess you get the picture.

Ok the usage of Yahoo Image Search API for finding the Image sounds kiddish … I did it for the fun of it Ok … And I learnt two things 1) It works … well almost … If it’s a POP / OLD Book ( with an uncommon author name (first name and last name combination) ) u will for sure get the picture of the author in the first two entires (e.g R.K.Narayan,J.K. Rowling) 2) I feel Yahoo image search is quite better than google ( I kind of checked for over a dozen authors  ) … I just coded this feature coz I felt it was something pretty cool to do … irrelavant maybe … cool … yep

What all is used?

Programming Language :

Everything is coded in C++. All the code is written from scratch, absolutely nothing has been borrowed frm ne open source project whatsoever except the code for BlogThis feature from CatKin. No other programming language or any Search SDK is used.Everthing is written frm scratch.

GUI ToolKit :

QT 4.2 Technology Preview is used. It was released as on June 30th. Prior to that i coded everthing in 3.3, yes 3.3 not even 4.0.

GNU/Linux

Ubuntu Breezy Bagger

Got to thank

Dipanjan is the VC of this project, coz for the last 15 days I am @ his place day and night just using his comp (dont hv one of my own) . He sponsered everthing frm lunch to dinner. At one point of time we were suppose to do this together. His semester exams and lack of knowledge of QT and Linux in general didnt help much. He’s a .Net Guy u see. However he chipped in with gutenburg integration (try parsing a 45MB sized XML to be dumped into a table) he did it and says it was lots of fun. Thanks dude … for everything …. Also Ankit … It was one of his weblog post that gave me the idea of a book cataloguing software ….

Things I learnt

C++ and QT 4.2 , Seriously what they teach in college as in the code we write for our lab problems and the theory we study doesnt really train us completely. There is whole lot more to learn. C++ CookBook from Orielly is really good and so is C++ Primer and C++ FAQ.

I would like to say

AWS,Yahoo Web service is really robust, as in they are never down on maintenance. Yahoo has the best Web service doc … precise, straight to the point … In case of AWS until u dont get hold of the pdf ur lost … their website doesnt help much either … even after getting the pdf … u hv to spend atleast an hr finding things … May be they should make a web based documentation like these ones @ yahoo … u find what ur looking for in minutes …. Besides there are loads of cool stuff at developer.yahoo.com to check learn frm …

I did a major blunder by opting for 3.3 instead of 4.0 initially wasted a whole lot of time … should  have tried a little more … There are lot of things/features are missing …. ran out of time to implement these for e.g user should be able to search books based on title/author frm amazon and get them displayed on the shelf and then frm amongst those chose the book he want to add, user should be able to browse the catalog in multiple ways … e.g click on the author and u should get the authors books only on the shelf and some stats abut the author … one should be able to clip in audiobooks for any book cataloged … The 5th feature should be user assisted i.e Show him a thumbnail of the Book Wikipedia and ask if this is the correct page, and so on …. QT needs to embed a web browser as a widget … say mozilla/gecko/firefox for that matter ( I hv heard abut webkit ) never tried … QTextBrowser is good for html only … Finally what is with this beanbag name … I know it sounds so lousy now that I think of it, bookkeep.in could hv been a good name … I guess i was stoned when I came up with this name …. Whatever … So this is what I made …

Tags Project

Comments are closed.