User Interface (UI) Design Is Difficult
If you are designing a new web app, blog template, VB/C# .NET application, MFC Windows Form, or any other application that a user will interact with, you will have to deal with UI design.
I believe that many of us that come from a traditional university computer science background find designing UI difficult. I learned all my college programming via command line, and the only “windows” I designed were for my own personal projects, or toward the end of my university stay when we were given more freedom on projects.
What many of us fail to realize is that to the user, the UI is the program. That is a very simple but important thing for a developer to understand. I feel that because of this, it is important to not wait until the end to design the UI.
Some people will tell you that you should design the UI first, and some will say not to. I think both ways can be appropriate given specific conditions. The important key as I see it is not to wait until the end. I like to design a basic UI, and let it grow with the program development, and then at the end I like to clean it up, and beautify it.
Anyway, there are resources a plenty on UI design, from far more brilliant minds than mine, but I just want to share the point that I made earlier, to the end user, the UI is the program. I think that as developers, if we all keep that in mind, we will make better programs.