There seems to be a strange belief amongst some developers that just because admin systems aren't shown to users, they don't have to spend any time on them. The result is control panels that are ugly to look at and a nightmare to use, because they've just been done in the simplest way possible. Honestly, I think this is complete and utter nonsense! If you're building something that people, whoever they are, have to interact with and you're not considering the user experience, you're doing it wrong!
Taking some time to think about how people will be using your admin system and planning accordingly will save everyone a lot of headaches down the line;
- You'll be less likely to have users bugging you about needing the admin to do something else, or to do something easier, which means more time to work on new things, rather than re-doing existing work.
- Because the flow of the admin system is clearer and more intuitive, there's less chance of users making mistakes and doing the wrong thing with it, meaning you won't have to spend time fixing their mistakes.
- Information will be presented to the end user much clearer, so you won't have to spend as much time explaining to them how it all works.
For me there are other benefits to making the admin systems a lot nicer; in web development we spend a lot of our time having to make sure things are cross browser compatible, which can often mean not exploring the latest technologies or ideas, or making things as slick and funky as we'd like, because some browsers don't support the features we'd need. With admin systems we can often have a bit more say in what browsers people should be using, so we can restrict them to modern, up to date browsers, giving us the opportunity to try out some cool stuff that's going to make things much more interesting for both them and us.
Another thing often overlooked is the usefulness of colour. Colour coding information and buttons can give a much quicker visual clue than any label, allowing an end user to gain a broad overview of the information being displayed, just with a glance. This can also help with making the system more intuitive; green buttons for positive actions, red buttons for negative etc.
So next time you're building a backend for a site you're working on, or just any form of control panel. Stop and think about the end user. If possible ask them about how they would ideally want it to work, treat it like you would the design and developement of the front end and get user feedback throughout the process. Do all this (and act upon it) and you'll end up with much happier end users, even if the end user is you.