Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: Hackershelf. Community curated collection of legally free books (hackershelf.com)
532 points by okal on Feb 14, 2012 | hide | past | web | favorite | 121 comments

Shameless relevant plug: here's the site I set up for community curated startup books that are not free: http://hn-books.com

Features include searching for books by the problem you are trying to solve, one-stop cross-searching of all the hacker sites so you can review what other hackers say about the book, and free startup tools like a countdown clock for your startup's runway.

About the time I did my site there were a bunch more book sites created. If I had the list I'd be happy to post those as well. Seems like books -- both free and paid -- are always in demand with this community. I think the key feature here in all of these sites is "community curated." I find reading what other hackers say an irreplaceable aspect of selecting which books to read. (My list was generated by spending a couple of days on Google searching HN and reddit finding the best-of-the-best books for hackers)

You have a pretty diverse collection of books there! Do you update the site regularly?

I would suggest that you explicitly name the site as hacker-books or something like that. For people who don't know about HN, would be able relate to the name better.

Also consider adding a list of online resources that are not in published form. There are a ton of that out there, would make it even more diverse.

Overall, thanks for your effort.

This is a best-of-the-best collection, so I only anticipate adding 5-7 books per year. Maybe not that many. I shoot for books that I know will be classics 20 years from now.

Great idea about the name and the online resources. Thanks! I tried adding tools for a while. There are a lot of possibilities with a site like this. My plan is just to take it slowly. Since it's a classics thing, there's no hurry.

HN-books is great. I particularly like the recommendations feature. Great work. /r/csbooks was a major inspiration for me. I just found it frustrating having all these disparate sources and scouring them every few weeks, so that's one problem I'm trying to solve with the Hackershelf. http://hackerbooks.com is also a good resource.


Sorry for the delayed response. Today of all days, there's been a blackout in my neighbourhood, an all-too-frequent occurence, sadly. The lights just came back on, so I'm pulling an all-nighter for the urgent stuff. The response has been nothing short of overwhelming, and I'm looking forward to start iterating based on your input. I'm truly grateful.

Some pretty embarrassing bugs have shown up that I didn't notice in production. I want to start working on those tonight.

As for the feature suggestions, some recurring themes seem to be

1. A search function. I might implement a rudimentary search anytime from today after I squash the bugs. The sorting might present an issue, but I'm looking forward to working on it. For now, this should work hackershelf.com/topic/<topic>/ e.g. http://hackershelf.com/topic/ruby/. Don't forget the trailing slash for now.

2. Alternative links. This was actually in the initial version, but I wasn't happy with how I implemented it. Perhaps a free-form notes box will do the trick. Any suggestions?

3. RSS feeds.

Also, any thoughts for a forum where the community can give suggestions in terms of features and bugs would be helpful. I shall be posting updates on my tumblr for now (http://journal.okal.me/tagged/hackershelf) under the tag "hackershelf" for the foreseeable future, when this story inevitably falls off the front page, so you might want to check that

How about research papers, dissertations, and so on? Many are far more informative than when the authors pad the same content to book length.

Survey papers are particularly useful. Exploring their bibliographies is one of the fastest ways to get up to speed on a particular issue.

That sounds like a good idea. I need to limit the scope for now since I'm working alone, but I'll keep it in mind for future features.

This is totally awesome! Here is some constructive feedback:

It took me 3 visits to the site to figure out how to add something to my shelf. The little pin would probably be better served if it were below the short description next to the 'Book Profile' and 'Book Website' links on the browse page. Though since adding a book is really the primary action you want your user to take I'd say make it a really obvious button that goes underneath the image of the book cover.

Also once I've clicked on a book to learn more about it, there's no little pin icon on the in-depth description page. Again I'd suggest making it really prominent and obvious. I went back and forth between browse and the description page several times looking for it. I need the brain dead 'Add this thing' button. Your pages are minimal, which is great, because it means that you can make that button obvious very easily. I think there was a good HN article a while back about making the most important item on the page obvious. IMO adding something to my shelf is the most important user action because after I've added just one book I now feel like I have a bit of a virtual stake in that profile I just created and I will definitely come back to build my collection :)

Great idea! Thanks for creating it

P.S. Also just noticed that the hacker shelf logo and title text does not link anywhere. I'd suggest that take the user home.

Thank you!

Someone else pointed out the issue with the nondescript pins. I'll find a way to make it more prominent.

I hadn't realized how frustrating it would be until I had to move back to the 'browse' page to add a book from its profile. That should be an easy fix. Expect an update within the week.

