My partner and I started to work on a website a few months ago. We have a working prototype, and we are always improving it. My work is mostly concentrated on a smart Python backend, and on a Javascript front-end, while a thin controller acts as a messenger between the two.
Lately, I’ve worked on improving the UI. As expected, I rely heavily on CSS. I generate a lot of html elements using Mochikit and format them with CSS classes. While obviously better than the old alternatives, I still don’t like CSS. Maybe it’s because I don’t understand it deeply enough, but for me, there is still a lot of voodoo involved. An example I found, which luckily I didn’t run into yet, is collapsing margins.
Still, even with all its voodoo, CSS is bearable. At least until you get to IE. My latest run in with it was a scrolling bug, and I ran into many other issues. However, as much as I complain, I’m probably getting it easy, as when we started work, we decided not to support IE 6, at least until required.
Our reasoning was:
- Developing for IE6 both independently and consistently with other browsers has a high cost attached to it.
- IE6’s use rates are declining, and will decline even more by the time we launch (See these statistics for example).
- Our first versions were mostly required as a prototype to prove our technology to potential investors.
- As a two-men team, and a one man programming team, we are very low on development resources.
Given my latest bout of UI programming, this choice made me just a little bit happier.
Funny, but yesterday I read this: http://googlesystem.blogspot.com/2009/01/upgrading-from-internet-explorer-6.html
Well, it declines, but not fast enough. 20%(!) of the population uses it. That’s a lot of disappointed users…