Tonight I was chatting with a friend/teacher/work partner about a web site project we’ve been working on, a conference management system that allows people to submit abstracts via an online form with the possibility to attach images.
We were talking about some changes he had made to the system in order to allow the users to submit huge images by resizing them via the HTML tag (meaning the image is not actually resized, only displayed smaller) when they should have resized them before submitting them (because otherwise the abstracts will be all messed up, as you probably guessed).
I said it was nice but that I still think it would be best if we’d let the users see that their images are too big, because that way they would realize something is wrong (although before he implemented this, several users had already submitted huge images that messed up their abstracts but they still didn’t resize them).
From my experience and opinion, when dealing with big projects such as this one, we should follow a simple rule that makes life easier on everyone: the programmers do their work by programming the website and users do their “work” by using the site. Programmers should not do the users’ work, just like the users should not do the programmers’ work. No exceptions.
That’s when I realized that this is the problem with a lot of software nowadays. Software is made to be used in a certain way. If users can’t use it because they’re dumb, the programmers should not change their system just to facilitate the users’ life. The software has (or should have) instructions. Users should read them. Adding thousands of lines of code to a software system simply to take into account every single stupidity the users can do is called “Microsoft Windows” and you know how that works, right?…
Raúl Santos