I fixed the logo so it points to the main page, so that should be okay now.

I'm glad you like it. I appreciate the feedback :)

Showing what formats the book is available in would be really helpful. Some of these are not free for download, but only to read online.

Licensing info might be useful as well. Some of these are free to read but not to distribute.

Seems like a lot of people want this. I'll work on it as soon as I can. Licensing info is also a priority. Thank you.

Visual nitpick - the tags are very distracting. When I scroll through a page, I want it to be static so my eyes can follow what I'm doing. Things popping in and out of existence really jars me. The tags' color doesn't seem to mesh well with the rest of the site either.

Other than that - great idea. Best of luck!

Yeah, the tags do seem a little disconcerting when scrolling. I felt like they made the site seem a little too busy if they are constantly on display, but I thought they'd be useful for jumping to interesting topics from the front page, like ptn suggested below. I'll figure out a better way to present them. Thanks!

Tags make it easier to choose which books to examine and which to pass, so maybe just always show them, not only on hover over.

Nice site, but it seems of the books aren't really free. Code complete and Programming pearls come to mind.

I came back here to say this as well. It doesn't look like there's moderation except by the community ... and if the community doesn't realize that the site is for free books and is just upvoting books they like, then it's not really free books. http://hackershelf.com/book/45/code-complete/

Yeah, I noticed this as well. I was browsing from my phone on the bus and felt pretty helpless. I didn't realize moderation issues would crop up so soon. Hell, I wasn't even sure people would like it. Rest assured, I'm working on this over the next couple of hours. Thanks.

Perhaps the solution would be to simply include a "free []" checkbox in the post book form. That way those who want free books can just select a filter.

Which also ceases to make the site a community around free books.

A nice feature would be the inclusion of essays. I think they should be treated as second class citizens on your site but it could add significant value for people browsing by tags.

Awesome project by the way, will definitely be using this.

Great idea! I'll work on that once I've ironed out the kinks in the system. Thank you.

Design looks pretty good. Is there any reason to require signup to submit a book? Maybe you can just add a captcha for non-logged in users?

That sounds like a good idea. The signup is meant to keep away people who might submit books that don't fit the guidelines. I was also thinking of implementing a points system for users down the line, based on submission quality. But I'll definitely look into captchas as an alternative. Thank you :)

Or you can use BrowserID

Nice project.

Feature Request: You need a way to let people specify an image from a URL, not just upload one from local storage.

That would be useful. Thanks for the suggestion :)

Nice idea. Two things:

1) How are points assigned? I don't see any place to upvote/downvote, but I see that certain books have points while others do not.

2) There should be a way to sort by points.

Edit: Also, maybe a tagline at the top? (e.g. "Community curated collection of legally free books.") The 'about' page discusses the purpose of the site, but if I happened to just stumble upon the site, it wouldn't be clear how this is different from other sites that do not concern themselves with legality... especially since you have 'hacker' in the title ;)

Hi. To answer the first question, there's no explicit voting option. A book gains points everytime it's added to someone's shelf. So, no downvotes either.

As for sorting by points, I was hoping to add that when I implement search.

I agree, I should probably make the "legally" more explicit :) It's already in the title though.

Do you mean "legally" is in the title of web page, or of the HackerNews post? I see it on HN, but not on the website.

Btw, I'd like to echo someone's request for an RSS feed. I'd love to see when new books are added, and I wouldn't mind if you had ads or affiliate links to Amazon for hard copies in those updates.

It's in the window title, but I agree, it should be on the page. In Chrome, my tabs only show me about 2 words, so I never see that title.

Here is a site that's been around for a while : http://www.theassayer.org/

There are a number of popular private DropBox shares of computer science and startup ebooks that do the rounds in these tech circles.

Yes, we're talking about books that are not legally free

When I go to a startup's offices or a friend's house I often flick through their library of tech books and then find myself picking one or two to buy on my Kindle. I'm sure you do this too.

I find myself doing this with the dropbox share I'm on - I skim through the pdf of an interesting book and then just buy it on my Kindle.

Ask your work colleagues if they are on any such Dropbox shares, there are a few of them.

EDIT: I assumed I'd get downvoted for the above, despite being careful with my wording. Just to be clear: I'm just saying that there are DropBox shares of this content - that is a fact. And that when I go to startups and read their books, I often buy them - this is also a fact. And that your colleagues might already be on these shares - this too is also a fact. That's it.

Yes, those are all factually correct. They're not, however, relevant to a thread about "legally free tech books".

