"Your job is supposed to be hard"

Published Mon, Mar 12 2007 3:46 | William

The IT Director at my current client has a sign outside his door that reads "<his name>, Your job is supposed to be hard".  I've just arrived there so it's something that caught my attention.  As I've been looking through things there, that sign really started to make sense.  Mainly b/c they have an amazing attention to detail and honestly yearn to do things 'right'.  If you truly strive for excellence in every endeavor you undertake, it's not going to be an easy journey. 

I guess this stood out more than usual b/c I've done a lot of interviewing lately.  The only diplomatic way to put it is that there appear to be many people out in the market who are a lot better at talking about what they know then they are at knowing it.  There also seems to be an abundance of people who don't want to admit they don't know something.  We've probably all run our mouths here and there about what we knew, when we didn't know it as well as we presented it, but that's a fatal character flaw in this business and if you do it often, you're going to be doing a lot of looking stupid.

I guess I've been particularly pensive in this regard b/c of the transition I'm going through in my life.  Back in grad school I remember watching a video tape that was commonly referred to as "The Paradigm Video".  The central tenet of this video was that "When paradigms shift, everyone starts over again at the beginning."  You could be the biggest stud in high school, but that means very little once you hit college.  You can be the most popular guy in college but that means little when you get outside of college. The examples are endless. So much so that the paradigm principle is pretty much axiomatic.  Well, the paradigm shifted recently and I'm sitting not far from the beginning. 

For a few years now, there weren't many challenges that I faced that I couldn't do on autopilot.  SOme of the harder ones meant spending an extra hour or two after work doing research, but all in all it was a comfortable perch to be sitting in.

.NET 3.0 arrived with little fanfair and started a new paradigm shift.  I was a fairly decent Winforms developer.  I can't say the same for WPF.  I was pretty strong at Remoting, WS and WSE, I can't say that with WCF.  There was no equivalent of WF so there's no reference point.  And as you've probably heard me whine about, I've had my nose buried inside of WCF for usually at least 2 hours a night and much of the weekend for a while now, and all I've learned is that I don't know much.  (It's gotten so bad that my girlfriend and her daughter drew a picture of a grumpy/pensive looking cuckoo bird staring into a laptop - and the sad part is that there's a remarkable resemblance).

Right before the .NET 3.0 release, I was spending my time largely in BI.  For purely ego driven reasons, I've tried to do as little report writing as possible, focusing more on SSIS and SSAS with a heavier emphasis on the latter of the two.  I was convinced BI is where it's at in the future and there I was.  Then 3.0 came out.  a friend of mine was working on something with WCF and wrote me a note asking me about something I wrote in a book back in 2005.  Then I realized, I haven't looked at it much more since then and that's a long time. So I started getting reacquainted with it and felt fairly comfortable that I could do with WCF, just about any task I had been asked to do with Remoting/WSE/WS. 

Finding comfort in that, I moved on to look at PerformancePoint and started getting pretty excited about it.  Then before I got very far, duty called and I started doing WCF work.  Well, the initial stuff was very easy but it started to get involved quickly.  That started my binge.  Few things are as discomforting as seeing upcoming tasks and feeling unprepared for them.  So my WCF binge started and hasn't let down.  My family has noted my apparent fixation with it.  I eat at the same restaurant just about every weeknight and I'm friends with the owners.  They've commented on it.  I myself have started to feel like learning WCF well has become a major staple of my life.

 

This has all been fun, but frustrating.  Why?  Well, because of an age old phenomenon. My regular readers know I majored in Philosophy in undergrad and never miss an opportunity to do something useful with that knowledge (b/c there aren't many opportunities).  The Oracle told Socrates that he was the wisest man in Greece. Socrates was shocked and replied, how can I be the wisest, for I know nothing.  The Oracle replied "for that knowledge, you are the wisest."  So wisdome comes not from ignorance, but knowing how ignorant you are.  I'm still going up the learning curve of discovering how little I know with respect to WCF.

 

That leads me to my bigger point I've been feeling really frustrated about this lately.  I keep telling myself "look at how much time you're putting into this.  You're certainly making progress, but you're ingoring a lot of other things like Sharepoint 07, CRM and you've practically done nothing with Analysis services since August"  I was getting down about it b/c basically, all this hard work has gotten me is an awareness of how little i know, and how much I've ignoring.

Then like manna from Heaven, Sahil posted this.  Alas, I'm not alone.  Quickly I saw that the whole post was predicated on Rocky's post.  That was even more reassuring b/c I'm in good companies with guys like that.  Then I talked to a long time confidant who's at Microsoft now and he tells me "Bill, you're going to have to learn that you can't be good at everything anymore.  You're going to have to pick an area and focus on it.  You might be able to be decent at a bunch of things, but you simply can't be 'really good' at more than a few things."  He proceeded to cite example after example.  Some were off the record and I don't remember which was which, so I won't cite specifics.

Ok, so that leads me to a few conclusions - all of which I would have found bothersome years ago.  However now, somehow, I find solace in them:

  • It's still possible to be pretty good at a bunch of stuff, but you're going to need an area of concentration.
  • To achieve any distincation in that area, you're going to need to work hard.  Being Excellent at any area won't be easy.  And if it's not fun, you won't do it b/c it's just too much work to get there
  • Getting called a "one trick pony" will be a compliment as opposed to an insult.
  • Like the proverbial Japanese soliders on isolated islands fighting WWII even after the surrender, developers that still want to know it all, want to have their hands in a bunch of different cookie jars and the like, are going to be in for a rough road.
  • Knowing something is going to have a lot more concrete meaning and it's going to mean a lot more than "I can create Hello World with it.

I personally love data manipulation more than just about anything and every bit as much as I hate writing reports.  Yet for me, Business Intelligence seems the only logical path.  What "BI" will entail for me is going to be fun to figure out, but I think that's the best path for me personally.  All I can hope for is that a good amount of time passes by before the next paradigm shifts. I'm always glad they happened in retrospect, but they aren't much fun in the beginning.

PerformancePoint - here I come

Comments

# Sahil Malik said on March 12, 2007 10:35 AM:

Y'know what this feels like? It feels like a resurgence of the late 90's. I remember MSFT going nuts with COM and coming out with a goatshitload of technologies around then as well.

But what really stuck on the wall? Darn little! :-)

# Bill said on March 13, 2007 8:05 AM:

Perhaps, but a lot of stuff went nowhere.  A lot of the new stuff seems to have a sustainability component built into it.  I think it's mostly a matter of MS having to differentiate themselves in areas that are largely interrelated so that (I can't believe I'm going ot use this word) they can sell based on 'synergy' of other products.  

But the one thing that does undermine this is exaclty what Rocky said... *Most* clients just want apps that store data and let people edit that data.  In the end, that's what's still in demand.

Search

This Blog

Tags

Community

Archives

News

My other sites

Cool Stuff

Book Stuff

Security

ORM

Data Access

Funny Stuff

Compact Framework Stuff

Web Casts

My KnowledgeBase Articles

My MVP Profile

Design Patterns

Performance

Debugging

Remoting

My Fellow Authors

My Books

LINQ

Misc

Speech

Syndication

Email Notifications