In the world of web design, I find one of the most difficult tasks is building a robust user interface for web applications. Front ends to news websites or blogs are one thing – and a challenge in their own right – but handling the complexities of managing data with the elegance of a WordPress backend is not nearly as simple as it seems. For a start, the developer needs to be intimately aware of the data, how it connects to various other data components and what it means to the end user. In addition, the decision has to be made: what goes on a single page? I am personally always lusting after the cleanest, simplest interface possible, which means among other things employing AJAX to keep page refreshes between alienatingly-different screens to a minimum; not letting the user get completely lost when switching between various elements of a single operation.
But as challenging as that all is, the situation becomes much more sticky when there is already a user interface in place. Such is the case with the current web project I’m working on. There is already a robust website in place and it has many facets being driven by backend user interfaces. I don’t necessarily agree with the layouts of the pages – many of the rules I’ve long-since taken for granted about what an efficient and useful UI looks like. But to change the layout means necessarily retraining the users on how the interface works.
There are also some restrictions and conventions of the platform I’m working with – CakePHP – that cause me to want to work in certain ways. I realize that the framework should not define the application, but when those conventions are ones that I agree with, it just adds more pressure to want to move to another interface.
I did not starting writing this post with any intention to arrive at conclusions, though I confess I did start with a thought that perhaps by writing down my ideas, something like the shape of a solution would appear to me. So far, no such luck. But I am learning to balance the needs of my audience with the modernization that I was hired to produce. I think for a start, laying out ideas and presenting them to my bosses – while time-consuming – is my best bet going forward. It both allows my bosses to object to things too far removed from their current experience and also hopefully loosens up their preconceptions enough to allow for some of my ideas.