I didn't down-vote you. But if I posted a comment about Usenet or torrents or other sources of not-legally-free books I'd expect some downvoting or negative comments.

I didn't downvote you, but it's really important to me that the authors give their consent for sharing.

Great start! Looks like you have some great feedback here as well. This is a resource I could see myself coming back to often.

One thing I noticed is that if I add a book while in the 'browse' list view, I am thrown to the top of the page where I am given a notification. If I could maintain my position on the page that would be ideal, maybe a pop-up notification that the book was added; or replacing the pin icon with another graphic for removing the book from the shelf. This way I don't have to scroll past all the books I have already looked through (not as big of a deal at the moment, but I could see it becoming an issue as the collection of books grows).

Also as you add features to the site, an option for browsing books in a 'grid view' rather than just a list could potentially be useful. Especially as the collection grows.

Best of luck, looking forward to see the resource this site will become for the hacker community.

Looking forward to your patronage :)

I'll work on the scroll, but bear with it for now. There's zero JS on the frontend right now, except for some analytics code. Adding to your shelf shouldn't require a whole page load. I'll ajaxify it in stages.

Thanks for the wishes!

I understand a work in progress, so it doesn't bother me so much, just an observation that hopefully helps! Agreed, ajax is the way to go, a full reload is expensive.

This is immensely valuable!

I do have some critiques of the site, though.

- Why do I need a password and email address to keep a list of free books? There's no private information here.

- I'd really, really like to be able to search

- Failing that, I'd love to see the list all on one long page, organized in some way -- even if it's just alphabetically.

Happy you found it useful. I fixed the issue with the email. All you need is a username now. I'll make it so you can edit your account info and delete your email if you'd like. It's going to be pretty painful to use once the collection gets to a certain size. I want to start work on search soon. You can hit me up at okal at justokal dot com if you have any other suggestions. I'd be glad to hear them.

Have a look at the theassayer link I posted. It appears to fulfill much of your requirements.

Why, thanks! There's a surprisingly complete set of hard science curriculum there, something I'd been wishing for.

seems like you should have http://www.paulgraham.com/onlisp.html if you're posting here ;o)

Haha. Good point. You could add it if you like ;)

i may be being a bit dumb here, but i can't see any way to register...

[edit: also, clicking top left should always lead back to the front page] [and you shouldn't be displaying "shelves" on "about" to people not logged in] [and now someone else has registered it anyway]

FYI - I just added 'On Lisp', but the registration button is at the top right, called 'Signup'.

(thanks) ok, another small bug - for sufficiently narrow browser windows the registration links are not shown (just drag your browser window narrower and you'll see them disappear). you need to float right or similar.

Thanks for noting that. I'll have to do a little more work on the layout. I hope it wasn't too frustrating.

I added a book for you. I like the idea and design. I think there should be another column that stores the location to the book. I think that the homepage should just be the link to the book's website. Maybe an upload option to add the pdf or a link to the direct download.

I'm thinking of adding an "Additional notes" box to the book profile for that sort of thing. Recent events made me shy away from any sort of hosting, but I definitely see the value in direct download links. I saw your submission :) Thanks for trying it out. Hope you'll find it useful.

Nice work!

How about download links to PDFs (and other formats if avail)? In my experience quite often links to external sites are down/changed/weird/unclear etc; straight downloads would be better imho.

Glad you like it! Thank you. It seems like that's something people would find useful, as jonaldomo suggested. I'll work on that as soon as I can. I was also hoping to drive traffic to the book homepages to support the authors, which made me a little hesitant to show direct links.

Firstly. Really good idea to list these books.

As for the direct link vs. link to the website... You could have both maybe?

Thanks you. I'll add that feature in a later deployment, once I work out the details.

Yeah , sorry I meant both, not removing the link to the website.

That would be practical, however many of the books also contain information on how they can be bought even if they are free. So that is also information that should be displayed. It's nice to support the writers where they provide something useful.

Pretty cool! If you'd like I could add your content to http://www.hackerbooks.com/ (and link back of course). Let me know!

Looks interesting, but you've got a contradiction on your signup page: the email is obligatory (which I personally don't like), but it says optional inside the text field.

Nice resource. Quick suggestion: took me a minute to figure out how to add something to my shelf -- you may want to make that pin icon a little more prominent.

Also noticed it doesn't show on my phone, since it's triggered by hovering. Will fix that tonight. Thank you :)

Nice list.

Are duplicate entries accepted? "Eloquent Javascript" has two entries.

http://hackershelf.com/book/40/eloquent-javascript/ http://hackershelf.com/book/39/eloquent-javascript/

