Archive for the 'Career' Category
Posted June 5, 2008 at 3:37 AM | Tagged as: Career, Computing, Geekout, Work | 4 Comments
Software programmer Sara Chipps (yay! a woman!) has written an article titled Natural Programmers (Code Monkeys) vs. Career Programmers (Geeks in Suits). It’s probably the best non-techie explanation of the behaviors, habits, and beliefs of the “natural programmer” that I’ve read — and yes, I completely identified with much of what she wrote.
However, I have to take a step back and address an issue that I have with the two types of programmers she defines and the names she assigns to them.
First there’s the “career programmer (geek in a suit)”. These days I find that career programmers are not geeks, and they’re definitely not in suits (always business casual!). I’ve found that they’re in programming for the money; they learn enough to do their work — perhaps well, maybe even to get to the point of being perceived as geeky. But I also find that these people lack a true passion for the craft of writing code. Sara suggests that the career programmer is more of a business person, concerned with cost effective solutions, but I’m not even sure that’s true anymore. To me, this person’s work is just a job, and if flipping burgers paid as much as programming, they might be doing that instead.
Like Sara, I fall into her other category of “natural programmer”. But I am certainly not a code monkey — I am a code ninja! (Actually, with a nickname like “Obi-Wan Kimberly”, I’m probably a code jedi, but anyway…) I find the term “code monkey” to apply more to the previous category of programmer. Why? “Code monkey” implies that anyone can do what we do and that we work for bananas. “Code ninja”, on the other hand, says that we’re stealth and secretive, jumping out of the darkness when you least expect it. Our code takes you by surprise in its brilliance and our swiftness of execution is legendary. We could do no other job because we have trained for so long, perfecting our natural talent, and nothing else can satisfy our need for control over the systems we affect.
Sara closes her article with some OR logic about which type to hire, however I need to propose a more detailed and different solution. If you have only one programmer working for you, you probably don’t want either of these types — you need someone who really does fall into the gray area between the two extremes. (Yes, they are out there!) And if you have a team of programmers, you need a mix of these two types, and you need to put effort into getting them to communicate effectively with one another. Only then will you have both a killer team and killer code.
Posted January 8, 2008 at 5:32 PM | Tagged as: Career, Meeeeeeee, Web Standards, Work | Comments Off
I’m very honored to be featured as Christopher Schmitt’s first interview of the year. Christoper is a stand-up guy, a great designer, and prolific author. We had a good chat about work and non-work stuff, and you can read the whole thing here!
And just in case you didn’t notice, the line-ups for the 2008 An Event Apart conferences have been posted. Eric and Jeffrey asked me to speak to the Boston crown on June 23-24, and how could I say no? I had such a good time last year in San Francisco and it seems about time to take my message to the East Coast.
Wow, we’re only eight days into the year… how am I ever going to keep up this level of ass-kicking for the remaining 358 days? Whewh!
Posted December 31, 2007 at 12:39 PM | Tagged as: Career, Meeeeeeee | Just 1 Comment
There are only about 12 hours left in the year, which seems about the right time to take stock of what’s happened to me in the past 12 months and what’s to come in the next 12.
Looking back, I can’t believe all that I accomplished in 2007. Some of the highlights include:
And that list doesn’t even include work accomplishments!
As I plan for 2008, I have a number of exciting challenges ahead: more writing, more speaking, more travel — but also serving as a committee chair for GHC08, running a BarCamp, writing a CS1 course curriculum based on Web development, and more! But best of all, I’m looking forward to moving home to Philadelphia — a slight change in plans, but a good one.
Into 2008, and into the Arena! (And if you don’t get the Duran Duran references, shame on you!)
Posted August 10, 2007 at 7:46 AM | Tagged as: Business, Career, Web Standards, Work | 4 Comments
Karl Dubost’s recent post on the craft of HTML coincided with the launch of the first round of Web coding standards at work. Why did we need coding standards? Karl answers that for me in his first paragraph:
HTML is a practical art. In a professional context, it requires precise and extensive skills. As with many popular crafts, the vast majority of people do it on their own, but only a few do it for a living. The quality of products varies a lot.
When you have a team of developers working on a product, you need to set quality requirements… but to meet those requirements you also need to set the expectation that the developers will work in a consistent manner. Sometimes this can be achieved by having the team lead set the direction for the code by crafting templates and doing code reviews. But what happens as team members rotate on and off the project — how do you retain the knowledge about the coding direction without taking time to bring each person up to speed? What happens as your development team grows to 10, 40, 100 people? This stuff doesn’t scale without spelling out the rules and setting expectations… thus the need for coding standards.
But standards alone won’t create consistency, of course. When Karl says that “HTML is a craft”, he implies that there are techniques that one can only learn through study and practice. When practicing a craft, there are skill levels that reach into the realms of mastery that only few will ever meet. Out of that team of 10, 40, or 100 developers, how many will truly become those masters?
My experience over the past 8 years of working in industry has led me to find that only a few will ever commit themselves to the craft of Web development, and that worries me as a developer and as a manager. We all want job security, and dedicating oneself to excellence in a field implies we’re in that field for the long haul. But what career path can a Web developer expect to have today? What opportunities will be available 5 years from know? There are many unknowns and I think that this may be one big reason I don’t see more talented developers taking the plunge and committing themselves more fully to Web development as a craft and career.
Karl points to another problem: the “majority of people do it on their own, but only a few do it for a living”, which to me implies that most people think anyone can be a Web developer (how many times have you heard someone state that their kid could build a better site?) and therefore they don’t take the craft of Web development seriously. I’ve found that most Web developers who didn’t emerge from computer programming backgrounds have serious complexes over whether or not they’re “real” developers… and a lot of this is due to snarky computer programmers who put Web developers down because they make the same, stupid assumption that “anyone can do Web development”. How is that encouraging to anyone looking at committing themselves to this work as their career? (Nevermind how irrational it is for a computer programmer to dismiss part of their larger discipline.) How is that encouraging to anyone who has hopes of using Web development as a basis for a career that could include programming in other languages?
So what’s a developer to do? And what’s a manager to do? I’ll post my ideas at another time… right now, tell me yours.