Tuesday, July 31

as simple as possible

Things should be made as simple as possible, but not any simpler.
Albert Einstein


This is a quote I got through an official email today, as part of someone within the company offering a new facility to the employees. It got me asking myself: Why is this so difficult to get right?

For example, we have two applications for managing code changes: one of them is geared towards managing the files themselves, the other one geared towards managing the process.

That's fine, except one of them is web-based, having all the GUI (validations, window toolkit emulation, and data) implemented in javascript. It doesn't get slower than that, nor heavier on system resources.

It is also overly complex, as it tries to do EVERYTHING, starting with remembering client's contacts information (snail mail addresses, email addresses, phone numbers and what not), client entities (different that what I already mentioned) and contacts' accounts, to cases, sub-cases, solutions to cases (yes, the solutions are different than the cases they're solutions for), change requests (different than cases and solutions) and a bunch of other objects I don't care to mention.

Most entities I work with in this application, have over a dozen tabs, all containing fields I will never read, but still there, just in case (I'm not sure "just in case" of what).

On top of all that, we have an "optimization team" that keeps adding stuff to this application, and we keep seeing stuff we'll never use, appearing in different frames every now and then.

Can anyone say cruft?




As another example, someone came with the bright idea that the XML configuration files, should have a specialized editor (an addin on top of Eclipse), that simply generates a hash-value for the xml and inserts it as a comment. As such, you're stuck with Eclipse just for changing a damn field in an XML file (changing manually misses the hash-value generation), sometimes taking fifteen minutes just to start up (and I mean that literally, measured with a clock in hand), because whoever wrote those addins had no idea how to optimize them.

For heaven's sake people, please follow the KISS principle.

I think I'm done ranting and feel all better now.

Thank you.

No comments: