3 ms·
No New Language In 2009; New Habits Instead
- petercooper 18y agoAn interview with Giles published today: http://www.rubyinside.com/top-ruby-presenter-of-2008-giles-bowkett-1425.html http://www.rubyinside.com/top-ruby-presenter-of-2008-giles-b...
- r11t 18y agoI was reading the interview and then happened to check his blog. That is how I came across his latest blog entry and posted it here.
- petercooper 18y agoAwesome! :) His blog is always worth a look.
- arjungmenon 18y agoDo both. Learn new languages and new habits.
- KirinDave 18y agoI'm surprised this has gotten positive responses. This really is an idea that seems to run counter to a lot of progress in the industry. The notion that repetition improves performance is absolutely true, but that doesn't mean that you can neglect your continued education just to repeat. What's more, learning new languages is repetition of the process of learning. It's learning how to think about a problem differently (assuming it does, you may not learn so many new concepts going from Ruby to Python). Learning to turn over a problem and attack it from a new angle is an essential skill. There is a terrible temptation that we as engineers all face: to stop learning. After all, our skillsets are broad enough and it's hard to justify all these skills we may never use professionally. But that's a dangerous negative feedback cycle, because all these computer linguists build on other concepts. Once you fall a generation behind, you the have that much larger a gap to cross when pioneers have carved out a market that you do want to enter. Finally, there is this kind of hidden belief in hacker circles that functioning but inelegant code is somehow worthless. Of course it's preferable to have elegant, extensible code... but in a space where there are no alternatives any functioning code is better than no code at all. Even if you can't make beautiful code with a skillset, working code is 1000x better than no code at all. P.S. Also, the reader should care what Zed Shaw thinks of their code? Facile understanding of the history of mongrel detected, captain.
- tdonia 18y agoMy first inclination was the same, but as i read further it became clear that his core argument, under all that chaff, is simply to pick an interesting problem for your new year rather than assuming that a new language for the sake of a new language is in itself a worthwhile problem. new problem for the new year is hard to argue against if you're into that sort of thing & will probably net out the same benefits you're looking for, namely, more learning. that said, his argument has a lot of noise obfuscating a signal that's too general to be strong. meh.
- KirinDave 18y agoThis seems to me to be more of a descent into wankery than anything else. The one constant of our industry is that language platforms seem to have a 5-9 year popularity-span. Google pushes Python, Java eclipsed C++ for a huge portion of the market, C++ has now supplanted C in many places. (Please note that I know there are outliers in this and it's not an absolute rule! Objective-C, for example, hasn't gone away.) I enjoy new problems and domains too. It's great to dive into a new subject, and often very valuable. But the reason people say, "Learn a new language ever <time increment>" is because you're not just tackling a new domain, you're talking a new way of understanding domains. This kind of meta-exercise is invaluable, in my opinion.
- petercooper 18y agoMore illustratively, I'd say he's more saying "go to France, then learn French as you go" versus the common programmer course of "learn French then never go there". Learning Haskell, Erlang, Lisp, etc, can be interesting on its own, but if you instead try to achieve something or learn about a subject area where Haskell, Erlang, or Lisp are strong, it's a far better way of learning. Go to France and then learn French.
- KirinDave 18y agoAre you sure you aren't inserting that message because it seems more reasonable? That really doesn't seem like the message that's being stated. It is a little hard to pick out the relevant parts, but it seems like he's going to stick to what languages he knows and instead focus on solving problem domains. Learning new languages as you explore new problem domains doesn't seem like the message in the post, at all.
- mmmurf 18y agoThe idea of breaking up a problem into manageable mini-steps is the essence of Getting Things Done: http://www.davidco.com/what_is_gtd.php http://www.davidco.com/what_is_gtd.php
- ii 18y agoHow true. As an example, learning and understanding Python/C API was much more practical and enlightening experience for me than experience of learning a new language like Haskell or O'Caml.
- jimbokun 18y ago"If you do that, Zed Shaw will find you and skullfuck you to death. I'm not kidding. He and I have made a deal with Satan, and this was one of the perks he requested." Looks like Giles missed the memo that the ZSFA persona has been put to rest. Guess Giles will have to take on this role solo, now.