Udell’s (2005) article makes the point that database systems need to be built around how the users actually use them. How does the author suggest the developer go about that and what are the downsides?
The author points out that a lot of the popular data formats were not really structured in the first place. If the Internet was really strict on the presentation of how data was supposed to look then the Internet would not be as popular as it is today. The article also pointed out that RSS feeds don't have a schema. I agree with him to a point, but I think these idea's in a professional environment should be left to beta testing. I can see how I can make a program that allows people “color outside the lines,” but I would leave this privileged to very experienced hands who know that they can tweak something without breaking it. A lot of times the tools that we use have a lot of room for thinking outside the box, but these options are usually hidden for good reason. When people don't follow the rules stuff gets broken. Of course there are ways to find the paths that people are taking without giving them the option to wreak havoc, that is, study their habits with the tools that they are using now. Find out what those people do who are so good at their job, then create tools that will solidify that path that they are taking and create a standard. I don't agree with describing this process as a “catch 22,” I think it's more like aerodynamics. Any modification in the design affects the dynamics of the entire structure, so there is a constant evolution in the design of a database. Maybe someday we will have tools will design databases in the same way that we have programs that can design aircraft and determine whether they are flyable or not.