Master or Shepherd?

Martin Parry poses an interesting item of "idle chat" over at his blog.

In a nutshell, Martin’s post revolves around classification of developers on a scale from M (master) to S (shepherd).   The notion of master and shepherd came from a sheep dog analogy.  Martin’s particular example, probably quoted from some real code that is running live somewhere, is a good example of a developer failing to understand the basics of event-driven development (you’ve put the odd Sleep(500) in your pre-production code too, right?)

Martin asks us to rate ourselves using the type indicator below:


I would say that it’s probably a sliding scale that we need to adopt.  Sometimes I do swing towards the Master side, whereas other times I lean towards the Shepherd side (resisting the temptation to replace S with Servant, of course).  If I had to be specific, I guess I would swing to the left (I never thought I’d hear myself say that, never mind put it in print – no doubt somebody will quote me out of context!).

For me, the position really depends upon the nature of the task, the time available to complete the task and a variety of other external pressures.  Perfection is a good goal, however in a commercial environment, it is one that comes with a high price tag.  Your boss doesn’t really care whether you’ve implemented the cleanest data access layer using ACME ORM – he just cares about the data being inserted, updated, deleted, processed and displayed (to him, even the data has a semantic difference).

For example, whilst I’ve used Sleep(500) in pre-production code, I do find myself under time pressure to complete and as such do find myself leaving the odd "to do" in my code.  I may not write the most memory-efficient algorithms all of the time, I may need to use a code profiler from time to time – is it not better to be feature complete than behind schedule?  Sometimes, more so in a commercial environment, getting the job done is more important than writing perfect code.  As long as the tests pass, deadlines/budgets are met and the user/product owner is happy with your offering, you’re on the right track.  So yes, feel free to swing as far left as your schedule and budget allow.  If you reach the extreme left, excellent stuff (I’d be interested to learn more about your definition of Master!)  But don’t be too worried if you find yourself sitting left of centre, it’s probably a very popular place (again, another phrase I never thought I’d say let alone write).

Ultimately though, Martin’s key point revolved around understanding the machine that you are developing against.  I’d say it goes beyond understanding the machine, you need to understand the framework that you are developing towards (e.g. Microsoft .net) and the tools that you are using (e.g. Microsoft Visual Studio).

It’s fair to say that what started out as a little idle chat, Martin’s post certainly got me thinking.

[UK – 30/06/2008 at 1800] Event – SQL Server User Group – Michael Rys on XML and Pizza

Michael Rys on XML and all things non-relational

Monday 30th June, 6-9pm

Conchango Offices
36 Southwark Bridge Road


Michael Rys on XML and all things non-relational

We are very fortunate that Michael Rys has decided to come and speak at a UG event whilst he is in the UK for a W3C working group.

If you use XML in SQL Server then this is the one User group meeting you have to come to.

Michael is Program Manager in the SQL Server Engine Team at Microsoft and is responsible for the XML features in SQL Server.

He is the man that knows XML and XQuery inside and out. On the few occasions I’ve met him I’ve always felt humbled by the intellect of this man.

You can find his blog here and his old CV can be found here (nice picture)

Registration is at 6.00, evening will commence at 6:30pm and finish 9pm.

6:30pm – 6.45pm – Introduction, news and gossip.
Whats going on in the world,

6:45 – 9pm Michael Rys on non-relational data in SQL Server
I’m sure Michael has some great demos on non relational features and will answer any questions you have around XML, filestream, Full Text etc.

Pizza will be served at some point in the evening

How to get there
Nearest tubes are, Mansion House, London Bridge, Southwark and Borough
Nearest stations are Blackfriars, London Bridge and Waterloo

DDD7 – 22nd November – Call For Speakers

After a short but rather deliberate break, DeveloperDeveloperDeveloper returns to Reading on the 22nd of November 2008.

Regular attendees, speakers and voters will notice that this call for speakers is taking place somewhat earlier than usual. We’re keeping the call for speakers open for a longer period of time for a few reasons:

  • to give potential speakers time to prepare their sessions prior to submission
  • to give potential speakers time to prepare video teasers of their sessions (here’s one I did earlier)
  • to allow potentials speakers time to dry run their sessions at user group meetings

Expect registration for the event to open “as usual”, in this case during the latter half of October, or thereabouts.

In the meantime, feel free to blog about this call for speakers, tweet about it, hey, you could even submit a session!

DDD7 – November 22nd – Call For Speakers:

Technorati Tags: , , , ,

[Event] 12-Jun-2008 – NxtGenUG – FEST08 – UK, Reading

FEST08 the annual NxtGenUG one-day event takes place at Microsoft Reading on Thursday 12th June. As ever it’s going to be an action packed day with great content from the likes of Mike Taulty ,Oliver Sturm , Dave Sussman and other top speakers. No doubt there will be bundles of ‘swag’ and prizes and Pizza somewhere down the line – there always is when the NxtGenUG Boyz are around. There seems to be a few more of them this year with the Cambridge and Southampton crews joining in the mix.

So got to for details and to register your place. It’s free to all NxtGenUG members and a mere £49.99 to non-members – bargain! Oh and also if you’re around the night before there is a G(r)eek dinner to toast Daniel Moth on his way to the states. is the link to signup to.

Technorati Tags: , , , ,