Why web standards can cripple the web

Yeah, what deathshadow60 said :tup:

This read has been very entertaining :D. Yes, it’s valid to say “USERS visit websites for the CONTENT” however I don’t think it’s the only “major” reason either. AJAX, Flash, and other gui libraries are there to make it the UI more user friendly. You’re definitely naive to say flash is flashtard, AJAX is causing more harm than good. Regardless, very entertaining read :D.

sg707: making things more friendly for some is the problem not in and of itself, but because it’s always deployed by developers who do it in a way that makes things harder or impossible to use for the others.

All I will say is Facebook on Konqueror Desktop browser and I can rest my case. What a terrible way to build something whose BASIC functionality doesn’t need all that stuff that now is the ONLY way it works. And I’m not talking about the back end, I don’t know a server back end from my own. But they don’t even have real hyperlinks on that site anymore. JS library love, all of it.

However, people are starting to go for the application itself more than the content. People are going to Do Things instead of Read Things. HTML was designed, wholly and completely, for sharing documents. It was never going to Do Stuff. Well, now people want it to Do Stuff. They want it to act like their Desktop (hell, replace their desktop), they want it to keep track of their days, play with their photos, do their banking, wash their windows.
The want the web to control their flying cars and robot maids from some small trendy silver iWhatever. They want it to remove their cavities, and Painless Only.

HTML is being asked to do more than it ever should. It’s becoming Media this and Application that. I don’t think that’s going to just be a side job. It’s going to become people’s calendars, their computers, their telephone, their TV, their movies, their music, their bank, their everything.

But, none of that is a disagreement. It’s just the future I see.

I just spent good half day fixing some code that does not work only in IE7!

Innovative my …s.

May be a better solution is find ideas, submit to W3C and others for review, if approved have it widely used by all.

Well put.

Since Firefox isn’t the best browser why should we say that it is. The best browser is probably one of the obscre ones that almost no one has even heard of but of the really popular browsers there are three that are far superior to Firefox so even there it isn’t the best.

How do you spend half a day fixing code? Seriously? :eek:

On AJAX I can agree that it’s what it SHOULD be used for, but on the other two not so much. (I’m assuming by GUI libraries you mean javascript libraries - don’t even get me STARTED if you mean complete crap like grid or YUI)

Fat slow poorly written bloat that takes minutes to load is NOT more ‘user friendly’… Navigations that don’t work when said technologies are missing or content that outright disappears or cannot even be accessed is NOT more user friendly… When said technologies break the normal browser behavior like forward, back, middle-click for a new tab, or even just being able to copy a direct link to something - that’s NOT user friendly!!!

In most cases these technologies result in an accessibility train wreck… and long term means slowdowns or cutting into your profit margin through enlarged hosting costs - PATHETIC when most of the time many of these technologies are sold to the suits as saving bandwidth; the exact OPPOSITE of what they actually DO!

Flashtard is a common derogatory term for developers who make their ENTIRE site in flash, or waste flash on stuff that HTML/CSS can do just fine without it. You make your site’s primary navigation in Flash, you’re a flashtard. You waste my time on a one minute pageload of flash to show 2k of plaintext in a size too small for me to read in some goofy serif font that renders like ass so small with some goof-assed animation around it - you’re a flashtard. If you provide no fallbacks for flash disabled to users who want to tell you where to shove the bloat - You’re a #DDD (Carlos Mencia gray) flashtard!

Flash is FINE for what it does well - videos and games… It should be the LAST tool looked at for something as simple as a banner, menu, or other standard page content… and lands sake if you’re going to use it for something other than video’s and flash games, INCLUDE FALLBACK CONTENT!!!

Have you seen the latest incarnation of Hotmail? Eh? Breaks conventional navigation, makes even a normal ‘search’ next to useless, blows over 500k on delivering 2-3k of plaintext? All to make it “better”.

Great example of AJAX abuse doing ‘harm’ would be AJAX for tabbed content. Not only does it mean you are wasting bandwidth on scripting to do what static content should, you are STILL doing the extra handshake so there’s no change in server load, and it’s a complete accessibility /FAIL/ and not to great for SEO purposes either. Done right they shouldn’t even USE AJAX and just hide the content of the other tabs - that way if scripting is disabled the full content is shown… but even that is a miserable /FAIL/ since it usually means good luck for the user to direct link to it. Again it’s even more pathetic when they sell people on the idea of it as saving bandwidth - when they are using 300K to a megabyte to deliver 5-10k of plaintext… To hell with that type of thinking. Ever hear of code to content ratio? Anything more than 3:1 is complete rubbish, and 2:1 or less is probably better for anything with more than 8k of CDATA?

Dan Schulz once called AJAX based tabs the new Framesets… If you don’t know what’s wrong with using framesets, you probably don’t understand what’s wrong with AJAX only static content either.

