Yesterday, my news feed included an article about a particular retailer's proposed tax on IE7 users. The first article made it sound like a good idea - users checking using an older browser faced an added 6.8% "tax" meant to address the additional effort required to support the older system.
I was constantly on the line to my web team. The amount of work and effort involved in making our website look normal on IE7 equalled the combined time of designing for Chrome, Safari and Firefox.
Then today, I read an article on SitePoint that actually opposed the idea.
So an IE7 tax is a great idea, right?
Kogan’s browser policy made me uncomfortable. As (good) website developers, we have a duty to support the web applications people are using. We may not like it and we can encourage users to switch but, ultimately, we cannot dictate what browser an individual should or shouldn’t use. I’m amazed anyone wants IE7, but they must be permitted to make that choice. Some may be unable to use any other browser.
This is, in my opinion, the wrong argument.
A good developer should have a clear understanding of their user base. They should develop a product that satisfies the need of that user. This might mean supporting IE7, but that's not necessarily a requirement.
I build applications for power users. They need an intuitive, easily navigable interface. They need the UI to provide real-time feedback. They need the ability to interact with the database from more than one end point.
User needs translate into product features. Product features translate into system requirements.
System requirements should not define user features!
I will never limit an application just because it needs to run within a certain framework. If the application needs a specific feature, then I change the system requirements to match. If a user is unable to upgrade their system to meet the minimum requirements to run my application, then they are likely not my target user.
Let me say that again - someone who, for any reason, refuses to meet the minimum requirements for using my application is not my target user.
That said, if possible I will try to support as many different types of users as I can. But if my supporting your antiquated environment is taking away from my ability to provide a real service, then either I stop supporting you or charge you for that extra support. I'm in the business of building applications, not supporting someone's fetish for being stuck in a rut with old technology.