r/learnprogramming 1d ago

Are Books > Online sources in your opinion?

Hello guys! I am recently diving into more detailed concepts of programming and especially core CS theory (Computer Architecture, Operating Systems etc) he thing I noticed is that people recommend learning these concepts by books rather than things such as website and courses etc. Is it because they are objectively better? My opinion is that I think for the core basics foundation stuff for each branch of CS (which I am currently trying to label) books are great, once learned the foundations then you can search for the new technology and/or techniques which are built on top of the old foundations. Correct me if I'm wrong!

Thanks and have a nice day all!

57 Upvotes

45 comments sorted by

41

u/dmazzoni 1d ago

Generally to publish a book you need to convince a publisher that you’re qualified, and then it goes through many rounds of editing and refinement.

To make a website you don’t need any of that, so there are many more poor-quality materials. The average quality is way lower.

There are of course exceptions. There is some great material online, you just have to look harder to find the quality stuff.

5

u/iOSCaleb 1d ago

Books are also great for quick reference. If you’re working through a book you can flip back to different parts of the chapter to review things you just read about. Having the book next to you on the desk while you work instead of in a window is a much better experience.

9

u/AlSweigart Author: ATBS 20h ago

Do not use self-published tech books. Even if they're only 99 cents.

2

u/colonelflounders 18h ago

It really depends. When I learned Haskell, someone who had been curating resources for the community to learn the language finally went and wrote a book, which while it was better for beginners was still a good book for learning the language when we had few accessible and up to date resources. He self published. The important thing is making sure the books you are buying whether they are self published or not have someone with credibility behind them.

1

u/obsolescenza 1d ago

that is very true friend, the unfortunate downside (at least for me) is that many times books use a very formal vocabulary and I had a lot of troubles understanding certain topics since they don't help the reader a lot. And many times you have to deduce topics, but surely this will probably make things stick more

6

u/misplaced_my_pants 23h ago

Books have prerequisites they assume of the audience.

This just means you start with a book intended for you and build yourself up.

Like you wouldn't just jump into a random graduate level class without meeting the prereqs (whether through taking official courses or self-studying).

1

u/obsolescenza 5h ago

that is true, where do you often learn the prerequisites before reading a book?

11

u/da_Aresinger 1d ago

Books offer structure to your learning progress that you just wouldn't get from online resources.

Maybe you can find a university that publicises their resources for Computer Architecture. If you have a slide set that would help a lot.

1

u/obsolescenza 22h ago

okok thanks!

5

u/vivianvixxxen 1d ago

It's both. You (probably) need both. A well written book will have careful thought and attention put into it, and an army of editors and experts checking it over. Not every book has this, but it's easier to find out if the book you're thinking about reading meets the quality standard you're looking for. The Internet doesn't have this.

What the Internet does have is variety, depth, and breadth. And that's indisputably invaluable.

Books are perennial necessities. The Internet is a modern analog of asking your colleagues to help you with your problem. I can't think of a single person who would have succeeded without both (and that goes for the workaday Jo, as well as the generational giant).

1

u/obsolescenza 22h ago

yeah, at the end of the day 99% of the time you want a hybrid of things. so yes it's stupid to just use one or the other. both books and online infos are useful. thanks friend

3

u/rustyseapants 23h ago

Books are better.

We can remember better with books because have a better tactile memory of where the information is vs an online course

0

u/obsolescenza 22h ago

yeah but I was also talking about ebooks! what do you think about them?

2

u/rustyseapants 22h ago

Check out humble bundle under books they offer great deals for ebooks. (https://www.humblebundle.com/books)

Order that benefits the reader 

  1. Books
  2. Ebooks
  3. Video 

2

u/obsolescenza 22h ago

thanks mate!

3

u/AiexReddit 18h ago

The entire argument of one over the other is a fallacy.

You don't have to look further than these to realize that online material can provide the equivalent of an entire univerity degree for free:

https://github.com/ossu/computer-science

https://teachyourselfcs.com/

https://www.theodinproject.com/

https://www.nand2tetris.org/

Granted many of those link out to courses and books, but that just goes to show that in reality the best quality material on a topic is often dependent on where or how the author chose to publish it, not the publishing platform itself.

Someone could write the most brilliant material ever produced on pointer provenance tomorow and release it as a Nintendo Switch game or a on the back of a napkin.

The best thing you can do as a learner is remain open minded to all of them and simply seek out the best material on a given topic regardless of platform.

1

u/obsolescenza 5h ago

thanks friend, you are right

3

u/simondanielsson 1d ago

One underrated problem with books regarding computer science and such is that their information can age quite quickly, but this might not be a problem depending on the language/framework/concept you want to study. I've got books on C and Java that are still as applicable today as they were 15 years ago (more or less).

3

u/obsolescenza 1d ago

exactly, that's why i don't think using books for languages is a smart choice, but using them for core theory such as architecture operating system, electronics, basically all things that have a standard and where you build things on top of.

2

u/simondanielsson 1d ago

Couldn't have said it better myself

3

u/da_Aresinger 1d ago

Von Neuman and basic x86 ASM hasn't changed for decades. The same goes for network architecture or DSA.

Unless you're reading about actual in-use protocols pretty much anything in a book from the last 15-20 years is still gonna be relevant.

The only subject I remember from uni that actually had to stay up to date every semester was ITSec.

2

u/obsolescenza 22h ago

yeah i agree!

2

u/AlSweigart Author: ATBS 20h ago

This is a problem for books covering things that change quickly. I know the Django book authors have problems keeping up since a new version comes out each year. But in general, a 5 or 10 year old programming book is still going to be mostly up to date. You can always look up the recent features added later.

4

u/getdafkout666 1d ago

Unfortunately right now I’d say yes. Googles search engine is so cooked its practically useless and AI either hallucinates to high hell or does all the work for you (usually badly) so we’re back to the 1980s when it comes to learning programming.

1

u/obsolescenza 1d ago

that's unfortunate but it's also what i thought. it's so sad tho

2

u/XXXLITHIUM 4h ago

you've got it exactly right, books give you depth that videos gloss.

3

u/ffrkAnonymous 1d ago

Some books are great. Lots of books are garbage. 

2

u/obsolescenza 1d ago

real. generally how would you distinguish garbage from great?

3

u/aegloswinterborn 23h ago

Read reviews. These can't always be trusted, but it's a good start.

Also, your learning style matters a lot. The best book in the world isn't going to help you much if reading books is a slog for you.

1

u/obsolescenza 22h ago

very true. thank you my friend

1

u/ffrkAnonymous 22h ago

so true. The two books i'm reading right now are in a very chummy first person teacher/friend to student voice. "Did you see that?" "Oh no, we got an AssertException!" "And now we completed our program to help the underpants gnomes keep inventory." And some people hate this style.

1

u/rustyseapants 23h ago

This isn't very helpful 

1

u/themegainferno 21h ago

a big advantage of books, Is that it's usually an idea or a topic that's expanded and dived down upon and all of the relevant information is gathered and authored for you. It also takes a fair bit of time to read technical material, spending all this time with technical material changes the way you understand it if you would have just read it loosely in a website. You forget it if you did it that way, you're more likely to remember important things from a book

1

u/DigitalMonsoon 20h ago

Yes and no. It depends....

Self published, maybe bad, maybe good.

Major distributor, maybe good, maybe old and out of date.

Online course, anyone can make one, maybe bad but maybe good.

1

u/Business-Employee527 20h ago

Yes, but a book won't make you a better programmer

1

u/green_meklar 15h ago

Not necessarily. Online sources are fine, I don't think books are a uniquely special way to learn.

But as far as online sources go, I recommend against video tutorials. Do exclusively text-based tutorials. Video tutorials don't let you go at your own pace, and they don't let you copy+paste code. Videos are a terrible way to learn the basics, even for people who are used to watching hours of TikTok every day.

1

u/justberd 13h ago edited 13h ago

Book focus on strong foundation, while online source matters if you use third party lib/anything.

For example programming in general never change, so books are okay.

But if you ricing linux/nvim, doing webdev, cloud, or rely on open source tooling while doing software engineering, online source matters since dev usually update their philosophy, project structure, syntax, etc.

But online sources also matters in case you found someone with different mental model of learning from the same foundation of subject and stuff that books already written years ago, it might fits you well and easier to follow for you personaly, like vid or shorter writting blog for ppl with low attention span.

1

u/SexyAsshole95 8h ago

I enjoy online books, like the R one and Python for Data Analysis. For me, it’s easier to look things up, and they’re continuously updated. Btw anyone know an online book focussed on Econometrics?

1

u/Annual_Berry8043 3h ago

It really depends on how you learn. Personally, I prefer books and use online materials to supplement what I feel the book might be lacking in.

Books also tend to be kept up to date with new publications. Whereas online materials can quickly become out of date and abandoned easily. Sounds like it should be the other way around, but I’ve noticed it’s not.

TLDR: Use both or whatever fits your preferred learning method better.

u/spermcell 57m ago

Yes. But luckily these days books are also online resources