At one point in class, I talk about maintainability, and I happened to mention renaming a column in the database.
One of the students got up and started what I can only call a rant on how people that renames columns in the database should be shot in the head and then thrown into the garbage heap. Appernatly proper burial was too good for those monsters that renames columns in the database. I am sure that the story behind this reaction was interesting, and probably funny if you aren't in it.
What interested me that this was such a powerful reaction to a problem that I don't even have. I have run into several of those recently, and I must say that some people has fairly creative solutions to problems that I don't even have.
One company has decide to forbid the use of identity columns all together, and forces all PK generation to be done through counters tables. Again, I don't have the story, but I have a strong feeling that @@IDENTITY is behind it.
At DevTeach I was shown a clever way to work around dependency management on the naked CLR, I was impressed by the inventiveness, but it was an approach that could only be taken so far.
The point of this post is to urge you to take several steps back when you run into something that doesn't makes sense, and try to find a way that does make sense, if you have to do something that you feel the underlying framework/services should do, you are either doing something wrong, or the platform is wrong. In general, it is safer to assume that you are doing something wrong and that there is a better way. Find out!