A couple of years ago, when I returned to my current company after a leave of absence, I was delighted to discover that we had hired a database administrator (DBA). Given how awful our previous databases were, this was a wonderful thing to do.
He sucked. Badly.
For my geek friends:
- He didn't understand why a username shouldn't be a primary key
- He couldn't write simple queries with joins without GUI tools built into SQL server
- He didn't understand why "category_1", "category_2", "category_3", etc. were not good table and field names
- He deleted foreign key constraints when he found he couldn't drop records from a table
- He ran some bad SQL on a production database without backing it up
Our project manager didn't understand the issues involved, so I started teaching him how to design (normalize) a database. He learns fast. At one point, I showed him a database that our "DBA" had signed off on and the manager's first words were "Hey, that's not normalized!". I was proud.
Now I regret it. We finally got rid of the DBA, but now the project manager is trying to "help" with the database design on a very complicated inventory management system. Instead of him laying down business decisions and me making technical ones, I keep having to explain and justify my technical decisions. I'm bogged down trying to communicate why I need to do things a certain way rather than being able to just jump in and do them.
In other news, this is Day Three of the Patch. I also saw a great job listing on jobs.perl.org, but it was in Dubai. I won't apply as I seem to enjoy living, but my father works there from time to time, so it would be nice to see him every once in a while.