How does Microsoft expect developers/designers to make stuff work for everyone?

L

Leythos

So it sounds like you are saying that if you code to the standards then
there is no need to test in the different browsers? Is that realistic?
I think we will always want to test in the different browsers. Even
with standards we could have slight variations in how those standards
are implemented - true?

In general there are two targets - the IE group and the Everyone else
group. There is no cost effective means to make all web apps work with
all browsers, customers just wont pay for that.

With the above in mind, you need to test your app with the following:

Windows 2000 / IE6
Windows 2000 / IE7
Windows 2000 / AOL
Windows 2000 / FireFox 2

Windows XP / IE6
Windows XP / IE7
Windows XP / AOL
Windows XP / FireFox 2

MAC OS/x (if you care)

Nix OS / FireFox (Fedora, Mandrake, Ubuntu...)

If you do the above, you will cover 99% of the people that visit a
public website.

If your customer base is smaller, then reduce the list.

We have dedicated machines setup to test our web apps against the above,
just so that we can be sure they work. Each machine has a ghost image
that is restored before each test so that we can be sure that noone has
installed any controls that we don't expect users to not have.
 
K

Kevin Spencer

Yes, in fact, FireFox accounts for all Mozilla type browsers, and IE7 is
almost exactly as conformant as FireFox, but I would test in both, or at
least understand the differences. IE6 is problematic, especially with
regards to CSS and some JavaScript. Of the current popular browsers, it is
the least standards-compliant, but really doesn't run into problems most of
the time. Safari is, of course, hte major Apple browser, and is almost
entirely standards-compliant.

So, using those 4 browsers, and not worrying too much about IE6 (IE7 is
freely available now), you should not need to test in any other browsers.
And you can probably safely skip Safari if you don't have a Mac, as long as
you stay inside the standards.

--
HTH,

Kevin Spencer
Microsoft MVP
Bit Player
http://unclechutney.blogspot.com

In case of Minimalism, break Philip Glass.
 
C

C A Upsdell

Leythos said:
With the above in mind, you need to test your app with the following:

Windows 2000 / IE6
Windows 2000 / IE7
Windows 2000 / AOL
Windows 2000 / FireFox 2

Windows XP / IE6
Windows XP / IE7
Windows XP / AOL
Windows XP / FireFox 2

Why do you feel it is necessary to test the identical browser on
multiple O/S's, e.g. IE6 on Win 2000 and Win XP, and Firefox 2 on Win
2000 and Win XP?

Why do you feel it is necessary to test AOL, given that it just uses IE?
 
M

Mark Rae

Why do you feel it is necessary to test the identical browser on multiple
O/S's, e.g. IE6 on Win 2000 and Win XP, and Firefox 2 on Win 2000 and Win
XP?

I was wondering that...
Why do you feel it is necessary to test AOL, given that it just uses IE?

I was wondering that too... :)
 
N

Nathan Sokalski

My concern is not what customers will pay for, I am just a recently
graduated student who works from home and my boss doesn't care whether I
test it in anything other than IE6. But I want to become familiar with IE7
for personal reasons as well as experience for the future. And as I said in
previous postings, it's not that I don't have a way to test on both if I set
it up (I could use Virtual PC), but I want a way to have an IE6 and IE7
window open next to each other. I don't want to use Virtual PC for testing
because Visual Studio .NET 2005, which I use for developing, takes enough
RAM as it is, so having a second copy of the operating system running would
be a lot, along with the fact that I don't think that we should have to
install a second copy of the OS just to test a browser.
 
N

Nathan Sokalski

I'm just graduated less than a month ago, when I win the lottery I will! But
even so, we shouldn't have to install a second OS just to test a browser...
 
M

Mark Rae