Certainly AJAX is great for things like inline edits on forums, developing full blown applications like google docs, etc, etc… but lands sake it is NOT the be all end-all solution people make it out to be and should NOT be wasted on static content… and it should NOT require 100K+ libraries just to implement it.

Which is where the STUPID MALFING script libraries come into play… Not only is it outright idiotic to be using hundred K+ libraries (just how *** big is prototype now?) in an INTERPRETED language, MOST of the time the resulting actual scripts that do something are BIGGER and SLOWER than if you got off your tuchas and wrote the bloody thing correctly without the half-assed library in the first damned place!

There’s a reason I lump Jquery, MooTools, Prototype and their kin in the same bin I put Frontpage. (along with “grid” and “YUI”). The complete TRASH code people vomit up using these crutches usually ends up just as bad as the worst of the WYSIWYGS.

But most people just want to sleaze out a website any old way and to blazes with accessibility, ease of use, or even a practical bandwidth footprint… Hell most ‘developers’ these days don’t even know what a handshake is or why too many of them is a bad thing.

It’s why 99% of the time I see someone asking for help with something done in jquery my first reaction after looking at their site is “What the **** are you even using jquery FOR!?! Just TRYING to bloat out the site for no good reason?” - I swear, all these scripting libraries are a blight upon the internet… Making the UI better? — HARDLY! EXACT ******** OPPOSITE!!!

Oh, one other point that occurred to me - kind of shoots down Hewitt’s arguement…

One of the things that drove IE’s “innovation” over that time period he holds up as an example… was in fact Microsoft SUPPORTING the standards when Netscape wasn’t. MOST of what could be considered ‘innovative’ about the IE 5 through 6 development cycle were present in 5.0 - it’s just it took a few years for people to even start using them… since for the most part it wasn’t until around 2002 it was practical to start telling Netscape 4.x users where to shove it.

The only things that came in 5.5 and later were expressions and behavior files - both of which are basically used nowadays ONLY for bugfixes as no other browser have them - and IE6 giving the doctype box model and margin:auto fix…

Even IE 5.0 had XMLHTTPRequest… That’s where it originated… To say they were innovating from 1998 onward is a bit of a stretch, most of the innovation was in IE 5.0, while 5.2 mac, 5.5 and 6 were all little more than bugfixes to try and get closer to the standards… and even then what made IE 5.0 so ‘innovative’ were the attempts to support the standards…

The same way Webkit is today.

Ah deathshadow, Sitepoint has been far more boring without you :wink:

It’s why 99% of the time I see someone asking for help with something done in jquery my first reaction after looking at their site is “What the **** are you even using jquery FOR!?! Just TRYING to bloat out the site for no good reason?”

