The big controversy at the office this week was a “radical” idea offered by one of our developers regarding data collection with a series of web-based forms.
The idea was that rather than just pouring the data into a relational database like everyone else does, we’d build up an XML tree, essentially a gigantic (in this case, ~200K) string, and pass that around from form to form.
The advantages of this, if I understood correctly, would be to simplify the data model design and eliminate the need for table joins.
Of course, it also violates every known rule of efficient data access and ratchets up the processing requirements by several orders of magnitude, but that didn’t stop one of the development managers from throwing his full-fledged support behind it.
I TA’ed undergraduate software engineering classes for a year at USC, and every so often an underclassman would advance some “radical” theory on how a programming problem ought to be solved, unaware of the fact that their proposed approach had actually been discredited 15 years earlier.
That’s okay . . . by the time they completed their degree, they usually had a much better understanding of the history and foundation of their discipline.
But the advent of web development has brought us a new generation of programmers, many of whom have not had the benefit of a formal education in computer science, which leads to sophomoric programming strategies being proposed by “professional” developers . . .
Thus spoke The Programmer.