views:

956

answers:

25

Do you think video blogs/screen-casts/podcasts are the best instruments to learn new stuffs in the programming than a book. Nowadays almost everyone has a hand held device like iPod or Zune to hear/watch conveniently.

+10  A: 

There are a lot of great books, and classic books out there related to programming.

Mythical Man-Month, Code Complete, some books by Kent Beck I really like.

Also, sometimes it's nice to have reference manuals handy, such as my favorite Dynamic HTML: The Definitive Reference from O'Reilly.

As long as there are people writing quality books with good things to say, books won't and shouldn't go away.

Mike Stone
+32  A: 

I think blogs and podcasts/videos can keep you up to date with the latest, but it still doesnt beat a book for the core fundamentals.

Yes they are still necassary In my opinion(Paper or digital)

mattlant
A: 

In my opinion, printed books can not keep up with changing technology today. When I need to look up the syntax or answer to a programming problem, I just google it.

Of course, there are some books that will always be on my shelf... like, Algorithms in C by Sedgewick.

BoltBait
hey, thats similar to my answer...
jjnguy
+1  A: 

I find my Python quick reference indispensable. A website is great for searching, but you can't beat paper for flicking backwards and forwards between a couple of entries.

Airsource Ltd
A: 

To me I think it depends on your level of knowledge. If you are just starting out then you need books to help guide you and give you structure. If you are new and are looking on the internet for tutorials how are you going to know where to start?

Once you are experienced and need to keep fresh in the tech world, that's where podcasts, blogs and videos come in.

RedWolves
A: 

It's easier to read a book on a train ride or...when in dispose, than to read something on the Internet. Also it's easier to read from a book while typing out the sample code than to use the Internet...unless of course you have dual monitors (but again not likely to have that on a train).

Mike Brown
+7  A: 

having reference books around are great for times when you just can't stand to be in front of the screen anymore, but want to pick up some obscure aspect of the language.

Owen
+4  A: 

I think that the importance of books that teach a specific programming language / library is quite low now, but algorithm and theory books still (and probability always) have big importance.

Technology changes, but we still use math formulas from a long time ago!

Kknd
+1  A: 

I use books when there's something I want to look up and learn at the same time. For example, the content in Professional ASP.NET 3.5 and Headfirst Design Patterns.

So to answer your question, I don't think there's an exclusive one-way-or-the-other answer. In some ways the internet is better for learning new stuff, and in others an old fashioned book does the job. I guess it depends on the learning style of the person involved.

Robert S.
love the Headfirst line of books.
jim
+2  A: 

They aren't necessary, but it you find yourself working extensively with some programming aspect, a book may be handy. My copy The C Programming Language has gotten pretty worn out. Even though there are plenty of web resources out there, I know where to find exactly what I'm looking for in that book. It's also nice to be able to write notes in the margins, highlight text, or slip in pieces of paper into something physical.

BlueVoid
+1 One of rare must-have books (at least for C programmers). I started reading tons of books, blogs and tutorials about C, but none was that good like this one (and that much fun to read).
Helper Method
A: 

I like books. But I think that books and blog/screen-casts/podcasts are better for different things.

For keeping up with the latest trends and technology and for answering specific programing questions then the internet is much better. It is also very good for getting an overview of some new trends and technologies.

But if you want to learn some of the fundamentals of software development then I still think that books are better. The editing and review process generally leads to a higher quality. Also, internet articles tend to be short while books can deal with a subject in more depth.

David Dibben
+1  A: 

There are classic books in our field (Code Complete, The Art of Computing, K&R, etc) that stand the test of time. There are also advanced books in our field on things like Design Patterns, Algorithms, Discrete Math, etc that will always have a place.

Then there are certain niche technology books that are quickly becoming less and less useful. There will still be a place for them but there will be far fewer xxxx technology stack books.

Simucal
+6  A: 

Personally, I like books to get me started in a language or a new technology. Books will provide the kind of broad general knowledge that allows me to better understand how all of the components of a language or technology work together. I find the internet is great when you want to understand on of these smaller components. But, to get the big picture of a language or technology I always turn to books.

Josh Moore
+1  A: 

Yes.

I always prefer a well written and comprehensive book on a technology over randomly scouring the internet for resources. A good book will often cover the material in more depth. It's usually more likely to teach you important idioms of a language, common pitfalls, best practices, and what's going on 'under the hood' of the technology.

That said, I like my tech books in pdf format :-)

Corey
+1  A: 

Books are great for a couple of reasons:

1) A solid chunk of information in one spot rather than having to piece together bits scattered all over the internet. A book is also usually presented in a logical order with the early chapters being basic fundamentals and subsequent chapters building on that.

2) A book has been reviewed and edited so that the information in it is almost always accurate (although sometimes a bit out of date). When you find a random article through Google you really have no idea if the information presented is accurate in any way. And even worse, the information you find is often not dated so you don't even know if it's recent.

17 of 26
+3  A: 

Most programming books suck, but a very small number are worth their weight in gold.

Personally, I've found that I actually learn more and read more when I have a physical book in front of me as opposed to reading from a screen. Not sure if it's just that reading a book doesn't involve having electrons blast your eyes therefore reducing eye strain or what, but if I'm sitting in front of a computer for 8-10 hours a day at work, the last thing I want to do is spend a few more hours learning about <insert latest hot language here>

eviljack
+1  A: 

