3 ms·
So what kind of deliberate practice is required to become a highly skilled developer? Not just to know a language and library. Code kata used be a thing years
by kristianp 9y ago
So what kind of deliberate practice is required to become a highly skilled developer? Not just to know a language and library. Code kata used be a thing years ago.
- IgorPartola 9y agoIMO code katas are a waste of time. Practically speaking, prolific development means getting large chunks of the system done quickly, and the best way to do that is to reuse what others have done. Don't code your CSS from scratch, use Bootstrap or similar. Don't create an auth system, use the one that comes with your framework. Counterintuitively, don't automate all the things until that automation is sure to pay off. Sometimes manually testing something is just faster, if you only need to test it a few times before the code never changes again (when was the last time you rewrote your password reset flow?) To get prolific, don't do katas. Katas are the same problem solved in different environments. Do different problems in the environment in which you are productive. That is what will make you better and faster.
- dahdum 9y ago"Katas are the same problem solved in different environments." Are you sure about that? I thought it was more solving the problem, then solving it again more efficiently / differently in the same environment. Like using recursion the second time around, not changing languages. "Don't code your CSS from scratch, use Bootstrap or similar. Don't create an auth system, use the one that comes with your framework." Definitely true for productivity, but a lot to be gained in experience by knowing how to roll your own.
- TheAceOfHearts 9y agoRegularly solve problems! Try making minimal implementations of things you're interested in. I've implemented toy versions of lots of things just to learn how they work. I always start off thinking it'll be easy, and every single time I'm amazed by the number of details and edge cases involved. It's usually where you'll get exposed to more interesting algorithms, since most applications are able to leverage libraries which usually hides the magic.
- deleted 9y ago[deleted]
- ktRolster 9y agoIt helps to read other people's code bases.
- d0mine 9y agoThe meta-analysis linked above [1] claims that deliberate practice explains only 1% of variance in performance for professions (programmers are in this category in the article) [1] https://news.ycombinator.com/item?id=15101548 https://news.ycombinator.com/item?id=15101548