So, I kinda feel like you, in a different way: I just started playing
StarCraft last week. Total beginner. And it's _hard_. There are
professional players. The game is truly based on skill.
I lost my first 15-20 matches.
So I spent tons of time watching strategy videos, reading guides, etc.
There are multiple daily strategy podcasts, for example. And one thing
kept coming up if you want to get better at StarCraft (as well as
programming):
Just pick one thing to work on.
Take next week, and just say "I'm going to practice using lambdas. I
don't care if my code is coupled, the rest of it can be total crap,
but I'm gonna be a super awesome lambda user." And then focus on that.
Then, the week after, say "this week is Dependency Injection week.
Screw lambdas: I'm gonna inject _ALL THE THINGS_."
Eventually, you'll wake up one week and be waaay better. But trying to
get better at all the things at once is HARD.
-Steve
@programming: What somewhat works for me is, making "sandbox"
projects, that indeed live only 1-2 weeks. In Rails context, those
sandbox projects are often blog applications. In a C/C++ project, my
sandbox often only consits of some strange-looking pattern of foo,
bar, Foo, Bar, *, &, "new" combinations only to understand why a
certain syntax works, and another syntax variation is not working.
> Unfortunately programmers don't code set pieces.
Ah, but they do!
http://blog.objectmentor.com/articles/2009/11/21/whats-all-this-nonsense-about-katas
Kerry
This is actually the explicit design goals of Zed Shaw's "Learn the
Hard Way" books: http://learncodethehardway.org/
Thanks for the link :) I was learning lisp via "Land of Lisp" using his same type-everything approach. It is pretty pleasant and efficient.
As a wannabe guitarist... I love the music analogy!
Zach
--
--
@zachdennis
http://www.continuousthinking.com
http://www.mutuallyhuman.com