My concern is not what customers will pay for, I am just a recently
graduated student who works from home and my boss doesn't care whether I
test it in anything other than IE6. But I want to become familiar with IE7
for personal reasons as well as experience for the future. And as I said
in previous postings, it's not that I don't have a way to test on both if
I set it up (I could use Virtual PC), but I want a way to have an IE6 and
IE7 window open next to each other. I don't want to use Virtual PC for
testing because Visual Studio .NET 2005, which I use for developing, takes
enough RAM as it is, so having a second copy of the operating system
running would be a lot, along with the fact that I don't think that we
should have to install a second copy of the OS just to test a browser.

You can't have your cake and eat it, as the saying goes...

E.g. if all you can afford is a cheap Ford, there's really very little point
in whinging about the fact that you can't afford a Ferrari, and you can
hardly blame the people who make the roads for the fact that others get
there quicker than you do...

I appreciate the fact that you aren't a millionaire, but a computer capable
of running the apps that you want really isn't *that* expensive these days,
especially in the States... You could find the money if you *really* wanted
to...

The fact that *you* don't think that you should have to install a second
copy of the OS just to test a browser is completely irrelevant - that fact
is, in this particular case, you do...
 
C

Corey B

Mark said:
You can't have your cake and eat it, as the saying goes...

E.g. if all you can afford is a cheap Ford, there's really very little point
in whinging about the fact that you can't afford a Ferrari, and you can
hardly blame the people who make the roads for the fact that others get
there quicker than you do...

I appreciate the fact that you aren't a millionaire, but a computer capable
of running the apps that you want really isn't *that* expensive these days,
especially in the States... You could find the money if you *really* wanted
to...

The fact that *you* don't think that you should have to install a second
copy of the OS just to test a browser is completely irrelevant - that fact
is, in this particular case, you do...

Wow. To me, that reply is a perfect example of "Microsoft
brainwashing". I don't want to be a MS basher because I really like a
lot of the stuff they put out. However, we all seem to be way too
willing to swallow whatever MS says. If they say we have to install a
second copy of the OS just to test a browser - are we just supposed to
say "oh well, guess I have to". No. We complain about it and maybe
they will fix it. Or if not, we move to a different browser. Just
because they can produce a workaround doesn't mean we have to accept
it.

To use the car analogy - what if Ford made a car and the only way you
could work on the engine was to completely remove it and install it in
a second car? The general public could care less - but the mechanics
would be up in arms. And what if the answer from Ford was "tough
bananas - we provided you a workaround"? They would never get away
with that. The reason that MS does is because they have a stranglehold
on the browser market because of their desktop OS dominance.

The difficulty in this situation is that we as developers can not
ignore IE. We can encourage users to move to a different browser but
it would take quite an effort to actually supplant IE as the dominant
browser.

Corey
 
M

Mark Rae

Wow. To me, that reply is a perfect example of "Microsoft
brainwashing". I don't want to be a MS basher because I really like a
lot of the stuff they put out. However, we all seem to be way too
willing to swallow whatever MS says. If they say we have to install a
second copy of the OS just to test a browser - are we just supposed to
say "oh well, guess I have to". No. We complain about it and maybe
they will fix it. Or if not, we move to a different browser. Just
because they can produce a workaround doesn't mean we have to accept
it.

LOL! I really think you're in the wrong business or, at least, haven't had
much exposure to business software.

Not being able to run different versions of the same application on the same
operating system really is nothing new, especially if that operating system
is Windows.

Your "solution" of moving to a different browser won't get you very far
either - it's pretty much the same situation for FireFox 1.5.x and 2.0.x. Of
course, people have found ways of almost getting round this:
http://www.google.co.uk/search?sour...006-28,GGLG:en&q=firefox+1.5+2.0+side+by+side
but they amount to little more than deinstalling one version and
reinstalling the other.

Going back to the car analogy, would you have your car repaired by someone
who couldn't afford a decent set of tools to do the job properly...?
 
N

Nathan Sokalski

