1) 90% of our visual front-end bugs come from IE, sometimes only showing up in certain versions of IE7.
2) Our mac developers either need a license for VMware fusion or multiple boxes/VMs to test IE 7/8/9 which of course behave very differently. Maintaining these boxes, Windows licenses, and VMware licenses adds additional stress to IT, and the context switching for our developers is expensive.
3) For the ones that do run a VM, we've had to upgrade their RAM so they could run the app and the VM at the same time. RAM is cheap, but its still money for each new mac-based frontend developer we have.
For 2: Any reason why your developers can't use VirtualBox with the free IE-test VM images that Microsoft provides? I don't know if the license allows them to run on a non-MS OS, but you can at the very least have several of them run on a single box and enable RDP in VirtualBox.
That "single box" needs to be able to support enough instances for our entire development team. This is more hardware and IT maintenance costs. Also, if we are doing network maintenance and wifi goes down, developers have to stop working.
The point is - even that solution costs time and money.
1) Maybe it's a design problem, do you really have to provide the exact same experience to everyone?
2) As others have said, there are "free" (of course, there's a cost in setting up) alternatives.
3) Indeed, we bumped every iMac RAM here as well. It's very cheap, though.
4) Well, not really. Any logical piece of software can (and should) be isolated to run by itself. That's how you unit test them. This is the kind of thing that you build once, test everywhere and stop worrying about it until you have to change the set of features.
My point is: why don't we all serve a lo-fi version of our apps based on the features present in the current agent? This way we can stop worrying about release numbers once and for all. If nothing, it usually result in a more stable code base.
1) Yes. Our user experience, look and feel, and "funness" is part of the brand experience that we can't compromise. Does Apple compromise?
2) Nothing is free if you are buying more hardware. Considering the costs of supporting Chrome/Firefox are very incremental, doing anything other than running the browser natively increases time and cost.
3) Cheap yes, but you have to do it, and its not like buying one piece of hardware. You have to do it for every person. Better, but not great. No one likes running VMs on their boxes because it still crawls, even with 2 cores and 8GB ram.
4) Don't disagree with you at all. I was against this design decision from the beginning but lost that battle. It doesn't change the fact that we need to test all of it.
1) I don't get it. Completely dropping support would not break the brand experience, but allowing use via a simpler experience would?
2) The hardware issue was addressed in 3. Also, I don't follow, what do you mean by "the costs of supporting Chrome/Firefox are very incremental?"
3) That's a fallacy, actually. You're both proposing and confirming that "No one likes running VMs on their boxes because it still crawls". I, for one, run Windows XP VMs on my 4GB Core i3 iMac with no burden on the host OS at all. Some people might suffer with it? Yes, but some people could try tuning their setup for their needs.
Anyhow, we both know that the kernel of your argument is the first topic. I could convince you that the benefits outweigh the costs in 2, 3 and 4. But if your mindset is focused on giving the very same experience to every agent that can reach your app, or giving no experience at all; this argument is already over.
Also, saying that Apple does X or Y means absolutely nothing. Even if your company were almost exactly the same as Apple in every competitive aspect, nothing can assure that copying its culture would also lead you to a successful path. Actually, I believe history tells us the opposite.