Just last week I had two people email me with similar site ideas to hn-books.com, and when I launched hn-books 2 completely other people emailed me that they were working on similar sites.
Must be something about hacker books that's in the water. Lots of sites with lots of features and such means better resources for all hackers, plus lots of folks getting experiences doing stuff like this. Most excellent!
Since I've done this, I guess I should say something pithy or insightful. I think the trick is the navigation piece. I see you have categories -- that's probably a good place to start. I started with questions, you can go to my main page, click on the hacker-related question you have, and be presented with a sorted list of answers based on your experience. (see http://hn-books.com/ )
I'm not sure if questions are the way to go either, though, as there are a zillion questions hackers might ask. I'd still like to see somebody come up with some new ideas in this area.
I also ran into the "just what are hacker books, anyway?" question that we get over here all of the time. I finally said screw it, I'll just put things that I believe are hacker-related. But I don't think there's any easy answer to that one, either.
Outstanding site, though! I hope some of these other guys that have spoken to me will post what they've done as well.
thanks for your feedback! Your release of hn-books.com really made me realize I should carry on, that the topic was interesting (which I believed). But I was quite far from being able to ship and busy with a lot of client work, too.
I totally agree that the navigation is the tricky part, and I have a lot of work to do on this :)
I'm really curious to see other people approach to solve the general issue of finding useful books!
In all cases, thanks for the kind words, appreciated!
Great page load time, by the way. (I know I'm a dweeb for noticing such things) I also like the fact you're using smaller image files -- I'm sure it helps with loads. And it's cool that you have a bazillion more books than I do. I struggled with how many books to include, and I'm still not sure I got the balance right. If I had to do over, I might go with a much wider list as you did. Don't know.
Cool work!
EDIT: FWIW, I enjoyed your site and our thread so much that I took a bit of time today and blogged about all book sites that are popping up. http://news.ycombinator.com/item?id=2250382
I don't want to drive the thread down super-deep, but if you have any questions or there is any way I can help, please shoot me a line. Perhaps all of us doing this can compare notes some time.
Just last week I had two people email me with similar site ideas to hn-books.com, and when I launched hn-books 2 completely other people emailed me that they were working on similar sites.
I'm not surprised. I've been working on my own half-baked version. Kudos to those of you who finished the baking.
Daniel, I really like your site and the curated list.
However, I find the categories in HackerBooks.com much more easier to navigate than questions on the right side bar of hn-books.
Both of the sites still need to address the question, 'how do I present the categories without requiring too much navigation'.
I know it's not sexy any more but how about tag-cloud per major category?
What I found is that I keep having "feature fever", where I think of all these ways of doing stuff that might or might not have value to the user.
The site database is actually set up for voting -- you can vote up and down books and create your own rankings according to your opinion. But it was another feature I had to kill. I find the hardest thing about building a site is killing stuff. It took me forever to strip out as much as I could from hn-books. Right now I'm a bit shy of starting to put stuff back in. Over and over again it looks like whatever I add -- reviews for tools, a link to get your own Kindle, a new question category, live real-time commenting with social links -- all seems to meet with some resistance from the community. I'm never sure if I'm hurting the community or just making artistic decisions that some small percentage of people don't like.
I really like hackerbooks with the simple categories and multiple books above the fold. One of the emails I got recently was from a guy who set up a "bookshelf" with books on it -- an image of a real bookshelf with what looked like real hacker books sitting on it. That was pretty cool too.
When I set the site up, I consulted with a few HNers about this very issue -- how to sort/filter. Like you, I'm still not happy with where it is right now.
So I'm open-minded, I'm just keeping the bar a bit high for any changes right now. One of the most difficult things I am learning is to separate what might be cool from what might be best. Still working on it. If you guys keep asking for tag clouds, happy to put them in.
EDIT: Bit of trivia, if you hold down "ctrl" and click on questions in hn-books you can apply multiple filters. So say you only had time to read 1 book, but wanted to know as much as you could about "how do I make beautiful web pages" and "How do I tell people about my business". You just ctrl-click on both, then get a list of books that covers both questions: http://hn-books.com/#BC=0&EC=0&FC=0&Q0=1&Q1=... Not sure tags would work that way by default (Also this is probably a great example of something I spent time putting in that means absolutely nothing to anybody)
Daniel, The ctrl-click feature is really cool.
I hear you about feature creep. I am struggling with similar issues with what I am working on.
I keep reminding myself Every piece of software I paid for recently is dead simple to use
Search facets are likely the best and fastest filtering mechanism for the users. It's pretty much just a straight products site with some recommendation engine. Just start faceting out the books by a few criteria, topic, length, proficiency level, etc.
The autocomplete is fancy, but it involves: a) typing; b) spelling; and c) using the arrow keys and the enter key. Facets will let you get to the same place in a few clicks. You can always do both, though.
Thank you for building this. I admire the simplicity and elegance. Would be cool if the "Mentioned 2 times at Hackernews" was hyperlinked to the mention. Can this be done?
As quite a few have asked via the comment form: it's a nginx + passenger + ruby 1.9.2 stack, with solr for indexing, mongodb for data back-end, rails fragment caching in redis, and a warmup script to fill the caches.
Well I'm more used to Redis, as I've used more than a couple of times with Resque (job processing in Ruby).
I started the crawler behind HackerBooks with Resque and Redis, but ended up saving some RAM by going back to a simple daemon. I reused Redis to provide the caching.
on that note,
hackertext, hackermenu, hackerledger, hackerconventions, hackerelite, hackerplans, hackermanifest, hackerstatement, hackerplay, hackersection, hackervolumes, etc... all seem to be free. (shameless plug for nametoolkit.com - downvote me if you wish ;))
Yes I know about Daniel's site, which was released while I was working on hackerbooks.com. I decided to keep working on it anyway, but it took me a fair amount of time to release.
I recently registered fivegoodbooks.com with the plans of trying to reduce choice aversion for technical books. i.e. the top 5 referenced books by the community to start learning a subject. This is really nice work, now I'm the one to have to decide if I keep working on it :)
Nice domain name... got me thinking. I wish there existed a community I respected that curated books on all topics. Like, I'd love to have fivegoodbooks extend from topics like Ruby and Python to Russian History and Urban Planning.
Another interesting idea maybe would be to map the annotations/bibliographies of all books, so I could start with books I've read and better see what kind of linkings exist. You could visually see the seminal works in a field and all the branchings. Maybe that already exists in some form?
Thanks for your kind words! Well I can see myself using both sites, really :)
That' what I learned from working on http://www.learnivore.com too - at the same time came out http://rubytu.be/, but I used both actually, and some people preferred one, some other the other.
Interesting. I had a shower idea(tm) one morning where the combination of a rating and user-supplied biographical data at the time of the rating (e.g. "I was a novice with Python when I read it") determined a book's effectiveness.
The idea was founded on the tendency that people are skill-biased when rating books. They might dislike a book for being confusing or too easy because it wasn't designed for them at the time of reading. This was an attempt to figure out which books were just bad, and which were only rated bad because they were read without proper experience (or too much).
Ultimately, using community data, a visitor would be able to discover a "bookpath" of great resources that syncs up with their level of skill.
The wiki approach would be great if the data was laid out appropriately. Community-edited wiki might lead to a singular view of what a good path would be.
The benefit of a multi-axis rating system is that you could lay out data using different permutations and add/subtract inputs (e.g. rater's experience at time of rating/age/hell, maybe even personality type). I'm sort of modeling this off of robust scientific questionnaires.
It does seem to require some more user involvement, but nothing a fantastic UI couldn't fix.
I really like this idea, especially if the "bookpaths" converge.. i.e. the ruby path and python path converge to broader topics such as general software development (pragmatic programmer etc.)
Useful, and also a neat way to make some side-cash via your affiliate link. I suspect I'll be checking this regularly.
One thing that would be really handy - or at least interesting - is a "most recently mentioned" list. For example, when people were talking a lot about Program or be Programmed a while back, it would have been fun to see that rise to the top.
It may generate some side-cash via the affiliate links - it would certainly be useful to us. We'll see how it goes anyway :)
The most recently mentioned list is a very good idea. I had something similar in mind, like a news-letter that would send the "most mentioned this month", so you can get the trends.
I think it could be useful for sure. Both a most recently mentioned list, and most often mentioned list. I'm more interested in the latter as it is more telling.
If making cash via an affiliate link is the goal, it would make sense to have the link to the user's localised Amazon site. I much prefer to buy from Amazon.co.uk as I'm UK-based so right now I'll just highlight-> right-click-> google the title and end up bypassing the affiliate link.
Well it's only a secondary goal, as I don't expect to make loads of money with it, but it would certainly be nice.
Being able to select your amazon store is planned as well (I'm in France so I totally understand your point :-)).
I choosed to ship without that though, to see if people like the site first or not. It will require a bit of work underneath to do well, things such as verify in the background if a book is actually available on amazon.co.uk, .fr etc to avoid sending the person to the wrong place.
On a slightly unrelated note, are there any UX/UI books that are targetted for programmers? I'm a complete noob with photoshopping and can't create a button to save my life. Working on side projects, this is really annoying.
This site is really a good idea. The Amazon links can get quite popular (I know from looking at my Amazon stats on @hackerlinks when I had the affiliate code inserted.)
This is really nice looking. I am working on a concept that encapsulates part of what you've done here and I would love to have a discussion with you. I'm not ready to launch yet, but will be in a couple weeks. I gotta get moving quickly and you provide good motivation!
For books published by the Pragmatic Bookshelf, you should link directly to the publisher, in my opinion. PragProg.com sells DRM-free ebooks (in pdf, mobi, and epub) for cheaper than Amazon. They are a great value and I bet the PragProg folks keep more money this way, which is a good thing.
I dont know if there is an API for it or not but if you can get the Amazon rating of a book and display it on the book description page, it will be great. :)
On AZ ratings: I wrote that down. It's somewhat complicated because Amazon just made it a bit harder to embed that. It now has to be an iframe; the iframe url must be refreshed every 24 hours.
But overall this should be doable to, I'll see if I can make it usable.
Minor bug report: I did a search on xbox (hoping to see Hacking the Xbox) and the Kinect system came up -- you are probably scrubbing against Amazon and it came up.
I really liked the site, congratulations. Just because I am a stack freak, can you tell us more about your technology stack and how fun (or not) was to develop this?
Awesome. I recently ordered the well-grounded rubyist as I've heard great things about the book (though its on page #2 on your site). How long did it take you to complete the project?
Since I started freelancing in 2005 I've always deployed my stacks myself, learning gradually.
I always felt that doing it manually (even using well-written notes) then gradually home-baked tools was a loss of time.
I looked at chef more than a couple of times, waiting for the documentation to be more available, and for feedback from people I know.
I started using chef with the opscode platform, then went back to chef-solo as it really fits my needs already.
I'm using it for client work as well as for everything behind HackerBooks (including Rails app deployment without capistrano anymore).
The consequence is that I can boot a new ubuntu instance from scratch, completely configured with the whole stack (rvm, rails 3, passenger, nginx, solr, god, the properly configured crawler, data restored from a S3-like etc) in less than 15 minutes.
I will never go back to manual sysadmin (apart from small tips) - this really fits my way of working.
But it has been a time-sink to get in :)
Hope I replied to your question properly, if I didn't, ask again!
I'm a nobody, but consider making the pages less clicky and more product page-y, with the external references that provide the structure of your site constituting something of a "topics covered in this book." I think the references/links should be at least as prominent as the book blurb that currently serves to authoritatively describe the contents. My point is that the contents may actually be described (for sufficient numbers of refs) better by listing how people are actually recommending it, how its readers are using it. You could even implement a semantic parser that constructs a new book blurb based on the words and sentences in the recommendations and references. :) Anyway, good luck!
I wonder sometimes if it'd be worth creating a site that aggregates all the most useful and interesting information from social news sites like Reddit, HN, etc. like this site does for books on HN. I spent a long time finding all the best "life hacks" on Reddit the other day and really found some gems.
Thank you, thank you, thank you so much for creating this!(and thank to the community for voting it up so i could see it)... I've been searching everywhere for book recommendations to help expand my knowledge of NLP and ML, then I suddenly click on this link and there it is! Great site!
Wow, good idea. I've browsed it this morning and it's an excellent website. Some things I might add is a link to the context of where the book was cited and also better categorization. (i.e. effective C++ in compiler book). But otherwise, amazing. Thank you
I'd really love a feature where people could submit exercise solutions for books that don't include them. I find exercises a lot more useful if I have a solution to compare against.
It's probably not too difficult, although my guess is you'll have to refeed your content. Unfortunately I've never worked with solr so I can't offer suggestions on where the modifications need to be made.
On parsing: it's actually a somewhat fastidious process that involve digesting a couple of GB of data, but here is the bottom line.
I look for amazon.com links in the content in general - I will broaden that to other publishers and full-text extraction too later on.
The content itself comes from the StackOverflow dump (for SO) and a mixture of a crawler allowed by PG + the previous database dump that was available at some point.
I extract all the books, quotes, users data from both, conform these into a common schema, and index the whole result.
Hope I answered your question properly - feel free to ask again if you'd wish.
On ranking: I know what you mean! I need to find some way to balance number of quotes with textual relevance, which requires me to dive a bit more into solr. I currently use textual relevance first because it gives more useful results so far.
For ranking, instead of textual relevance (which will be hard to achieve :/) and # of quotes (it can be easily hacked/spammed or new announced books will have a huge weight on the ranking), I suggest you to check timelines: if a book is quoted once/twice/... a month regularly, I'm pretty sure it worths reading it
I'll love to read about the architecture behind the site... yep, technically curious :)
I will offer a more advanced search with similar features, definitely!
On the architecture: I'll create a side-blog that will outline all I learned while working on this. It's been a crazy ride actually (especially because I started using chef and vagrant full speed).
Tweaking relevance is not super-easy with Solr. We designed IndexTank to have a very simple way to play with ranking. You can modify your formulas in your dashboard or through the API and see the results order change in real time.
I really love what you got here. I'd be happy to help you try out IndexTank and make it better. It would really take the Solr configuration burden off of you.
well I considered using IndexTank earlier on, especially because I didn't know yet how to deploy Solr. The relevance is mostly done already, I just needed to learn to use formulas :)
One thing that put me off is your cap in queries per day. The smallest paid plan (50k items in index) is capped at 1,000 queries per day.
Isn't that an issue for most sites ? Do people usually cache your results ?
The 1k cap for the 50k doc plan is old, we will be upping that significantly. What would be a number of queries per day that would make you comfortable?
Questions:
Apart from the "Quoted by" section, is any of the content from SO or HN displayed on the site? E.g. are any comments incorporated in the book descriptions, or are those written by you/wife?
Currently, no content from HN/SO is displayed apart from the Quoted by area.
We're not editing anything manually; what I will do is display the actual conversations in the "Quoted by" area, either when you click on a conversation.
I may ove the quotes above to make them stand out more.
Aaah - I see :) The book description is provided by the Amazon API itself; I'm not aware of any issue with publishing it if you are a registered API user.
That was what I was doing initially, but actually it has (big) sideeffects: if you search Ruby and get the most quoted book, you get... an ASP.Net book!
So I'm currently working on balancing textual relevance (eg: Ruby) with the number of quotes.
Site looks great - really great - on a macro level, but when you get down to it, it doesn't really have the content I'm looking for.
There's extreme misuse of the space on the page. When I was looking at Code Complete (a book I've been trying to get my hands on for a while), there is very little content about the book. The synopsis is cut off (!) and there are no reviews. But if you were trying to save space, why on the hells are there over 9000 books following in "quoted discussions"? You need to switch what you're truncating here. Also, I would suggest at least copying Amazon's ratings for some measure of book quality.
Hey - I understand what you mean, really. I really want to work on this specific page, and I'm actually frustrated to have released it this way :)
Here's what's planned:
- instead of cutting the book description like it's done currently, you'll be able to expand with a click
- I'll do the same on books and quotes, because hundreds of books are not useful in the "suggested books list", definitely
- and I want to focus more on getting the actual quotes to the front (eg: allow to read the actual quotes by HNers etc) because I feel it brings significant usefulness
I'm mixed on the Amazon ratings, both because recent API changes made it unpractical to really use the content (it's now an iframe that must be used as is, and refreshed every 24 hours), and because sometimes the reviews are fake as well.
So I'll try to bring more value by letting users know what people think on HN and SO.
Would these points make the site more useful to you ?
On the synopsis: well in some (too frequent) cases, the synopsis was just several pages long, so the related books and quotes were really, really hidden.
I need to find a better middle ground.
But in all cases, thanks for your critics, it will only help me make the site better.
Just last week I had two people email me with similar site ideas to hn-books.com, and when I launched hn-books 2 completely other people emailed me that they were working on similar sites.
Must be something about hacker books that's in the water. Lots of sites with lots of features and such means better resources for all hackers, plus lots of folks getting experiences doing stuff like this. Most excellent!
Since I've done this, I guess I should say something pithy or insightful. I think the trick is the navigation piece. I see you have categories -- that's probably a good place to start. I started with questions, you can go to my main page, click on the hacker-related question you have, and be presented with a sorted list of answers based on your experience. (see http://hn-books.com/ )
I'm not sure if questions are the way to go either, though, as there are a zillion questions hackers might ask. I'd still like to see somebody come up with some new ideas in this area.
I also ran into the "just what are hacker books, anyway?" question that we get over here all of the time. I finally said screw it, I'll just put things that I believe are hacker-related. But I don't think there's any easy answer to that one, either.
Outstanding site, though! I hope some of these other guys that have spoken to me will post what they've done as well.