Perhaps, they are submitted around the same time?

Edit: Now, I notice two entries for "Learn You a Haskell" too which are pretty far apart in their ids.

Thanks :) Duplicate entries are not allowed, but I'm still trying to figure out the best way to handle them. If you come across one, simply flag the last to be entered so I can manually delete them. SICP also got added a couple of times.

Auto complete when entering a new title might help as a last reminder to keep duplicates down

Maybe you should delete ones that have fewer points :)

Good stuff. Just added Mercurial, the Definitive Guide: http://hgbook.red-bean.com/

I should add that Mercurial, the Definitive Guide comes in PDF (http://code.google.com/p/i18n-zh/downloads/detail?name=hgboo...) and epub (https://bitbucket.org/jan_/hgbook/downloads/hgbook.epub) versions as well, which seem more current.

looks like you just got your first dupe. you need some way to flag books for review, so that they can be merged, or deleted if they're spam.

Quite a few already. Taking it as a good sign. I'm a little stuck on what to use to ensure uniqueness. Members might submit different editions of the same book, so title alone probably wouldn't suffice as a constraint. The homepage, perhaps?

I also accidentally submitted a dupe (sorry). You also need a search function.

Looks great though, and nice idea.

I submitted a dupe and wanted to remove it but couldn't find that option.

Fixed that. Should be OK now. EDIT: Deletion, that is. I'm managing duplicates manually.

Bonus points for using the glider logo, will definitely be checking this out in more depth when I get a chance!

This is great. I am already loving it. Please add more resource types like Essays, Papers etc. One suggestion: After I click the Add to shelf button, page reloads and does not return to the position/book I was looking at. Each time I have to scroll down again to shelve the next book.

Thanks for the efforts :)

You should set DEBUG to false in your Django settings file for production. I got a 404 from [1] (probably you are tweaking some stuff?) and can see all your URL patterns...

[1]: http://www.hackershelf.com/login/guidelines.htm

Hey. Yeah, was still doing some tweaks, but I've fixed it now. Thank you!

Looks good overall.

Nit: On the about page,


when not logged in, clicking on the "shelf" button tries to go to


but crashes with TypeError

"int() argument must be a string or a number, not 'AnonymousUser'"

Hadn't noticed that, thanks. Will fix it as soon as I can get to a computer. I'm in a bus right now.

Just noticed that you are using Python 2.7.1. Is that intentional or you just didn't update that?

It's the default supplied by my host for my particular configuration.

Now all you need to do is make a reader app for those books and track how far people are, what favorite quotes they have highlighted and allow them to ask questions about specific parts in the book and you would have a nice little possible business going there :)

I would also add an option to link directly to the book as well as the book homepage. Occasionally books are legally available from the authors but not directly available on the book's website. (For example, 'The Haskell Road to Maths' which I just added.)

I added a couple of books. Seems like this could be a useful resource. A couple of feature requests: Search and ratings.

Maybe ratings are what "points" are, but I'm not sure exactly what points means in the context of this site. Care to elaborate?

Search might take some time to implement, but I'll build a tag index over the next two days. Would that make it any easier?

Points are a rudimentary ratings system based on how many times a book has been added to members' shelves. They will tie in to a possible karma system later on. Hope that helps. And thanks for the suggestions.

Search would be great, as its going to be a pain when the size of the list grows to beyond a few books.

Tagging would be nice too.

Already implemented tagging. Still trying to figure out a good way to roll it out. But if you go to hackershelf.com/book/(book_id)/edit/ you can add tags to your heart's content :) That should work for now.

I am noticing that duplicates appear in the book listing(s) as well as books without all the proper metadata such as title and author. There should be an option to let people flag both types of problems with the books.

would love the ability to subscribe via RSS!

So would i :) Added to Tracker

Some good ones as part of the Bruce Perens open series to add from here


Good Job. I noticed the book 'Learning Python' is listed there. But it is not available for free download. Should one flag such books (i.e. ones that are not available legally free) for abuse ?

Open Advice (http://open-advice.org/) should fit nicely there: what we would've wanted to know when we started contributing to Open Source

Looks like an awesome resource. Go ahead and add it :)

Okal, I added that resource, though you may want to consider truncating the author listing like you are doing with the description on the index page (this book had ~40 authors).

Great job on the site, and thanks for making it - I've already added several books to my shelf.

Fantastic, thank you very much for this resource. As a programming book junkie, you have truly made my day by providing this. I signed up, and hope the list continues to grow. Great work.

Glad you found it useful :)

