Geeks With Blogs
Caffeinated Coder A Grande, Triple Shot, Non-Fat Core Dump by Russell Ball

If you’re crazy enough to run marathons for fun like me, you are probably familiar with a concept called cross-training. This slightly counter-intuitive approach asserts that you can actually increase your performance in your chosen sport by doing it less frequently and supplementing it instead with complementary activities. In other words, you will run faster and decrease your chance of injury if you replace a few training runs a week with weight-lifting, biking, or swimming.


I think the same principle holds true in the IT world. There are clear boundaries and activities that define what a normal developer activity or skillset is and I’ve noticed a strong tendency in both myself and other developers to stay within that comfort zone not engage in cross training by expanding our knowledge into complementary disciplines. Developers commonly learn to write complex queries, use the ipconfig or ping utilities, and upgrade their own RAM, but usually defer to DBAs and network admins when it comes to index tuning, group policies, or rebuilding machines. It is easy for a Microsoft developer to ignore the open source community and never learn to use other platforms and languages. Corporate developers who are younger or come from a non-CS background rarely look lower on the abstraction stack than the Base Class Library to learn about assembly, core programming algorithms, the inner workings of a compiler, or the win32 API.


So what are some good steps to take in order to avoid this informavore trap and begin a technical cross training program? One activity that has worked out nicely for me so far is listening to RunAsRadio, a podcast co-hosted by Richard Campbell of dotnetrock’s fame that covers diverse IT Pro topics such as network storage technology, application virtualization, MOM, IIS7, the future of 64 bit computing.  Another activity that I plan to continue is the self-paced tutorial on Assembly that I started a few months ago with MASM. I wouldn't want to program in Assembly for a living, but it's not nearly as scary as people make it out to be and it has greatly helped me visualize what is actually happening at the processor level. Finally, I am way behind the curve when it comes to learning about Ruby on Rails as well as exploring several Alt.NET open source frameworks such as Spring.NET, Windsor and MonoRail, so I plan to devote as much of my spare time as I can expanding my horizons in this area in the coming year.

Posted on Tuesday, June 26, 2007 8:52 AM Becoming A Better Developer | Back to top

Comments on this post: Informavore Trap # 1: Self-Imposed Boundaries

No comments posted yet.
Your comment:
 (will show your gravatar)

Copyright © Russell Ball | Powered by: