Page 1 of 1
Netscape 4 - the grand old lady of web browsers
Posted: 2007-09-16 12:43am
by Darth Wong
Anyone remember Netscape 4? That old browser which revolutionized the Internet? I checked my server logs and it turns out that around 1-2% of people visiting my site still use the goddamned thing.
Is there some way to conveniently redirect those people to a page telling them to get with the fucking program? I tried installing NS4 on my machine to see how my sites would look on it, and holy shit, they're totally unreadable (except for the Empire site, which was written so long ago that it's still basically compliant with NS4 coding standards).
Posted: 2007-09-16 12:52am
by Durandal
You should be able to just parse the user agent string and grab the version of Netscape.
Posted: 2007-09-16 02:02am
by phongn
I think you can do this via SSI.
Posted: 2007-09-16 03:07am
by Pu-239
The site still should be written so it degrades gracefully in crappier browsers (and it looks like it does, looks fine in w3m). Redirects are annoying, just put a nag message or warning at the top.
Posted: 2007-09-16 03:13am
by Bounty
Those people *might* not be using Netscape 4 - aren't there web browsers that spoof N4's user agent string to avoid getting blocked from IE/FF-only sites? I think Links does something like that.
Posted: 2007-09-16 11:17am
by Braedley
If Links spoofs itself as NS4, then that's probably your answer there. I know that Psycho Smiley uses Links from time to time (although he hasn't been really active in the past couple of months).
Posted: 2007-09-16 11:57am
by General Zod
Wouldn't a simple button or icon at the top of the page that says "best viewed in Firefox" or the like do the trick? You see them on other websites all the time.
Posted: 2007-09-16 07:32pm
by Darth Raptor
The computers at a (woefully underfunded) public library near here still use Netscape. Frankly, it's a wonder it has computers at all. I'll bet they were donated.
Posted: 2007-09-16 08:27pm
by RThurmont
IMO, programming a website to lock out users of certain browsers arbitrarily is against the UNIX way as it were...(which I'd assume you're a fan of given your enthusiastic advocacy of Linux). I am of the opinion that users should be allowed to make up their own darn minds about what software to use to connect to the website... In the classic UNIX tradition as articulated by Eric Raymond et al, programs should be designed with the idea that the user might well wish them interact with other programs in unexpected ways.
One could also make the aesthetic argument that all websites should follow the UNIX tradition, in that the Web was essentially developed as UNIX software, following UNIX traditions throughout. Adopting the Windows/Crapintosh approach of assuming that the developer knows best, and locking users into a narrow set of allowed browsers, applications, et cetera, is contrary to this (and for the ultimate extreme nightmare instance of that, look at South Korea, where, according to one article I read about a year ago, use of Internet Explorer 6 was required by law in order to access banking or government websites due to extensive use of ActiveX controls).
Posted: 2007-09-16 08:52pm
by Durandal
The "Unix way" is about standardization. Netscape 4 is hardly fully compliant with HTML 4, CSS, JavaScript or any number of other web standards out there. Its use should be actively discouraged, as should the use of Internet Explorer 6.
Posted: 2007-09-16 09:31pm
by RThurmont
The "Unix way" is about standardization.
Wrong. The UNIX way is much more about transparency, orthogonality, modularity and interoperability than about standardization...in other words, designing around the assumption of a lack of standardization. Standardization is the Windows or Apple approach, where you have one application associated with a specific file type, and only that standard application can open files of that type...which is fundamentally akin to locking users of a certain browser out of a website.
There are some cases where deprecated browsers are the only option for users, for example, in cases where people are using obsolete hardware that can't run a newer operating system with newer browsers.
Netscape 4 is hardly fully compliant with HTML 4, CSS, JavaScript or any number of other web standards out there. Its use should be actively discouraged, as should the use of Internet Explorer 6.
So, actively discourage it with a notice, rather than locking users of said browsers out. Again, you're coming from the typical, arrogant Apple perspective of "the developer knows best," something that is rejected in the classical UNIX tradition, and something I'd argue should be rejected by competent web developers by extension. If the user gets pwned as a result of bad decisions they make (for example, rm -rfing their / directory), that isn't your problem.
Posted: 2007-09-17 01:16am
by Ariphaos
You could just build a regular expression and stick it as a RewriteCond in your .htaccess. You need to be careful to avoid blocking browsers you're not targeting because everything and its mother reports "Mozilla/4.x (compatible ...)
Running through a list of them works too
RewriteCond %{HTTP_user_agent} ^Mozilla/4\.[0-9]+(\ [en])?\ \(WinNT
RewriteCond %{HTTP_user_agent} (Next string to redirect)
RewriteRule ^.*$ GetARealBrowser.html [L]
...and so on
Posted: 2007-09-17 01:21am
by Durandal
RThurmont wrote:Wrong. The UNIX way is much more about transparency,
It is not a requirement of the POSIX standard that a Unix's source code be available for viewing.
orthogonality,
Do you even know what that means?
modularity
All of software engineering is about modularity. Again, do you even know what that means?
and interoperability
Interoperability is the goal of standardization.
Congratulations on listing off a bunch of words that you obviously didn't know the meaning of.
than about standardization...in other words, designing around the assumption of a lack of standardization.
Then why is there a
POSIX standard that defines programming interfaces for Unix operating system variants? Are you just talking out of your ass, or did you read some of
Standardization is the Windows or Apple approach, where you have one application associated with a specific file type, and only that standard application can open files of that type...which is fundamentally akin to locking users of a certain browser out of a website.
Wow. So you just kind of assume that, because I use a word, it must be associated with Apple somehow?
Oh yeah, and you're completely off base as to what standardization is. You obviously have no clue what you're talking about.
There are some cases where deprecated browsers are the only option for users, for example, in cases where people are using obsolete hardware that can't run a newer operating system with newer browsers.
When something is deprecated, you can't rely on it working. That's why real software engineers use the term anyway. As to what it means to armchair developers like you who type "./configure" at a command line a few times and fancy themselves as engineers, I can't say.
So, actively discourage it with a notice, rather than locking users of said browsers out. Again, you're coming from the typical, arrogant Apple perspective of "the developer knows best," something that is rejected in the classical UNIX tradition,
I don't know why you're so desperate to turn every exchange with me into an excuse to bash my employer, but it's starting to get really old. So why don't you focus on the topic of debate rather than taking every opportunity to stroke your hard-on for Apple-bashing whenever I say something in this forum?
and something I'd argue should be rejected by competent web developers by extension. If the user gets pwned as a result of bad decisions they make (for example, rm -rfing their / directory), that isn't your problem.
No, it's something that should be
embraced by web developers? Would you like to know why? Because of the Netscape/Microsoft browser wars back in the mid-1990's, we got stuck with a hodgepodge of semi-interoperable web technologies that no browser quite implemented the same. We're just
now starting to get out of that mess now that mainstream browsers have implemented HTML, CSS1 and JavaScript in some sort of consistent manner. Safari, Firefox and Opera all have more or less consistent implementations of each, and Firefox will run on plenty of older hardware.
Older, non-compliant browsers need to be phased out. Their existence and continued usage basically retards the progress of the world-wide web toward actual standards. The perpetuation of fragmented browser implementations lets proprietary plug-ins (like, say, Flash), which run on all browsers and provide a consistent and predictable experience, gain traction. And that means vendor lock-in.
Talk to any web developer, and they'll tell you the same thing.
Posted: 2007-09-17 01:29am
by Darth Wong
I have no interest in making my site look nice on Netscape 4. However, it would be nice if it doesn't fall apart completely, in case somebody is still using it. Netscape 4 has quite brutal failure modes with certain kind of standards-compliant code: for example, the following tag will cause Netscape 4 to fail and refuse to display the entire container (ie- if this is found in a div, the entire div goes blank):
Code: Select all
<img src="picture.jpg" style="width:400px;height:300px;border:none;float:right" alt="picture" />
It would be one thing if it simply displayed the image incorrectly, but it's rather annoying when the whole div goes blank because of something it doesn't like in one image tag.
As for the argument between Durandal and RThurmont, I'll just say this: one of the greatest triumphs of UNIX was the samba project, which was an attempt to implement network interoperability with a poorly documented shitty Microsoft network file transfer protocol. You can't exactly say that this was an example of forcing people to adopt well-crafted standards. It was an example of working with a shitty existing standard and finding a way to make UNIX work with it.
Posted: 2007-09-17 02:11am
by RThurmont
It is not a requirement of the POSIX standard that a Unix's source code be available for viewing.
Transparency has zilch to do with whether or not code is open source.
Do you even know what that means?
Yes.
Then why is there a POSIX standard that defines programming interfaces for Unix operating system variants?
I view POSIX as a retrospective attempt to take the UNIX system and turn it into a standard. As UNIX became more popular, the idea of creating a standard specification for its APIs became appealing, hence POSIX.
No, it's something that should be embraced by web developers? Would you like to know why? Because of the Netscape/Microsoft browser wars back in the mid-1990's, we got stuck with a hodgepodge of semi-interoperable web technologies that no browser quite implemented the same. We're just now starting to get out of that mess now that mainstream browsers have implemented HTML, CSS1 and JavaScript in some sort of consistent manner. Safari, Firefox and Opera all have more or less consistent implementations of each, and Firefox will run on plenty of older hardware.
Older, non-compliant browsers need to be phased out. Their existence and continued usage basically retards the progress of the world-wide web toward actual standards. The perpetuation of fragmented browser implementations lets proprietary plug-ins (like, say, Flash), which run on all browsers and provide a consistent and predictable experience, gain traction. And that means vendor lock-in.
The problem with your argument is that there are many cases where Firefox, Safari and Opera are simply unavailible. Mobile devices, people who need to access a website from the command line, or users of operating systems such as Plan 9 are good case studies of that. I am all for advocating that browsers such as Internet Explorer 6 (and 7 for that matter) be phased out, but I'm absolutely opposed to the idea of
preventing someone from accessing a web page given their browser version.
As for the argument between Durandal and RThurmont, I'll just say this: one of the greatest triumphs of UNIX was the samba project, which was an attempt to implement network interoperability with a poorly documented shitty Microsoft network file transfer protocol. You can't exactly say that this was an example of forcing people to adopt well-crafted standards. It was an example of working with a shitty existing standard and finding a way to make UNIX work with it.
Actually there's a fairly interesting paper by Jeremy Allison on that subject, in Open Sources 2.0, entitled
"A Tale of Two Standards." Samba, much like WINE, is interesting, in that it attempts to be a UNIX reimplementation of Microsoft technology designed with a vastly different set of priorities in mind.
Posted: 2007-09-17 03:53am
by Durandal
RThurmont wrote:Transparency has zilch to do with whether or not code is open source.
Then in what sense did you use the word?
Yes.
And what does it mean?
I view POSIX as a retrospective attempt to take the UNIX system and turn it into a standard. As UNIX became more popular, the idea of creating a standard specification for its APIs became appealing, hence POSIX.
The POSIX standard was created for all the various Unices to adhere to so that they could be source-compatible with each other. POSIX is not simply what the first Unix looked like. It was to bring all the various Unices together under one roof.
The problem with your argument is that there are many cases where Firefox, Safari and Opera are simply unavailible. Mobile devices, people who need to access a website from the command line, or users of operating systems such as Plan 9 are good case studies of that. I am all for advocating that browsers such as Internet Explorer 6 (and 7 for that matter) be phased out, but I'm absolutely opposed to the idea of preventing someone from accessing a web page given their browser version.
Lynx supports standards fairly well. And mobile devices, unless they're smart phones, generally require their own special WAP pages anyway. (And the smart phones generally have fully-fledged browsers themselves.) Furthermore, Netscape 4 isn't even available for mobile devices, so I don't see how it's relevant.
And Plan 9? Come on. It was a research project.
Bottom line, it's up to the web site admin. If he wants to display a full-page Firefox ad to users who come in using Nutscrape 4, that's his business. I won't lose any sleep over admins who do that. It's when they write bad CSS for IE or require ActiveX controls that it becomes detrimental. Secretly, just about every web developer I've talked to wishes they could get away with denying IE users entry to their sites. They can't, but Mike can probably get away with denying Netscape 4 users entry to his.
Re: Netscape 4 - the grand old lady of web browsers
Posted: 2007-09-17 08:22am
by Eleas
There's a difference between locking Netscape 4 users out and encouraging people to use it. If you use clean (X)HTML and put all the fancy stuff in the CSS, you could, as Pu-239 suggests, allow the page to gracefully degrade in Netscape.
You can essentially leave users of undesirable browsers the same content on a simple text page with a bulleted menu. If you want to be brutal, use the tricks mentioned in this thread to entirely disallow the loading of the CSS if the browser is crap; that's easily done in any server-side language.
Posted: 2007-09-17 09:25am
by Darth Wong
Unfortunately, that idea means I have to go through the entire site and get rid of style instructions embedded in the HTML tags, like the example above. That's the cost of putting all the CSS into the stylesheets so that you can disable CSS for certain browsers.
Posted: 2007-09-17 09:39am
by Eleas
Darth Wong wrote:Unfortunately, that idea means I have to go through the entire site and get rid of style instructions embedded in the HTML tags, like the example above. That's the cost of putting all the CSS into the stylesheets so that you can disable CSS for certain browsers.
Unfortunately, yeah. On the other hand, if you have the time to spare, it may be useful to do that anyway. The practice of embedded CSS is AFAIK deprecated, and once the visual presentation is done (the CSS) the reader will ideally only have to download it once, unlike a HTML page that (hopefully) will be constantly updated. It's not a huge problem with such a comparatively small page, but the larger the page, the greater the effect.
Anyway, there's something to be said for utility. Go with what works, but keep future expansion in mind. My principal website is no longer updated because of its sheer unwieldliness of code, something that might have been prevented had I put some more thought into its construction to begin with.
Posted: 2007-09-17 09:43am
by Darth Wong
Eleas wrote:Darth Wong wrote:Unfortunately, that idea means I have to go through the entire site and get rid of style instructions embedded in the HTML tags, like the example above. That's the cost of putting all the CSS into the stylesheets so that you can disable CSS for certain browsers.
Unfortunately, yeah. On the other hand, if you have the time to spare, it may be useful to do that anyway. The practice of embedded CSS is AFAIK deprecated, and once the visual presentation is done (the CSS) the reader will ideally only have to download it once, unlike a HTML page that (hopefully) will be constantly updated. It's not a huge problem with such a comparatively small page, but the larger the page, the greater the effect.
I've never heard anything about deprecating the STYLE attribute on HTML tags. It's quite permissible even in the latest iterations of the most strict standards.
Anyway, there's something to be said for utility. Go with what works, but keep future expansion in mind. My principal website is no longer updated because of its sheer unwieldliness of code, something that might have been prevented had I put some more thought into its construction to begin with.
My site is based upon RewriteRule and a single index.php file which ensures a constant appearance across the entire site (the file "Updates.xhtml" silently redirects to "index.php?page=Updates"), so it's very easy to change things like overall appearance and container code, but the contents of the "content" div are loaded in from text files. Getting rid of all STYLE attributes in every text file would be a chore.
Posted: 2007-09-17 09:56am
by Eleas
Darth Wong wrote:
I've never heard anything about deprecating the STYLE attribute on HTML tags. It's quite permissible even in the latest iterations of the most strict standards.
Ah, my mistake. I know that there have been discussions about deprecating it, since it detracts from the functional purpose of CSS (a unified style across the entire document, separation of style and context, the usual buzzwords).
My site is based upon RewriteRule and a single index.php file which ensures a constant appearance across the entire site (the file "Updates.xhtml" silently redirects to "index.php?page=Updates"), so it's very easy to change things like overall appearance and container code, but the contents of the "content" div are loaded in from text files. Getting rid of all STYLE attributes in every text file would be a chore.
You have xhtml code in the database, or just the raw text? Anyway, it
sounds like the workload won't balloon as the site grows larger, so you're probably in the clear. My solution is probably too cumbersome in this instance.
Posted: 2007-09-18 01:29pm
by Sarevok
Speaking of old or unusual browsers this site works beautifully even on an ancient Siemens C65 mobile phone running Opera mini. It takes a while to load compared to Nokia N-series phones but it's fully functional. With images turned off most pages average at 8 kb so it's cheap too.
So yeah if someone is bored and somewhere not without a laptop they can post here from their phones.