Dual-Wielding Development

Now, I don’t know about you, but ever since I read R.A.Salvatore’s first Drizzt books (The Crystal Shard, Streams of Silver, The Halfling’s Gem), Dual-wielding weapons is the first thing I take in rpgs … it’s what I dream about as a legendary warrior, it’s what I practice with broomsticks when nobody is watching.

But anyway. Bill’s experiences of late have unearthed two facets of Dual-Wielding in Development.

  1. Support

    There is the helpdesk-y, support calls, functionality. A system where all calls are logged, client’s ring and have someone walk them through working parts of the program, fixing problems over an instant messenger.

    This is the part of support that everyone knows about. Rightly so. It’s 50%. Maybe more.

    The other, hidden, rarely spoke of side, is that of the Account Manager. Nothing to do with Accounting, but everything to do with the Clients. The Account Manager is the Client’s direct link into the matrix. They are there to chat, to argue with, to give feedback, to be supportive. The Account Manager is the public face to the System.

    A very important role. There isn’t any way of getting around it.

    The problem is, I would think, that most of the time this role is handled by either the Head of Support, or the Developer themselves, or even the Manager of the Company.

    Once you get past 1 client, you really need to have an Account Manager. Or at least be able to compartmentalise your brain into different jobs.

  2. Updates

    This is probably more than a "Dual", but I really liked the intro.

    This is functionality that occurs once the software is out there, and you have a bunch of different types of Clients. Actually, it pretty much would be limited to Dual. But … anyway.

    You have client’s who only want the Point Releases, stable. Then there are client’s that are willing to beta releases, test them, get the new functionality sooner.

    So how to solve this? Have dual Install Streams. Or Update Streams. The nomenclature doesn’t matter here, it’s the idea. And it’s not hard to implement, just need to have the design in place. To be able to control what the client downloads, how their "client" talks to the "server", what rules are in place for these interactions.

So there is my latest little brick in the pavement that makes up my journey along Development Highway. There is a lot more than could be said about these elements. Maybe later, or maybe someone else.

Dual-wielding. It’s the bomb.