There are times when it is extremely helpful to me to have the concentrated knowledge of a good book. As other's have said it is more and more theory related and less syntax, but frankly I don't spend a lot of time on syntax anyway.

Personally, I think every developer should consider having something like an O'Reilly Safari account. It is just an enormously useful resource when researching a topic and it eliminates the killing of trees.

But I have to say...a good book is a lot easier to take into the toilet with you.

Flory
+1 for safari. It's particularly great for books you just want to read once to learn something and won't need to look at too much again. I use it a lot when I want to get my first introduction to a new technology.
Helephant
+1  A: 

New media and the web are great for keeping up on the latest developments, grabbing short snippets of example code, quick how-tos, and searching through manuals and references. In other words, when quick and shallow is all I need.

However if I'm going to learn a new language, development approach, or algorithm from scratch (you know, the big important things), I need it in paper form. It's much nicer to get away from the screen, get comfy on a couch or recliner, and settle in for a good read.

Bob Somers
A: 

I believe that programming books are a huge commodity that are great to have. They make great references, they give you a "view into the past" with many older versions, and they're fun to read. Books coped with the Internet can be an effective way to achieve a goal or learn something new.

Zee JollyRoger
A: 

I think printed book still have a good impact for learning new languages,Topics.

Usually when I would like to learn a new language or technology I buy a book about that topic, but when I need help in something I know but but it didn't work with me, or can't do it in the right thing I Google about.

so I think blogs/screen-casts/podcasts they just helping to discover new things, new area, but I can't stay watching hours to learn new thing that can be convered in book, but for small subject it may be more helpful than the books.

Mohammed Nasman
+1  A: 

No, they're out of date by the time they hit the shelves. Technology is growing at an ever increasing rate and printed materials just can't keep up. I think they have this thing called the internet which is pretty fast I hear.

CNote
Last I checked, Design Patterns, Refactoring, and a few others are sufficiently up-to-date after a decade or more. That said, some are more temporary than others, but that may not matter either: Blog posts go out-of-date as fast as tech books. Timelessness of the material is not the main reason to print it.
apollodude217
A: 

It's no doubt internet is a vast resource, but it is all a giant hodge podge of stuff with no table of contents, no index and with very little editing. When you don't know what you don't know and you are trying to feel your way around in the dark, a book is a much better and faster help than some random blog post about a fringe detail regarding the language or the framework. Sometimes you find just the right piece of code you need, but in general, this approach hinders proper learning in my opinion. When you are not seasoned enough and don't have the base to lay the future bricks upon, this approach creates a lot of gaps in your understanding which sometimes becomes too hard to fix later on.

Emrah
A: 

I think until it is easy(ier) to create an "online" bookshelf as it were then books will still be relevant (in the physical form). I think books will always have a presence (even if just as an online PDF) but it's the convenience of easy location that makes physical books great. I.e. you can just reach over to your book shelf and pick out a book based on a quick scan of the color/design and title. Go to the index or contents and find the section that you know was there because you've already read it. This is what a reference book is all about. Knowing exactly where the information is and how to get it quickly. I'm not saying that this isn't possible online/electronically but it's not quite there yet.

Also some content just isn't available online (other than a PDF book).

Jonathan Parker
+1  A: 

Books, or perhaps their e-paper descendants, will never be completely useless. There are a number of wonderful books out there about programming, and general practices which are already mentioned by other persons.

Books as a reference are quickly becoming unnecessary (I have the Be Developer's) due to the fact that any good library, language, or framework will have good, up-to-date online documentation in a consistent and useful format. Sure the inter-provider differences (compare Apple Developer site's iPhone sdk, MSDN's ASP.NET MVC, php.net, Adobe livedocs and netbsd man pages) are vast and confusing, but your first step in becoming fluent is to learn to find, skim and read the docs. It's certainly (barring network issues) faster than using a book, or sitting through a tutorial screen-cast.

However books as either a guide or a discussion of a particular practice or style aren't as easily replaced on-line; though there's excellent free on-line books too, these are still books in a way since they're meant to be read in ordered chapters. This type of learning can not be replicated by a video or audio, though it can be supplemented, which is why despite universities having a focus of class time and lectures, you generally always get assigned a textbook or stack of journals.

All that said, the majority of programming books you'll see on store shelves, and yes, libraries too, fall into two categories of poor quality: Those written by programmers with no business writing a book (these lack clear organization, pacing, introductory material, or a progression of knowledge, and sometimes they lack editing thus being unreadable), and those written by decent technical writers with more potential yet with no business writing a programming book (these have a clear readable book style, yet fail by either skipping huge parts of what they purport to teach as though the writer didn't know anyone might need to know that part, or they fail by being littered with step by step notes including hot-keys or photos and listings that get mundane, or having useless examples and listings that mix in far too many comments when clearly those comments could be better explained in the main text or in margins). It's pretty rare you find a good programming book written well by an experienced writer in a way that shows complete knowledge of and for an experienced programmer (or for a novice, as the goal may be).

PS Seriously, a book with code that's shorter than two facing pages should basically never have a comment anywhere. Crudely the code should be marked with asterisks, double crosses etc with footnotes, or the code should be properly introduced and followed by explanatory text that would invalidate any further need to explain the code in the code sample.

dlamblin
A: 

To prepare for my current job, I bought a "... in a nutshell" book which fits nicely into a pocket of my jacket, and read it whenever I had a few minutes, e.g. when commuting etc. Reading the same stuff on a handheld device (iPod etc.) would have been arduous.

ammoQ