Pragmatic or passionate? – part 1

I’ve read, listened to and been in a few discussions lately about competency, or the rather the different kinds of developers – as in the diverse approach they have to their day job. I thought I’d give my view, compacted as it must be in a blog. I’d be more then happy to discuss it further with you through comments, email or in real life.

Going back a few years, say to the year 2000, I felt pretty comfortable saying I knew Microsoft development, and by that I would mean that I knew enough (on a sufficient depth) of all the products and technologies that were used in any greater extent in a common development project. It’s no secret to you who were active at the time that if you knew SQL, VB6 server-side and ASP together with a little javascript and CSS and could do C++ and COM related programming, and now and again a little XML, then you could pretty much step into any project and be productive as a programmer from day one.

Today the scene is widely different. If you can honestly say that you know every product and technology that is featured within an arbitrary project built on a Microsoft foundation then one of two scenarios are true. 1) You have devoted your life to being a developer and everything revolves around it. 2) You feel always unsufficient, neglecting other tasks and/or family and non-developer friends. You spend what feels like too much time trying to learn, but it never seems like enough.

With that said most of us don’t fall into those categories simply because we acknowledge the fact that we don’t know everything about everything. Note: If you at this point are thinking that ‘Hey, I know everything, but don’t recognize this’ then hey, you’re either a genious – and I salut you, or you’re delusional. The range of things to know is just too big. And it’s not just technology. Apporaches to programming (ie DDD, TDD, BDD etc) and running projects (ie Agile) as well as other surrounding topics have become increasingly important as the industry has become more mature.

So instead you prioritize, specialize in a few topics and purposefully filter through articles so as to not spend time reading in-depth topics (however interesting they may seem) about (for you) non-essential products and technologies. I might for example find an in-depth article about the search engine plugins and optimization for MOSS 2007’s enterprise search engine to be a very interesting topic, but will prioritize, and instead read something I feel is closer to what I do, such as how the UDDI 3.0 integration with BizTalk Server 2009 is built or an introductory article to WebMethods even.

This prioritizing to me is a pragmatic approach. You just can’t read it all, do it all, know it all – so you have to be pragmatic. But that doesn’t mean you’re not passionate about what you do. Writing this I had to prioritize, so this became part 1 and other parts will have to be a later issue, now I have other things to do…

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s