Hacker News new | ask | show | jobs
by deveac 5028 days ago
It is funny. I was talking to a kid that was learning to play guitar because he wanted to play cover songs, and was frustrated by the lessons that seemed to have nothing to do with what he wanted. I told him that he didn't have to wait even one more day, since playing covers songs is one of the best ways in which you learn guitar. His ultimate goal could be accomplished almost immediately by choosing one song he liked that only had 3 chords, and just strumming those three cords over and over again in succession until it didn't sound half bad. Would take less than a week, -tops.

It's the same principle, and one I value highly. I think tackling a new discipline, and the wave of information that rushes toward you as you put your toe in the water can sometimes distract us from simple grounded approaches that we know have worked well for us in the past.

Thank you for the links!

1 comments

I learned piano in a similar way. It was a lot of fun, and allows me to play some songs passably, but I still feel hobbled by not knowing certain basic techniques that I would have learned sooner in a more conventional set of lessons. Maybe it comes after the "project" type learning, but at some point, to move up, you have to learn the boring basics.
Agreed! I'm also a pianist, but because I started young, I was lucky that my parents and teacher forced to me practice technique all the time. You should check out the Liszt exercises, they will make you strong and fast: http://books.google.com/books/about/Liszt_Technical_Exercise...

With coding, there was no such outside pressure, so until I joined Yipit, I had tons of bad, hacky habits. In order to get to the next level, I had to rebuild from the ground up and learn the fundamentals really well.

I agree with this. I think the hardest part of learning a new skill is starting out. Working on a concrete problem provides a positive feedback loop that keeps you engaged, learning, and moving foreword. But that doesn't mean you should skip fundamentals.

For coding you could hammer out a project, get familiar with a language and the technologies you used to implement it, then download a Stanford lecture on proper Programming Methodology.