I would like to point out that this is NOT pretty much the same situation as
FireFox 1.5 and 2.0. The difference is that when FireFox moved from 1.5 to
2.0, it made fixes and improvements. When Internet Explorer moved from 6.0
to 7.0, it made major changes, not just small changes such as security fixes
and minor bugs. IE7 completely changed the way it renders pages, because it
now follows the W3C standards so much more closely. As happy as I am that
they are now following more standards, it doesn't change the fact that
people will still be using IE6 for a while, so we have to test in both. With
version changes such as when IE went from 5.5 to 6.0, or when FireFox went
from 1.5 to 2.0, if the rendering changed at all it was probably adding
support for something (such as CSS) or correcting a bug. When adding support
for something, it won't cause existing pages to look different. When
correcting a bug, it probably means your page didn't work correctly
beforehand anyway. If the "bug" is referring to making a feature follow the
standards correctly, they have never changed this many at the same time, and
if I remember correctly, we were able to run IE 5.5 and 6.0 side by side
anyway.

I would also like to comment on the following:
Going back to the car analogy, would you have your car repaired by someone
who couldn't afford a decent set of tools to do the job properly...?

No, I wouldn't. However, Microsoft is supposed to want people to learn and
like their software. Regardless of what universities and schools try to say,
most learning is done through experience. I don't think anyone's employer is
going to let them spend the weekend in the office practicing coding, and the
people who really need to learn this stuff are the college students and
recent graduates majoring in it. I am a graduate from Fall 2006, and work
from home. If they want this generation of developers and designers to be
good with IE7, they better give us a way to practice without forcing us to
get rid of IE6! If I could use IE7 without needing to worry about how sites
I visit for personal reasons would look, I would have gotten it the day it
was released, but they decided to put us in this situation instead.
 
M

Mark Rae

IE7 completely changed the way it renders pages, because it now follows
the W3C standards so much more closely.

That's right - IE7 is a huge leap forward and very, very different - so much
so, that it can't co-exist with any previous version of IE... Why can you
not simply accept that...?
As happy as I am that they are now following more standards, it doesn't
change the fact that people will still be using IE6 for a while, so we
have to test in both.

Dear me - you really do want it both ways, don't you...! On the one hand,
you're happy that Microsoft have taken on board the very real criticism of
previous verions of IE - namely, that they are not standards compliant - and
produced a new version which is much, much better (though by no means
perfect), yet you're whinging because they've made so many modifications and
improvements that it is now incompatible with IE6 to the extent that both
can't be installed on the same instance of Windows... Maybe they shouldn't
have bothered...? Or maybe just done a couple of bug fixes - you know, just
for your benefit...?
However, Microsoft is supposed to want people to learn and like their
software.

No doubt about that.
Regardless of what universities and schools try to say, most learning is
done through experience.

I completely agree with that.
I don't think anyone's employer is going to let them spend the weekend in
the office practicing coding,

But what does that have to do with you...? You work from home, right? Same
as me.
and the people who really need to learn this stuff are the college
students and recent graduates majoring in it.

Utter rubbish! The people who really need to learn this stuff are
developers; whether they are recent graduates or seasoned developers with
upwards of 20 years programming experience behind them is totally
irrelevent. I'm really struggling to grasp what point you're trying to make
here...
I am a graduate from Fall 2006, and work from home.

Well there you go - no need to fret about not being allowed into the office
at weekends...:)
If they want this generation of developers and designers to be good with
IE7, they better give us a way to practice without forcing us to get rid
of IE6!

They have - it's called Virtual PC. You can download it from their website -
it's in your price range... You can even download a free image of
WinXP+SP2+IE6 precisely so that developers in your situation can continue to
test on that platform:
http://www.microsoft.com/downloads/...90-958F-4B64-B5F1-73D0A413C8EF&displaylang=en

But even that isn't enough for you! What more do you want...?!!!

Neither the world in general nor Microsoft in particular owes you a living,
you know - the quicker you realise that, the sooner you'll get on...
 
G

Gary Smith

Why do you feel it is necessary to test the identical browser on
multiple O/S's, e.g. IE6 on Win 2000 and Win XP, and Firefox 2 on Win
2000 and Win XP?

IE6 on Win 2000 and IE6 on Win XP are two different programs with the same
name. They behave differently in some respects, and need to tested
separately. So far as I know, IE7 can't be installed in Win 2000.
Firefox should be independent of the Windows version, since unlike IE, it
doesn't rely heavily on operating system components.
 
M

Mark Rae

IE6 on Win 2000 and IE6 on Win XP are two different programs with the same
name.

??? Are you sure about that...?
So far as I know, IE7 can't be installed in Win 2000.

Not easily - depending on how brave you're feeling, ahem, the Registry can
be hacked etc... :)
 
P

Paul Johnson

Nathan said:
Ever since I found out that they didn't give us a way to install both IE6
and IE7 on the same machine, I have been more frustrated and annoyed with
Microsoft than I ever have been with any company (and for someone who has
loved Microsoft as much as me, that takes something pretty bad!). I am a
web developer, and only have access to one computer, which makes it hard
to test for both IE6 and IE7.

I have a hard time believing you're really a web developer given you're
testing against IE instead of a standards compliant browser and
http://validator.w3.org/. Using IE as your testbed is going to result in
webpages that only look good in IE. That shows ignorance towards the
standards that are the bread and butter of your trade.

Now if you develop with a standard browser and use the standard validator
the W3 provides, your pages will look good in all browsers, with the
occasional IE glitch if you're unlucky. This would be a better strategy
all around: The official W3 standards are there to ensure everything works
in all browsers. If you can write a webpage that passes the validator but
fails in the browser, you've found a browser bug; don't break your code to
work around someone else's bug.
 
P

Paul Johnson

Please do not quote backwards as this reduces readability.
http://wiki.ursine.ca/Best_Online_Quoting_Practices

Corey said:
So it sounds like you are saying that if you code to the standards then
there is no need to test in the different browsers? Is that realistic?

I would say so. Code to the standard, not to someone else's bugs. If some
particular browser can't hack standard code, the bug is with the browser,
not with your code. Unless you're coding something specific for some
closed userbase that you know will all be using the same environment, you
can't guarantee that they'll be visiting your site using the browsers
you've tested against.

Never break your project's code to fix a completely unrelated project's
problems: You're simply shifting the blame from the actual problem to the
users who didn't experience that problem to start with. Let unrelated
project fix it's own code.
I think we will always want to test in the different browsers. Even
with standards we could have slight variations in how those standards
are implemented - true?

True, but usually not major enough to change the content significantly,
especially if you're being smart and using ratios instead of hard values.
Now on this tangent, percentages are your friend, pixels are your enemy
when it comes to sizes; coding for a particular resolution is inheirently
flawed: You don't know what hardware, OS or window manager your visitors
are using, window elements and user preferences will often make windows
much smaller on the user-end than you think. Therefor, the only sane width
you can gaurantee is *NOT* 1024, it's not even 800. Forget 480. Try 0.
Webpages should be able to compress into a razor thin strip of a window and
still be reasonably usable, yet still be able to spread out and fill a
potentially infinitely wide window. Not everybody browses from a graphical
environment, some people browse from 15-character-wide phone screens, and
sooner or later someone's going to have a massively beautiful Apple Cinema
display with insanely small dot pitch the size of a coffee table...and want
to read a maximized web browser all the way across all five feet of it
without four feet of whitespace to the right of the content. So far, the
only two well-known websites I can think of that get the size assumption
right are Wikipedia and Slashdot.

Point of this tangent is if you even think you need a "best viewed at
X00xY00 resolution" disclaimer, you're trying to think you know better than
the user for their own needs: Don't do that!
 
L

Leythos

""cupsdell said:
Why do you feel it is necessary to test the identical browser on
multiple O/S's, e.g. IE6 on Win 2000 and Win XP, and Firefox 2 on Win
2000 and Win XP?

If you've ever tried you would know that each responds a little
differently at times - it depends on what type of applications you write
for the web. It mostly has to deal with controls, not simple web stuff.
Why do you feel it is necessary to test AOL, given that it just uses IE?