Unfortunately, in the JS Live course I’m going through now, we’re using jQuery: mostly only to get around the two-version of attachEvent and addEventLoader (or was it Listener?) and to get “this” working. I can do the events without jQuery but I now realise that a script I was working on months ago that worked everywhere but IE, the problem wasn’t just the nextSiblings, it was using “this”. So I still don’t know how to get my old scripts working, except I know I can add a <script> tag calling some jQuery and suddenly “this” will work. : ( Not a happy camper with that one. I wouldn’t want to load a whole library with lots of garbage just to get one thing to work, but I would say that may be why many simple sites with simple JS doing little things have an expanding-waistline library sitting on them.

this in JavaScript is indeed a weird thing.
Like you I was always struggling with it, until I read this article @ ALA.
It was a real eye-opener for me :slight_smile:

The problem with this isn’t this… the problem with this is it == global object in IE : (

There are codes around it, and I could copy them, but I don’t understand them. They dance around IE and sing voodoo songs to the Exploder Goddess : (

…however that is a very nice article. Perl uses “self” : )

I got a FEVER, and the only PRESCRIPTION…is MOAR jQuery!!

One of the best blog post I read (http://www.doxdesk.com/updates/2009.html#u20091116-jquery ). And I tend to rely on Mootools to do lot of things when dynamic-goodies-adding-time comes.

You can say that again!

Thanks for the response. I can tell you’re really passionate about this topic. Let me try to disect your argument. Again, this is just my opinion and from my experience. Look for bold text below.

Anyways, thanks for the food for thought. It’s good to know the other side of opinions. My bet in my career path is to put those gui libraries in my belt is a good thing and not bad.

However as of today, I believe flash gives the most gui features over javascript

Last time I let a flash site load, I could not open links from the flash part in another tab. Imagine this kind of limitation on the search results page of google.

First of all you use technology where it is needed and second don’t judge one bad implementation for the whole of a technology. You can open links from flash to any where.

HTML has limits, CSS has limits, JavaScript has limits, ActionScript/Flash has limits… whatever comes next will have limits and bad implementations.

Limit yourself from Flash and you will never understand what a web application really is or can do.

I like how people like to hold up examples of “accessible flash”… one of them was jkrowling’s site. I dunno if it’s still like that, this was a year or two ago. More than one web dev site claimed that the Flash there was great.

So I checked it out. I don’t have Flash. I saw nothing but a green screen and a single line of text. Accessible my ass. There was no non-Flash alternative. Not even a link to a page that had whatever the basics of the site were.

Now maybe there was nothing on that site anyway and Flash made sense. I wouldn’t know. I couldn’t find anything on the site at all.

sg707 - 1) you might want to learn how to USE the quote bbCode… especially since the way you did it makes it a royal PITA to respond.

Thing is, YUI or GRID for example uses presentational classes to apply everything - defeating the POINT of using CSS in the first damned place. If you are declaring classes that say how things are going to appear in the markup… classes like “left”, “right” - YOU’VE MISSED THE POINT and are churning out the same bloated rubbish you’d get out of a WYSIWYG. Worse, most of the scripting is for cutesy crap that does NOTHING to improve the user experience.

But take that EXT things’s website - the stupid fade animation crap on load, the page content COMPLETELY falling apart with scripting disabled, fixed metric fonts that are COMPLETELY useless to large font users while the layout breaks if you dare to try and zoom in.

That’s before we take a look under the hood and realize these guys are the LAST people you should be taking web design advice from. No doctype, Inlined CSS, tables for layout, and begging the question WHAT THE **** DOES THAT PAGE EVEN NEED SCRIPTING FOR!!! Just so they can make some crappy little restricted size box in the middle of the screen with it’s own scrollbar that the damned mouse-wheel won’t even focus?

… and that’s just the page LISTING the examples!

It’s a laundry list of how not to make a website - the only things missing are auto-playing music and marquee tags! The site ALONE should send up enough warning flags to make you not even want to THINK about using their libraries.

Though, I’m not a big fan of animated ******** and lack of scripting off graceful degradation. I rollover a dropdowns parent I want the dropdown NOW, not after some stupid animation plays. I minimize a window, I want it gone NOW - NOT after some stupid animation plays. Get the idea? That’s not 'enhancing the experience" that’s “wasting the users time”. I happen to turn javascript off because it’s annoying the piss out of me, I shouldn’t get a giant blank page.

Much less their scripted trash being invisible to search engines, screen readers, and most handhelds. **** that.

Their feed viewer demo being a great example of how NOT to build a website too. Loads by default empty here (since in Opera I have .js off and turn it on at a per-case basis, and in FF I use noscript) and even when it does load, holding up some crappy 8px fonts design with broken header orders, broken layout when you try to zoom to a useful size, one CPU core maxed out from the slow scripting, and blowing errors in Opera’s scripting log by the dozens every time you click on something…

NOT exactly blowing my skirt up.

Engisc moder wyrter? Lemme see if I can decipher what the devil you are even saying. You keep saying “GUI technology” - all the ‘gui’ tech you should need for a website that presents normal content is present in HTML/CSS - if you are using it for cutesy animated crap you are wasting everyones time, including your own. Such things are an accessibility /FAIL/ - and I’ve rarely seen a site coded using any of these ******** ‘frameworks’ that are even fit to wipe with!

If you are transferring five minutes + of data as HTML, or taking as long to process the data server side as the connection timeout limit - your user interface and data structures are such total CRAP you have no *** business even WRITING websites. While I realize many people seem to have no problems with 200k HTML files, I tend to think a little cleaner than that.

If by gui ‘features’ you mean bloat for no good reason - honestly you shouldn’t be resorting to either technology for your ‘gui’… you keep using that term and it feels REALLY inappropriate. The GUI should be what the browser provides by it’s processing of the data. If you are ****ing with doing anything above/beyond that you are probably making a steaming pile of /FAIL/ that takes minutes to load for most people - when all you are doing is delivering a couple K of plain text and one or two content images.

I’m taking it your petabyte sized databases don’t have proper indexes on them. Lemme guess, JAVA and some form of XML databases (also not a fan of either of those)

Though you are right, in those cases AJAX does make sense - but the problem is people are throwing it at EVERYTHING - from dropdown menus to static pages that would be smaller without it - to trying to make a link red on hover (No joke).

Because in and of itself half of jquery is reinventing the wheel as it’s just developers too lazy to type out the full name of existing functions or shoe-horning user objects into an INTERPRETED language (as if the system objects weren’t bad enough), and the other half is goofy trash you shouldn’t be wasting bandwidth and the users time on in the first place? Much less overtaxing your server and making your server side scripts take longer processing the code for?

A good chunk of jquery is one step removed from half-assed design ideas like the marquee tag.