I was speaking at a small User Group meeting yesterday. A crowd of about 20 was sitting at tables in a “U” configuration. About 70% of the way through the presentation, I asked the fateful question.
Me: “How many of you are DBAs?”
To my surprise, the right side of the room raised their hands. Roughly 10 people, without a single gap in the line.
Me: “How many of you are Developers?”
And the left side raised their hands, roughly 10 people, no gaps, all developers.
How the hell did the DBAs and Developers sit apart like that without any planning? They didn’t ALL know each other, they just happened to sit in such a way that they were 1) apart from each other, and 2) facing each other with the battlefield in between.
We all had a good laugh about it, but it still made me think. Is there some fundamental subconscious difference, some sort of projected vibe, between DBAs and Developers? We fight so often, but that could be easily attributed to the fact that we rely on each other to do a good job. I even did a humorous presentation/discussion on it once, an epic fairy tale explaining the peril DBAs and Developers put a company in with their bickering. You can download it here if you like.
But if it’s just the fact we work so closely yet compete, like siblings, how the heck did they all manage to sit part like that? It reminds me of the “group mind” concept from various science fiction and fantasy books (like the Borg). We are the IT Conglomerate, Developers to the left, DBAs to the right, no further communication is required, thank you.
Hey, maybe it’s pheromones.
The dba-developer schism has baffled me too. The subject came up back in September on Oracle WTF: http://oracle-wtf.blogspot.com/2006/09/year-of-wtfs_09.html and an interesting, if inconclusive, discussion followed.
I think developers and DBAs often find themselves pitted against each other by virtue of corporate structure. They’ll put the DBA team on the 30th floor and have them own all the databases, and put the warehouse dev team on the 20th floor, or a different building entirely, under a completely separate reporting structure and tell them to optimise the batch process. As a developer I try to use the debugger (say) in a dev instance, or trace a session, or query some v$ tables or whatever, and find I lack privileges and have to submit a business justification and wait six weeks.
Just for fun, it’ll usually be the same story with server/network admins and desktop support.
I like the ppt! The conclusion of the story can also be to hire consultants 😉
Are you going to IOUG Collab 07?
Hope to meet you again (maybe in LV),
I wish I was! I was accepted for two of my presentations, but IOUG has seen fit to cancel them and officially disallow me from the event. I taught a paid class aboard a cruise ship, which I guess is grounds for telling an Oracle ACE, published SELECT Journal author, OpenWorld speaker, and local non-profit User Group President they can’t come to their party. Ah well. Sorry that came out less cheerful and more rantish than the “sure am!” you were expecting! 😉
Thanks for posting!
What about the DBA’s who cross the boundaries and also wear developer hats (I happen to have to wear both hats)? I guess we would end up sitting at the boundary between the DBA’s and developers…
I attended your Open World presentation (was also the technical content leader that selected your presentation for the conference), and I’m sorry your presentations were cancelled. Sounds like a shame without knowing the finer details of what transpired, as I thought your presentation was quite interesting.
I hope that your experience won’t lead to your not submitting papers for the other conferences, such as ODTUG’s Kaleidoscope conference.
Take care! I enjoy your site whenever I actually get the time to view it.
Ah. I’ve worked as both… but I spend more time as a developer.
I would say that many infrastructure teams have a negative attitude. It’s as if they are being paid to prevent change – while developers are being paid to create changes. In some (more software oriented) companies the relationship is much closer. Having the same employer helps.
Infrastructure staff have to (I think) understand that they’re ‘goodies’ arise from new business projects. ie they’ll get more new stuff and more funding if they allow and promote development. Likewise, apps/programming staff can assist support with run schedules, trace tools, and arrangement of family friendly maintenance slots.
So a cooperative relationship is possible. I guess many DBAs have been burnt by bad dev staff.
Anyways… I had one particularly funny “app vs DBA” moment… with a client that probably did very little real development. Well a new machine had arrived on a pallet. A decent investment there. After cautiously waiting for a week, I rang support about getting an account.
What machine they ask. I tell them.
We haven’t heard of it they say.
It’s new I reply… (they find it, after some checking).
What application runs on it they ask.
“None”. I tell them…
Puzzlement on the other end.
“I’m writing one” I explain.
As a developer with over an decade of experience, I can tell you some DBAs view it part of there jobs to make life difficult as possible for developers.
Its part of the corporate culture at some places. I find its usually all or nothing i.e all DBAs are “difficult” or all are more accommodating. I have also found that DBAs who used to be developers can be easier to work with.
I think Richard Gowan hit the nail on the head when he said “Itâ€™s as if they are being paid to prevent change – while developers are being paid to create changes”.
This is why clashes can occur, a lot also depends on the structure of the organisation.
Im thankful that at the moment I have a project manager whose job is to get the app delivered, acts as my back up when these issues arise with DBAs.
I, too, have straddled the DBA-developer fence for many years, and found little company. Recruitment, job descriptions, and even the Oracle certifications tend to peg you as one or the other. The problem is that problems (usually though not always related to performance) can cross the boundary, so that a DBA who can’t program (and I don’t count scripting) plus a developer who thinks that Oracle is a black box are likely to have trouble finding a solution.
No matter where you are in the IT cake, you need some knowledge of the layer just above you and the one just below.
If an act or policy is otherwise morally justifiable, the fact that its consequences favor or disfavor some group of people singled out by some morally arbitrary or neutral classification scheme is not alone a consideration that tends to render the act morally unjustifiable. ,