Freely available programming books
github.com
github.com
Since I don't want to answer to every post suggesting something, I'll do it here: I know we could do better in terms of curating this content.
I would be very happy to discuss ideas towards the goal of better curation of these lists. Please open an issue on github or shoot me an email!
I also have to say I started this thing 3(?) years ago, and today I have less and less time to take care of it. I closed around 1800 PRs, which means almost 2 per day over the last years. I'm extremely grateful to the contributors helping me maintaining this and I'm glad it's been useful to a couple million people (according to the stats). Should anyone serious want to contribute in a more involved way, please step forward, I could really use some relief. :)
My email is on github, my twitter is in my HN profile.
Before investing time in any of these, do yourself, and the world, a favor and find the community of the language and ask them if the book you found on that list is shit.
A quick question on #django on freenode about best learning resource and people will always reply with "first, the official tutorial, then maybe django-girls tutorials"
Maybe it's just that my learning style is different from the majority's but I don't see much benefit in a massive dump of links. The idea and the intention of a community curated list on learning resources is good and lovely, it's just that github is not suitable for this.
When I created this github repo, it was because stack overflow wasn't suitable for this. Then I created a website (the now defunkt resrc.io) which could pull these kind of lists from github, parse the links, have them tagged in a database, parse the link content, make it searchable, etc.
It still wasn't suitable. And I'm still looking for a suitable way of curating such lists, be it on github or anywhere else.
Having tons of options sometimes seems cool when just checking or looking around, but when you actually need to use/learn something it's usually much better to have a couple (at most) of vetted resources that you can trust. Especially for the basic things, where there are countless of books, blog series, online courses. The paradox of choice, sort of. That would actually take 'community curated' to the next level.
The way I imagine this format working is having lists and sublists (loosely made of awesome-x repos) and each link having a upvote/downvote/report button. While the voting system would reside outside the github, every link could in github could have a widget next to it, similar to build status widgets. Well, you could implement voting using issues and reactions but that seems like a really messy way to do something. If widgets with score wouldn't exist, it would be extremely hard to convince the users to go to yet another web site.
Seek for stimulation and keep growing. Cheers.
I've also had similar experiences with Java, nevermind Javascript.
It is an utter and simple fact that due to tech being an everchanging landscape, any book more than a few years old is going to teach bad habits or explain concepts incorrectly.
Concepts change meaning and good habits turn bad every few years?
Shitty books are shitty, OKish books will be probably be fine for a language intro, even if they are old.
https://openlibra.com/en/collection/search/language/english/
https://www.packtpub.com/packt/offers/free-learning
You get a new book every day, although sometimes they offer books that are already offerend months ago. The downside is that you need to do this every day, and you need to bookmark this link.
They don't cover all subjects, but do have a lot of programming. I don't say these are the best books, but in general they are interesting.
That said, the book featured today (Node Design Patterns) is worth a quick read.
This. Free books are very far from being actually free. Reading a book can take anywhere between 15 to 50 hours or more. So the cost of the book itself often is a small share of the cost of reading a book.
Of course, free books are important because they are more accessible to people who can't pay for some reason (teenagers, students, people from poor countries). It's just that 'free' shouldn't be part of the equation, if you can afford to pay $20 or $50 for a book.
If I need a book, I'm willing to pay for it. But sometimes these books are nice offers. That's all. It's one option you have, nothing more. If O'Reilly offers a better book, then I'll buy that.
This sounds like something that could easily be automated with a script and a cron job.
Thanks OP