This week's advice from Chad Fowler's gem of a book
really resonated with me when I
read it, and it continues to do so. It was one of my favorite chapters in the book: Be a Generalist.
Don't be "just a coder" or "just a tester" or just
anything. Doing so leaves you useful
only in certain contexts, when reality dictates that it would be better to be generally
Towards the end of the chapter, Chad tells us about his early days in IT:
What first amazed me most when I entered the information technology field was that many
well-educated programmers (maybe most) didn't know the first thing about how to
set up the systems they used for development and deployment. I worked with developers who
couldn't even install an operating system on a PC if you asked them to, much less set
up and application server on which to deploy their applications.
After reading that, I thought to myself, "That's me
." Rather than wallow in self-pity, I
decided to do something about it.
Where I used to ask "our server guy" (that's his official name) to do something,
I started asking him how
to do it. ButI didn't immediately start there - I started trying
to figure it out on my own before going to him for help (à la Mr. Raymond's famous
). Now I don't need help in setting up virtual directories or web sites or my development environment (yes,
I was that bad).
Instead of being helpless, I set up Rails
and fixed up dual widescreen monitors
set up Subversion
set up my own development environments in general, and played with ANTLR
among a slew of other things past, present, and planned for the future (on my TO-LEARN list).
Doing things like I mention above is not impressive. Certainly things like that aren't hard to do.
them helps you get over your fear of new technology
and take responsibility for your own improvement
The chapter ends with advice to "list the dimensions on which you may or may not be generalizing your
knowledge and abilities" and to do something about it. There are an "infinite number" of aspects for
which you could do it, but Chad limits his discussion to five: "Rung on the career ladder, Platform/OS,
Code vs. data, Systems vs. applications, [and] Business vs. IT."
I've got a long way to go, but I'm slowly getting to where I want to be. Are you doing anything?
Hey! Why don't you make your life easier and subscribe to the full post
or short blurb RSS feed? I'm so confident you'll love my smelly pasta plate
wisdom that I'm offering a no-strings-attached, lifetime money back guarantee!
Leave a comment
Thanks for this very interesting article, and the stuff described certainly rings a bell to me too -- but as a typical self-employed "lone warrior" in the web biz I have to admit that I simply don´t succeed being everyone´s "all-in-one device suitable for every purpose".
Personally I´d rather rephrase this a little :: *try* to be a generalist and learn as much as you can -- but know and respect your *current* limits, and if someone else is better in a certain field of work, team up with him/her to provide an overall better quality to the customer.
To my mind a true "generalist" doesn´t always need to be able to do it all himself -- an orchestra conductor usually doesn´t know how to play the violin perfectly, but he "knows some folks" who do provide this quality, and makes the best of it.
Posted by Günter Schenk
on Aug 17, 2007 at 01:54 PM UTC - 6 hrs
@Günter - I agree. I wouldn't go charging customers for my deficiencies. I might consider charging the time I /think/ it would have taken me had I known what I was doing in the first place, erring on the lower end. Generally though, we'll try to partner with someone who does know what needs to be done, just as you suggest.
There is also another upside of teaming with someone more knowledgeable than yourself, aside from providing better value to the customer: that you can learn from them at the same time and hopefully amplify your own skill set.
Posted by Sam
on Aug 18, 2007 at 10:10 AM UTC - 6 hrs
Leave a comment
It's tough to be a generalist in a field which seemingly demands so much specialized knowledge, but I wholeheartedly agree with you. In the end, the people who are busy transforming entire companies are the ones who have a good grasp of all 5 of these aspects!
Posted by Justice~!
on Aug 25, 2007 at 11:55 AM UTC - 6 hrs