JavaScript versus Older Browsers

T

TJ

Hello All,

I posted a question a few days ago entitled "Select element with no
This is just an example, it is not really suitable for the web since
without JavaScript it doesn't work at all and whilst I've stuck to
standards, it will be intolerant of some (particularly older) browsers
- but it is a bit of fun trying to do some of this stuff and create
dynamic pages. This sort of stuff is best suited to intranet or
special interest groups anyway.

which is a sentiment that I have seen echoed elsewhere in this
newsgroup.

My question is, what is the point of developing a dynamic scripting
language if you just have to turn around and say, "I can't use this
in a real world application, because not everybody knows about
it." Isn't that a little counter productive? Is there anything
wrong asking users to keep up with the technology of today. I understand
some amount of tolerance for older systems (personally I refuse to upgrade
my other box beyond Windows 98(tm)), but it seems like the general feeling
is that you can't use JavaScript at all (at least only JavaScript).

Is it still too much to assume that a browser understands JavaScript and
is there anything wrong with saying to a user "If you want to view my
content, you need to have this capability"? I mean, if I got nickel
everytime got the "You need to install Flash" popup I'd be a rich man.
(The Macromedia plugin for Linux is not terribly good).

Anyway, sorry to ramble. Just some thoughts.

Sincerely,
TJ Walls
Ph.D. Candidate - Physics Dept. Stony Book University
 
K

kaeli

My question is, what is the point of developing a dynamic scripting
language if you just have to turn around and say, "I can't use this
in a real world application, because not everybody knows about
it." Isn't that a little counter productive? Is there anything
wrong asking users to keep up with the technology of today. I understand
some amount of tolerance for older systems (personally I refuse to upgrade
my other box beyond Windows 98(tm)), but it seems like the general feeling
is that you can't use JavaScript at all (at least only JavaScript).

Is it still too much to assume that a browser understands JavaScript and
is there anything wrong with saying to a user "If you want to view my
content, you need to have this capability"? I mean, if I got nickel
everytime got the "You need to install Flash" popup I'd be a rich man.
(The Macromedia plugin for Linux is not terribly good).

My 2 cents...

It depends on what you're doing.
If you have a site that is all about movie clips and the like, you assume
your users will have a media player or they just can't use it. So sorry.
If you have a personal site, you do whatever you want. People who can't use
it just won't.
If you have an intranet site, you can totally control things, usually, so you
know what browsers you have to support. (like me - I can just say no to
netscape 4 support now).
If you have a commercial site, you have to satisfy as many people as possible
if you want to make money. In some places (i.e. the UK), your site MUST BY
LAW be able to be used by people with disabilities. So, you're limited there.
If you have a product support site (or CD), you can say you only support
certain browsers and everyone else has to call you or upgrade or whatever.

The vast majority of people have newer browsers. You need to worry about old
browsers for things like internet cafes, schools, and other countries where
they may be farther behind us technologically. If you're not worried about
supporting those people, you're probably fine not supporting old browsers.
But beware that you WILL piss some people off. You have to decide if you
care. *LOL* You can't please all the people all the time. If 90% of your
users want a feature that 10% will need to upgrade to use, more than likely,
you'll implement it. Just the way of the world.

The general view in this group tends to be that the site should function
without script. Script should enhance the experience - not BE the experience.
This group also tends to focus on the WWW, not intranet, so opinions tend to
be based there. Like many Usenet groups, there are far more purists here than
in the world in general. Go over to one of the comp.www groups and talk about
leaving out alt tags and they flame you death. ;)

All product vendors eventually stop supporting older products. I myself am no
different. Eventually, obsolete crap isn't supported.

My 2 cents.

--
--
~kaeli~
It was recently discovered that research causes cancer in
rats.
http://www.ipwebdesign.net/wildAtHeart
http://www.ipwebdesign.net/kaelisSpace
 
L

Lasse Reichstein Nielsen

TJ said:
My question is, what is the point of developing a dynamic scripting
language if you just have to turn around and say, "I can't use this
in a real world application, because not everybody knows about
it."

That's not what people are saying. They are saying that you should
use it, but should also prepare for the cases where it fails.
In those cases the page should degrade gracefully.
Isn't that a little counter productive? Is there anything
wrong asking users to keep up with the technology of today.

There is nothing wrong with asking. It is, however, impossible
to enforce. If it is important to you that everybody can see your
page, then you should also plan for the minorities.

