Hacker News new | ask | show | jobs
by PaulHoule 3413 days ago
It is optimal to use both book learning and learning by doing.

You can solve a lot of problems by looking on StackOverflow, particularly the ones like "how do I get the length of a string in (Haskel|Tcl|Lisp|Python|Ruby|COBOL|...)"

In some areas you can get away with it, but when a software system has been worked on for (say) 20 person years by multiple persons, you will find things breaking down because people did not understand the fundamentals.

Thus it is good to study the fundamentals, particularly the fundamentals that are relevant to the project work you are doing now.

I upload technical books to my tablet and read them while I spin at the gym.

When it comes to a practice like unit tests, it is a letdown if you read about them but don't write any tests because the value of unit tests in most situations in indisputable.

Also if you take a class in Physics or Calculus or something like that, doing problem sets is essential for you to really learn the book content. Teaching physics, I've heard so many times that "I understand the concepts but I can't do the problem" and then worked with the student to understand the thought process for us both to understand that the student did not understand the concept at all.