5 ms·
Ask HN: How do experienced programmers learn new things?
Since I'm a novice, I enjoy novice friendly online education but feel reading hundreds of pages of programming books or documentations daunting. I'm curious how experienced programmers learn new things. Do you ... ?
* Read the docs
* Read programming books (such as those by O'reilly)
* Go through online courses
* Other ways (comment if you like)
- jfb 14y agoBy varying either the tooling (use Lambda Prolog to write web servers!) or the problem domain (get deep into computer vision).
- peterxy37 14y agoFor me, no fixed patterns. Mostly learn new things by googling. If the topic is completely new, and googling does not work, then starts with some text book. After reading initial few chapters, I again come to the googling mode.
- gexla 14y agoWhen are experienced programmers NOT learning new things? Constant learning goes with the trade. You often don't have the time to read through hundreds of pages of programming books, and I don't have the patience for that anyways. The best way to learn is practice, practice, practice. You practice programming and you practice your "look up" skills for finding new info.
- poezn 14y agoWhen you're experienced in anything your advantage is that you can put things in relation quickly, which helps you learn things faster. For me, I learn most when I create something or put my learning in practice immediately. Whether it's languages (natural or programming) or a certain framework, or paradigm. The key is that by running into problems you see how a piece of technology fits into the big picture.
- jfaucett 14y agoreading source code is #1, a close #2 is debugging so you understand how the design of the software works.
- xsoul 14y agoIndeed, Practicing and Googling are essential in learning. I guess books and docs come as references, I once thought they were the first thing to go to. Thanks for the comments.
- calbear98 14y agoBuild something. I can never really learn just by reading docs, books, etc. If you want to learn XYZ programming language, write an app in that language. In order to get that app built, you'll need to learn whatever is necessary to use the language.