People browsing with Javascript disabled has fluctuated in the
statistics in recent months. Thecounter.com reports around 9% now.

I understand some amount of tolerance for older systems (personally
I refuse to upgrade my other box beyond Windows 98(tm)), but it
seems like the general feeling is that you can't use JavaScript at
all (at least only JavaScript).

Exactly, you can't use *only* Javascript for anything important, if
your page must be accessible to everybody. Using HTML enhanced with
Javascript gives you fancy features, but with a fallback to simple,
but functional, basic operations.

If your navigation is only Javascript, then entire parts of your site
is inaccessible to 9% of your potential visitors.
Is it still too much to assume that a browser understands
JavaScript and is there anything wrong with saying to a user "If you
want to view my content, you need to have this capability"?

Nothing wrong, as long as you can accept that 9% of them says
"ok, bye!".

As an internet business, would you want to turn 9% of your customers
away at the door (with an expected 9% lower income as result)?

As a non-business, what is your message? If it is important to you,
would you prevent 9% of the potential listeners from hearing it?

9% is a lot. It might be a little more or a little less, but it's
still an awful lot of people.
I mean, if I got nickel everytime got the "You need to install
Flash" popup I'd be a rich man. (The Macromedia plugin for Linux is
not terribly good).

And you failed to see those pages. Are the creators of those pages
happy about that? Maybe. That's for them to decide. As long as it
is an informed opinion, and not inability to imagine that someone
doesn't do Flash :)

/L
 
M

Michael Winter

[snip]
My question is, what is the point of developing a dynamic scripting
language if you just have to turn around and say, "I can't use this in a
real world application, because not everybody knows about it." Isn't
that a little counter productive?

To an extent, that statement is true, but not totally so. It is a simple
matter of fact that the technologies used in Web development aren't as
reliable you might find in other software development fields. The set of
user agents currently consists of everything from the most recent builds
of conformant browsers like Opera and Mozilla, to the thoroughly out-dated
NN4. To use features such the DOM with no regard to this situation is
reckless, no question. However, that doesn't totally eliminate such
features.

With the aid of a server-side process, it is possible to perform the
majority of "functional" operations that many client-side scripts
currently handle. It may create more traffic and take more server
processor time, but it's possible. What the server cannot do, of course,
is provide the presentational effects that scripts provide, but this is
the key point. The lack of presentational features is unlikely to break a
site. It will reduce how attractive that site is, but it will be usable.

The aim of any project should be a system that is usable by *anyone*. Of
course, there will be exceptions with certain specialist groups, but for
the most part this won't be an issue. At the ideal, the only things you
should rely upon are HTML support and your server. Anything else you add
is optional, and only enhances the user's experience. In fact, images,
CSS, scripting, and plug-in support has been, and was always intended to
be, optional. The applicable phrase is "graceful degradation". It also
extends further into scripting. Any given user agent will either:

1) Be unable to execute any script of any sort,
2) Be able to execute certain parts of a script, or
3) Be able to execute everything you ask of it.

The second point is the principle under which feature detection operates:
determine what the browser supports and run accordingly. Where support is
available, your script will execute, and where support is not available,
it won't.
Is there anything wrong asking users to keep up with the technology of
today.

There is nothing wrong with asking, and there is a certain (low) level
that you should expect, but you can't demand that a user stays
cutting-edge. It's unreasonable and, in some cases, completely
unattainable. For example, the facilities of some third-party may be the
only way in which the user can access your services and it won't be
possible for the user to change what that third-party provides.

With demanding software, like video games, you can demand a certain level
of sophistication, but that's because the user doesn't need the game.
I understand some amount of tolerance for older systems (personally I
refuse to upgrade my other box beyond Windows 98(tm)),

For the longest time, it was *impossible* for me to upgrade beyond Win98
SE. Though my hardware wasn't that old (only a few years), it was just
incompatible with later versions of Windows. This was a pain, to say the
least, because Microsoft didn't allow Visual Studio .NET to be compatible
with '98 (for whatever reason).

Had this solution been applicable to recent browsers, would it be right
for anyone to demand that I replace my hardware just to use their web site?
but it seems like the general feeling is that you can't use JavaScript
at all (at least only JavaScript).

Hopefully, you don't quite believe that now. Just realise there are limits
to its use.
Is it still too much to assume that a browser understands JavaScript

Yes and it *always* will be unless, for some reason, you can deliberately
exclude parts of the population.
and is there anything wrong with saying to a user "If you want to view
my content, you need to have this capability"?

It's your site, and you can do what you want, but you will be excluding
some. In some territories, that's illegal. You also have to ask yourself:
will the client really be happy with the loss of potential income for no
reason other than a particular developer's decision.

[snip]
Anyway, sorry to ramble. Just some thoughts.

Usenet is all about discussion...

Mike


In case you can't tell, I'm one of those purists kaeli's referring to. :D
 
R

RobG

TJ wrote:
[snip]
Anyway, sorry to ramble. Just some thoughts.

Hey, it was a good question and you got some great answers.

Part of the reason you see caveats posted with monotonous regularity
is that this is a text forum, so the only way we can ensure the message
is passed on is by repeating it (perhaps /ad nausium/). People try not
to assume knowledge because we get none of the normal face-to-face
feedback, we can't tell if a suggestion is well received with a knowing
smile or cops a blank stare.

So the constant use of defensive "but be aware of..." statements comes
across as somewhat patronising, but that's not what is intended.

Once people get to know you, they are more tolerant - human nature I
guess.

Rob.
 
R

Richard Cornford

TJ wrote:
which is a sentiment that I have seen echoed elsewhere
in this newsgroup.

One of the fundamental characteristics of Internet javascript authoring
is that code is written without any certainty about the environment that
it will encounter on the client. Almost no other software authoring
context has this characteristic, and while the authors of 'proper'
languages often deprecate javascript as a toy language, they are rarely
capable of coping with the issues resulting form having to write for an
unknown environment (and many of individuals who want to write
javascript are not programmers at all). Indeed, the issue is so unique
to Internet browser scripting that it is often necessary point out that
it exists in the first place, else it might never be considered in
script design.
My question is, what is the point of developing a dynamic
scripting language if you just have to turn around and say,
"I can't use this in a real world application, because not
everybody knows about it." Isn't that a little counter
productive?

Nobody is saying that scripting cannot be used in the real world. What
is being said is that there is a fundamental reliability issue that
results from the unknown nature of the execution environment, and that
issue has to be tacked at the script design stage.

It would be counter-productive to encourage individuals to disregard
that issue when creating scripts for the Internet, because that would
result in scripts that may act against the viability of the web sites on
which they are used. Making the general reputation of javascript worse
than it already is.
Is there anything wrong asking users to keep up with the
technology of today.

You can ask, but will the user understand what your are telling them, or
be able (or willing) to do anything about it even if they do? Better to
put the work into adapting to the conditions and preferences of the
user, which should keep everyone happy.
I understand some amount of tolerance
for older systems (personally I refuse to upgrade my other
box beyond Windows 98(tm)), but it seems like the general
feeling is that you can't use JavaScript at all (at least
only JavaScript).
Is it still too much to assume that a browser understands
JavaScript

Yes. There are no javascript capable browsers on which it cannot be
switched off. And users have every right to configure their browser in
any way they feel like.
and is there anything wrong with saying to a user "If you
want to view my content, you need to have this capability"?

When the dependency is needless (follows from inappropriate script
design, poor implementation and/or developer ignorance) rather than
being fundamental, then is it reasonable to be making demands of the
user?
I mean, if I got nickel everytime got the "You need to install
Flash" popup I'd be a rich man. (The Macromedia plugin for Linux
is not terribly good).

On an e-commerce web site the reality might be that someone lost a 20%
mark-up on an average order each time their site popped that up. There
is a very obvious financial consequence of introducing needless
dependencies/restriction of any sort in a commercial context.
Anyway, sorry to ramble. Just some thoughts.

With appropriate script design you can have your javascript/DHTML cake
and eat it too. Consider:-

<URL: http://www.litotes.demon.co.uk/js_info/pop_ups.html >

- The first link on the page re-loads it with the script disabled,
giving the presentation that a javascript disabled/incapable client
would get, yet the script itself is fairly extreme in what it does when
it encounters a supportive environment (try the other links). It is not
a matter of abandoning scripting, but instead designing Internet browser
scripts for clean degradation, so the resulting pages are still viable
without it.

Richard.
 

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,768
Messages
2,569,574
Members
45,048
Latest member
verona

Latest Threads

Top