FYI, the word 'subtitle' is misspelled on the submission form. I submitted Introduction to Information Retrieval; can't believe it wasn't already on there!

This is a fantastic resource. I've seen many implementations of a programming/hacker library but the user submission and library support is a huge plus!

This is nice, but did you intentionally disabling touch gestures? Swipe-to-go-back is not working with this page on OS X in Chrome.

Must have mistyped the password because now I can't log in.

Where is the password recovery form?

Not that I think there should be need for any password at all.

Sorry about that. Do you have an email address in your profile? I could hack up a quick password recovery system to let you back in. The accounts are only necessary if you want a shelf of your own. If you're simply lurking - which is perfectly OK - you can browse everything but you won't get the full experience.

Well... 1 no password confirmation, 2 no way of seeing it as I type it, 3 obviously not going to use a password I already use. Chances were high this would happen.

My username is the same as here though. Doesn't let me reuse the email address.

I'd rather have openID, or just let the user create password-less accounts. Who'd want to vandalise my account?

Also, if you are going to ask me for my email (supposedly for password recovery, a feature that doesn't exist at least for now) then you might as well not force me to come up with a user name and let me use the email address instead.

Also, why do I have to mouse-over to see the tags? tags that are terribly inconsistent, by the way. Since I can't log in I don't see if any user can vote on tags, or modify them, or just set tags for his own submissions. I suspect it's the latter and they're not curated. I mean, there are only a bunch of pages worth of books and they're already inconsistent enough to be basically useless as a means of categorisation. You should probably edit them to give the site an initial push.

Every little inconvenience exponentially increases the chances of the user not coming a 2nd time.

I like the concept, but at its current state this site makes me want to spider the hell out of it and do my file management locally.

I've sent you the recovery link, if you're still interested. Again, sorry for the frustration.

In Browse, you need many more books per page, with much smaller table cells per each, so that the user can browse.

Good point. Someone also suggested a grid view. I'll be looking at both suggestions over the coming weeks. Thank you!

Agreed. How about making it also a two column structure and give more prominence to the book cover / image?

Nice collection. Just noticed a small spelling mistake: The blurb on "Free Range VHDL" has got "fro" instead of "for".

Minor nitpick: The logo should link to the homepage. It's natural for us to click there :)

Otherwise, great work!

One thing I noticed was that some books were shown twice on the list. Otherwise, great job!

I would like to inform the creator, about a miss-spelling in Jeremy Ashkenas' name, here: <http://hackershelf.com/book/77/the-little-book-on-coffescrip...;

It also would be really nice, if it had wiki capabilities. I mean for editing such things.

I'm not sure how good an idea it would be to let everyone edit things, but we should probably start off that way and see how it goes. I'll enable that on my next push. Thanks.

Yeah, still trying to figure out how to handle dupes. In the meantime, please flag the last to be added. It makes it easier for me to delete them manually, until I can come up with a more effective system to manage duplicates at the submission stage.

Why only free books? Seems like an arbitrary constraint.

Because paid for books are already on amazon or Barnes & Noble, or what have you, and their respective computer science/programming sections — including an indication of how popular the book is, and often also reviews by customers.

I like that this is only for free books, since, as a poor grad student, I can actually do more than just window-shopping.

For-pay books are pretty well covered already. As a student, I can't always afford the books I want, so this sort of resource is useful for people like me. Free books authors also don't get as much marketing buzz as mainstream authors, so I hope this helps to gain them more recognition and support from the community that would most benefit from their work.

okal, please turn DEBUG off. It exposes a number of things you don't want the public to be reading.

Wanted to launch over the weekend, but a friend of mine managed to convince me to do it today. Thanks. Still in the bus home, but it'll be fixed in about an hour.

What a great idea! Thanks!

No search function?

Here is an amazon wishlist I keep of good books that I have or want. Of course these aren't all free, though


Edit: Why would this get downvoted, exactly?

Because it's orthogonal to the conversation.

1. the site is only about free books.

2. nobody cares about what books you have or want. The site is about free books that appeal to hackers.

3. do you really expect somebody to trawl your amazon list? If there are free books on there that would be of interest to the target audience, upload them.

The list is pretty much on topic. It's books that appeal to hackers really since I made it from talking to people in #startups on IRC, the only difference is that, yeah they are real books that cost a few dollars to own.

Also it's more than introductions to various programming languages, there are more advanced concepts on the list that appeal to hackers.

Its 1 page of 17 books.

Whatever, you asked why you were downvoted, I just told you (for the record I didn't downvote you, I don't care).

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact