Discussion Topic

J

Jorge

"If a web browser is defective, causing errors in the display or
performance of the page, should the page developer struggle to hide
the browser's defects, or should the defects be revealed in hope of
creating market pressure to force the browser maker to make good? By
which approach is humanity better served?"

(From Crockford's www site)

What do you think ?
 
R

Richard Cornford

"If a web browser is defective, causing errors in the display
or performance of the page, should the page developer struggle
to hide the browser's defects, or should the defects be
revealed in hope of creating market pressure to force the
browser maker to make good? By which approach is humanity
better served?"

(From Crockford's www site)

What do you think ?

Professional web developers don't work for humanity. They work for
clients and/or employers, and it is their best interests that are
supposed to be served.
 
J

Jorge

(...)
Professional web developers don't work for humanity. They work for
clients and/or employers, and it is their best interests that are
supposed to be served.

Yep, most employers and many clients aren't human, or at least behave
as if they weren't... still, developing walk-arounds for IE's bugs
tends to make the whole thing quite more expensive, and that's against
martian's best interests... :)
 
M

Matthias Reuter

Jorge said:
"If a web browser is defective, causing errors in the display or
performance of the page, should the page developer struggle to hide
the browser's defects, or should the defects be revealed in hope of
creating market pressure to force the browser maker to make good? By
which approach is humanity better served?"

(From Crockford's www site)

What do you think ?

Idealistic approach: When I build a page that is in accordance with all
the many standards, then it's the browser's fault if things don't work.
I'll wait until they fix it.

Realistic approach: If my page does not work in a customer's browser, he
will blame me, not the browser. If there's a chance I might lose a
customer, I will have to write a workaround.

Matt
 
R

Richard Cornford

Yep, most employers and many clients aren't human, or at
least behave as if they weren't...

Even the totality of all living humans doesn't qualify as "humanity".
still, developing walk-arounds for IE's bugs tends to
make the whole thing quite more expensive, and that's against
martian's best interests... :)

Development/maintenance costs are a factor in deciding what
constitutes the employer's/client's "best interests". There is not
point doing extra work in order that a client be in a position to take
money off an extra 20% of potential customers if cost of doing that
would bankrupt that client, but that is a commercial consideration
that has nothing to do with 'serving humanity'.

Richard.
 
J

Jorge

(...)
Professional web developers don't work for humanity. They work for
clients and/or employers, and it is their best interests that are
supposed to be served.

Yep, most employers and many clients aren't human, or at least behave
as if they weren't... still, developing workarounds for IE's bugs
tends to make the whole thing quite more expensive, and that's against
martian's best interests... :)
 
T

Thomas 'PointedEars' Lahn

Richard said:
Professional web developers don't work for humanity. They work for
clients and/or employers, and it is their best interests that are
supposed to be served.

(There must be a bug in the matrix ... didn't we have this discussion already?)

I agree. There has been a day about two years ago when we had to support IE
5.0 for Mac, too, because a rather important customer demanded it. We told
them this version was not even supported by the vendor anymore, that they
had plenty of alternatives including Safari and Firefox, but they insisted.
So we hacked the stylesheet together in about 5 hours.

However, it is not necessary to accomodate all the whims of those who you
work for. It is possible to tell a customer that their software is
erroneous and outdated, if there is a realistic chance for them to update,
without losing the customer. It is also possible to tell a superior that
you think it is a bad idea to support borken software because the short-term
expenses for a workaround would outweigh the mid-term profits. It is,
however, also possible to tell them the opposite case. It depends, in
particular it depends on the feature, the browser version, and the customer.

For example, the ECMAScript Support Matrix features a scrollable `tbody'
element. Few browsers support that; last I checked, only Gecko-based UAs
do. There was, however, a short time where Firefox 3.0.x did support that
feature but supported it wrong. Because it was/is a private Web site and I
have no customers there (only visitors), I decided that it would be a good
idea not to work around the regression (it worked fine in Firefox 2.x) and
to point it out explicitly. And when the time came that the bug had been
fixed, I started urging visitors to update their browser. In contrast, I
would never have done that on a commercial Web site developed for a
customer; instead, I would simply not have used that feature.


HTH

PointedEars
 
G

Garrett Smith

Thomas said:
Forces.


(There must be a bug in the matrix ... didn't we have this discussion already?)

I agree. There has been a day about two years ago when we had to support IE
5.0 for Mac, too, because a rather important customer demanded it. We told
them this version was not even supported by the vendor anymore, that they
had plenty of alternatives including Safari and Firefox, but they insisted.
So we hacked the stylesheet together in about 5 hours.

However, it is not necessary to accomodate all the whims of those who you
work for. It is possible to tell a customer that their software is
erroneous and outdated, if there is a realistic chance for them to update,
without losing the customer. It is also possible to tell a superior that
you think it is a bad idea to support borken software because the short-term
expenses for a workaround would outweigh the mid-term profits. It is,
however, also possible to tell them the opposite case. It depends, in
particular it depends on the feature, the browser version, and the customer.

Best interest may likely include omitting feature requests and avoiding
problems that the customer requested.

In some business models, the "customer" is marketing or business people
who will request such things as "pop up windows", partner logos, long
feature lists, or even more severe ui design mistakes. Other times,
there are business analysts who take requirements from corporate
customers and relay those to the engineering team e.g. "our client wants
X". I've seen both.

See also "Redesigning the Stop sign":

See also "We will not ship shit."
http://www.artima.com/weblogs/viewpost.jsp?thread=7588

I have found the following books useful:
1) Agile Software Development, by Robert Martin
2) Domain Driven Design, by Eric Evans

Garrett
 
J

JR

"If a web browser is defective, causing errors in the display or
performance of the page, should the page developer struggle to hide
the browser's defects, or should the defects be revealed in hope of
creating market pressure to force the browser maker to make good? By
which approach is humanity better served?"

While fooling around with jQuery's fadeIn and fadeOut methods, I found
out that IE 7 has a bug with its ClearType feature after fading 'in' a
text node. Even after the element's opacity was set to 100 (IE 7), the
ClearType feature didn't seem to render correctly. In this case,
jQuery reveals a specific bug of the ClearType feature. The solution
here is removing the filter attribute, e.g. if (elem.filters)
{ elem.style.removeAttribute('filter'); }

Would it be fair to consider jQuery guilty for a bug in IE 7? I can
already imagine the detractors of jQuery laughing... Ok, it's just an
example and, personally, I don't like to use jQuery too; I prefer to
write my own code. Anyway, I don't think this is a case where jQuery
is trying to "create market pressure to force the browser maker to
make good".

In the other hand, some browsers versions try to "help" developers by
means of disregarding incorrect assignments to elements' attributes.
This is worrying because new bugs are prone to happen in future
versions and developers shouldn’t bear the burden of the uncertainty.

As the majority of Internet users - including the people who hired you
for a job - don't understand a thing about JavaScript, I think they
will likely blame you for any bug / problem that might appear on their
screens. Therefore, I prefer to comply with the principle of prudence
and try to circumvent any browser bug that I come across.

Cheers,
Joao Rodrigues
 
J

Jorge

(...)
As the majority of Internet users - including the people who hired you
for a job - don't understand a thing about JavaScript, I think they
will likely blame you for any bug / problem that might appear on their
screens. (...)

I think that that was the right answer five years ago, when more than
90% of the users were browsing with IEs, you had then no other choice,
because the (true) standards were in disagreement with the de-facto
standards: you had to code for IE.

Nowadays, it can be easily shown, proven and explained that a certain
bug/problem (99% of the times) is not your fault, as it's coded in
agreement with the (true) standards, and it's working fine in 4 out of
the 5 mainstream browsers (usually ok in Safari, Chrome, FF and Opera,
but not in IE).

As IEs still have (depends upon who you ask) 30-50% of marketshare,
another way to ask the same question would be: is it now time to start
trying to push the users in the right direction (that is, towards the
use of standard-compliant browsers), and, at the same time, to push M$
towards fixing IEs (or risk loosing even more marketshare) ?
 
M

Michael J. Ryan

As IEs still have (depends upon who you ask) 30-50% of marketshare,
another way to ask the same question would be: is it now time to start
trying to push the users in the right direction (that is, towards the
use of standard-compliant browsers), and, at the same time, to push M$
towards fixing IEs (or risk loosing even more marketshare) ?

It's still around 65% iirc, however, IE& I especially 8 are far better in
compliant rendering... IE6 is below 30% now. Also, IIRC, IE9 will be using a
different rendering engine, and no ActiveX (other than the MS Scripting engine
itself, for JS, though that may change too).

The problem is most of the holdouts are in corporate environments with
existing apps that require ie6. Also wheremost dev work actually happens.
 
J

Jorge

(...)
The problem is most of the holdouts are in corporate environments with
existing apps that require ie6.  Also wheremost dev work actually happens.
(...)

Yep, but ISTM that there's another *big* problem: that people perceive
that IE is the best as it works everywhere most of the times: little
do they suspect the truth of the why behind that mirage.
 

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,764
Messages
2,569,567
Members
45,041
Latest member
RomeoFarnh

Latest Threads

Top