LOL - AOL is like malware, we always test with AOL since so many people
use it.

Never assume that something is the same.
 
L

Leythos

My concern is not what customers will pay for, I am just a recently
graduated student who works from home and my boss doesn't care whether I
test it in anything other than IE6. But I want to become familiar with IE7
for personal reasons as well as experience for the future. And as I said in
previous postings, it's not that I don't have a way to test on both if I set
it up (I could use Virtual PC), but I want a way to have an IE6 and IE7
window open next to each other. I don't want to use Virtual PC for testing
because Visual Studio .NET 2005, which I use for developing, takes enough
RAM as it is, so having a second copy of the operating system running would
be a lot, along with the fact that I don't think that we should have to
install a second copy of the OS just to test a browser.

Never test on the machine you also develop on - since your controls and
updates and service packs and permissions will be different than a
external user. It's always a bad idea to test on the development
machine.

The test machine should be a virgin machine, the same as just installed,
without any additional testing having been done. Make a ghost image and
restore it between tests so that you get a real expectation of what
problem may happen.
 
P

Paul Johnson

Leythos said:
In general there are two targets - the IE group and the Everyone else
group. There is no cost effective means to make all web apps work with
all browsers, customers just wont pay for that.

With the above in mind, you need to test your app with the following:

Windows 2000 / IE6
Windows 2000 / IE7
Windows 2000 / AOL
Windows 2000 / FireFox 2

Windows XP / IE6
Windows XP / IE7
Windows XP / AOL
Windows XP / FireFox 2

MAC OS/x (if you care)

Nix OS / FireFox (Fedora, Mandrake, Ubuntu...)

If you do the above, you will cover 99% of the people that visit a
public website.

A year and a half's webstats on my server indicate that that cross section
would cover more like 87-93% of users out there depending on the month.
BTW, you'll get the exact same number of users if you eliminate some of the
redundant tests: Operating system choice (especially something as trivial
as NT5.0 versus NT5.1) doesn't affect browser rendering ability (font
availability would, but the same fonts ship with NT5 and NT5.1, so even
that's moot), and MacOS qualifies as a unix. AOL is rebadged, outdated
Mozilla. I would try this list to save time with the best results...

OS / Rendering Engine

WinXP / Gecko
Unix / Gecko
Unix / KHTML
WinXP / IE6 *

KHTML is used in Konqueror and Safari, both are popular unix browsers.
Gecko is used in Mozilla and it's relatives.

(* Optional. It's designed to deliberately break the standards, a holdover
of the IE/Netscape battle of 12 years ago and just needs to die already)
 
N

Nathan Sokalski

First of all, IE6 is what most of our users use, and it is the only one that
my boss is requiring me to make it work in. Second of all, you do know the
difference between designer and developer, right? http://validator.w3.org/
tells you if it is valid code, but it doesn't tell you how to do something
if it doesn't do it already, which is usually my problem. If the error is
server-side, or the page gets data passed to it from another page, than it
can't be tested with the Validator. Also, I do make every attempt I can to
follow the standards, but I am one person, graduated for less than a month,
using a technology they didn't even offer to teach where I went to college,
at least give me a break on what browser I test in! And with ASP.NET, which
is what I develop in, much of the CSS is determined by the controls, so I
sometimes don't even know the generated HTML & CSS until I test, sometimes
it takes extra code to UNDO generated code that doesn't follow standards.
But back to your original message, if the browser DOES have a bug, I have to
work around it if I want my pages to look the way I want. The question is
how you work around it. The best way is to detect the browser and generate
slightly different code based on that (which is what most of the built-in
ASP.NET controls do, but I don't believe they are updated for IE7). But
until I have enough time (and resources!) to test in all the browsers, I
think it's best to test in the one with the largest usage.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,990
Messages
2,570,211
Members
46,796
Latest member
SteveBreed

Latest Threads

Top