The Future of HTML
An anonymous reader writes "HTML isn't a very good language for making Web pages. However, it has been a very good language for making the Web. This article examines the future of HTML and what it will mean to Web authors, browser and developers. It covers the incremental approach embodied by the WHATWG specifications and the radical cleanup of XHTML proposed by the W3C. Additionally, the author gives an overview of the W3C's new Rich Client Activity."
Why should something leave that is so simple to use, and something so many people know? Hell, I can slap up a little page with HTML in about 20 minutes, but I can't do it in anything else.
Yay, I have a sig.
As someone on the WHATWG mailing list (I'm actually on the list of contributors for WF2, though for minor things), I'd say this is a decent overview of what WHATWG's doing. I expected something about XHTML 2, though, and a comparison.. I guess that's part 2 of the "two-part series".
There are 11 types of people in the world: those who can count in binary, and those who can't.
The one thing that the author missed is the "Intention" behind HTML. It was invented primarily to create documents (hence, the availability of h1 to h6 tags as the article illustrates). Furthermore, HTML is oh so accomodating and expandable.
Basically, every example that the author's given can already be replicated using current web technologies albeit via plugins and some scripting (server side and/or client side).
Not bad for a language that was primarily intended to generate documents now, is it? I fail to see why the author chooses to make it very clear at the start of his writeup about how "clunky" and "unsophisticated" HTML is, but concluded it by saying how current innovations like AJAX is already making HTML5 obsolete.
Nice writeup, but no clear objectives.
Welley Corporation - SLM Scammers
HTML is like the mp3 format. It was there at the beginning and will always be there. No matter what comes along (PHP, Flash, etc.) and how much better (or worse) it is, HTML will still be there.
HTML is fine. CSS is great. It's everything inside of that needs cleaning.
I'd tell you the chances of this story being a dupe, but you wouldn't like it.
Check out this open-source project http://witty.sourceforge.net/ which kind of ports the Qt API to web application programming.
Makes perfect sense for people developing web applications who do not want to know about the latest AJAX/JavaScript/CSS buzz.
The point is that Firefox, Safari, and Opera will all have implementations within a few years, and there is a library being made that an author can include in the page to make IE work. So implementation won't be a problem for long.
There's also the use case of people who wouldn't bother with client-side validation in the first place, but will with WF2. After all, typing <input type='email'> is just as hard as easy as typing <input type='text'>, and will fall back to a normal text input in older browsers. Nothing lost, some gained.
There are 11 types of people in the world: those who can count in binary, and those who can't.
I'm all for new features, but I wouldn't hold up CSS as a model. Sometimes it seems like it goes out of its way to make things difficult for anyone writing a web page. Example: CSS took the totally simple CENTER tag and "improved" it with kludgy auto-width margins that don't work in IE5/Win. (Yes, I know that's Microsoft's fault, but even if it was reliable it'd seem like a step backwards.) And if you want to center something vertically, it's back to tables.
Want to use CSS to create a standard two- or three-column layout plus footer that works cross-platform? Have fun! Something that nearly every web coder needs to do all the time ought to be easy. Instead, it's considered a difficult problem even by authors of CSS books.
But hey, we can now put overlines over type! Everybody's been eagerly awaiting that feature, right? How about a future HTML that addresses the needs of those who actually create web pages?
Q: What does the "B." in Benoit B. Mandelbrot stand for? A: Benoit B. Mandelbrot
What I think needs to be done is to package HTML and all the components for a webpage into a small, highly compressed binary file utilizing an open standard, or perhaps creating XML-based binaries similar to how ODF files work.
.HTML file and all of the graphics, and sometimes if something is out of place a link or page is broken. A Binary file approach to HTML could fix this. Images and other web componnets would be embedded into a single, compressed download. Pointers could be used to point to specific pieces of another web document the same way you can create links in Word and OpenOffice documents to other portions of a separate document or how PDF files can link to other parts of another PDF file. Using a method like this would reduce the amount of space needed for most webpages and making updates to them would be easier also. I also don't see why browsers couldn't be made to support both existing HTML and a new binary file standard. Perhaps it would even require a new Protocol.
The reason for this is to decrease the load on web servers when a webpage is loaded. Separate connections are made to download the
Michael "TheZorch" Haney
thezorch@gmail.com
http://thezorch.googlepages.com/home
It doesn't really seem fair to say that they use a "non-standard box model." They read the spec and interpreted it one way, the wrong way. This can happen, and the spec isn't always so clear. The real blame is that, KNOWING this, they still haven't fixed it in 7 years.
CSS is fantastic, and easy to comprehend after an initial learning curve.
I agree in part.
Past history shows it is important to the community at large to establish and maintain a standardized means for creating web pages. I went through this once and won't do it again.
But if someone doesn't spend a lot of time and effort trying to develop new standards to keep up with the new areas of developing technology then you will end up in a chaotic environment again as people are compelled to move into the new tech stuff (to keep up with the times, stay on top, keep up with the competition) without a standard existing.
BTW, yes I have used 6 level indentations, so that H6 tag comes in handy.
I would love it too if everyone would just figure what the heck it is they want to do and stick with it, but we don't know what we want to do with it because people are still trying to figure out what can be done. The concept that is presented as the overhyped AJAX is an example. It's not new, it's not standardized, it's not MSFT's (though they lay claim to it now), but it's a neat idea. It's also horribly broken and a very shitty thing to do for most websites because it's so broken. But people don't care.
The PHBs will hear about AJAX and demand that they have it on their websites too. Even if they have no clue when you would really use it. And this creates a land rush for using AJAX on everything ASAP despite any standards or good practices. You can't stop it, those PHBs pay a lot of money for stupid work.
AJAX would be best handled by standardizing something about it sooner than later. Too late and you have an area of chaos in the HTML user space.
Personally, I haven't made a web page in years and recently decided to start making some more for a project of mine. Here's what I found out.
All my javascript related books are all written in the middle of the browser wars and spend more content on getting around MSIE and Netscape problems than actually doing anything so they are pretty useless.
I have a few books on CSS but no one actually talks about what CSS can really actually do. It's largely a matter of hit/miss to see what CSS tags have any effect on which elements. While I like the concept, the level of documentation on CSS is beyond pathetic.
I would love it if everything would just FREEZE so I wouldn't have to buy more books and stuff, but that's silly. It's always going to change. Sometimes not for the better. I just hope someone out here remembers that a good web page is designed to be downloaded while you hold your breath (reflects how long someone will wait) and to have everything on the site reachable in 3 clicks from home (not only 3 clicks but available in 3 clicks). That's the best advice I've ever heard on web design and stick to it.
Parent is either being cryptic, naive, or sarcastic, because he's basically saying "hey, let's modify postscript and use it to replace html."
:-)
Postscript allows you to do absolute and relative positioning. It lets you print text, raw images, and vector graphics. It has looping constructs and recursion (hint: the language is turing complete). Add a few primitives for URLs, and postscript would work just fine* as a replacement for HTML + javascript + plugins!
* - Fine is a relative term. Lispers would love it, but everybody else would pull out their hair trying to make a "Hello, World" postscriptwebpage.
Speaking as an ordinary user and on behalf of other ordinary users, what you describe is something that I and the others absolutely do not want. Pushing programmers' wishlists onto reluctant and skeptical users is not the way forward. Give me good writing over fancy presentation tricks anyday. I am happy with a web that has neatly formatted plain text and occasional images, video and audio pieces without the distraction of unnecessary popups and tedious web gadgets etc.
Please feel free to ignore us while we continue to enjoy the essence of good authorship, which is no more or less than good writing -- a fact apparently lost on fans of technology for special effects whether in the movie industry or in web technology circles -- and we will happily ignore all this unnecessary "techno glitz".
Apparently you (and Microsoft) read a different spec than I did. It shows EXACTLY how the box model should be displayed and describes how its dimensions should be calculated. They interpreted it differently because they thought it was a good idea.
http://www.w3.org/TR/REC-CSS1.html#formatting-mode l is W3's spec with an example of how boxes should be renderered.
From that page: The size of the box is the sum of the element width (i.e. formatted text or image) and the padding, the border and the margin areas. There is nothing complicated about that sentence.
All that said, you're absolutely correct. The could've fixed their box model in IE 5.0, 5.0, 6.0 or SP2. But they didn't.
Grammar Lesson: you're is a contraction of "you are"; your means you possess something; yore means days gone by.
Well, your experience is different from mine. I've worked at large web agencies and "Big 5" advertising agencies. Most devs I know (including me) end up using tables simply because we're required to support every browser made in the past six years and it simply isn't time and aggravation quotient efficient to try to do everything in CSS.
Most folks I know use a combination of table and CSS-based layout. Tables are simply very easy to code for. It may not be so easy to radically revise the layout after the fact, but a good developer can design so any kind of routine content refresh won't completely break their code.
Chances are that if the layout were to really change, the entire site is probably getting refreshed anyway, so preserving existing content usually isn't that important.
The only time I use CSS exclusively is if the design is relatively simple and the browser requirements are fairly narrow. It just isn't worth the time and budget otherwise.
Put me firmly in the camp that html is brilliant. It suits exactly its designed purpose: to allow academic papers to be easily shared among colleagues. There are no formatting imperatives in a basic html document, the tagging scheme allows the author to include identifiable hints to be rendered or ignored as the client browser chooses.
Now what you report your web-designing friend as saying sounds a bit like a jumble of the justification for xml, which is a way to tag informational content so that transformational tools can auto-generate multiple views (including html). Html does not provide this capability, but on the other hand, it does not fuse the presentation and content. The content/presentation divide for a classic html page is very simple: presentation hints are inside the angle brackets and content is outside the tags.
Now clearly, over the last decade, there have been hack upon hack and new tag upon new tag created, which suggests that there was something "wrong" with the original html. I argue there wasn't. It's just that the web as a commercial medium was not anticipated. So, html was expanded and we've been suffering with the inconsistencies which arose from back-porting robust typography, dynamic control, and other complexities to the original spec. On other hand, plain vanilla html is easily rendered by all browsers and human-comprehensible if a browser isn't available, which is why no one tossed it once the commercial imperatives were recognized. Plus the main reasons why the web did catch fire were: no one owned it, it was open source (source views were there to show how something was done), and html was and is very easy to use.
Should we discuss how useless a bicycle is because it won't tow a grand piano?
I find using a grid-based layout (which is what a table is) fairly intuitive, and I don't really see cell-spanning as a hack. Spacer images and cut-up images are a bit of a hack, but combining tables and CSS, I don't think I've had to cut-up an image for a good few years, and margin/padding settings replace spacers. I quite like CSS in most respects, but I find doing positioning using pure CSS to be a major pain in the backside, especially when trying to maintain browser compaitibility.
My ideal positioning syntax for CSS would be the ability to setup a grid in any container object (grid-width: 10; grid-height: 10; to setup a 10 by 10 grid) and then be able to specify grid co-ordinates in any objects within that container (position: grid; grid-x: 1; grid-y:1 width: 1cells; height: 10cells;). Bingo, there's a column layout that will resize with it's parent container, with separation of form and content, and semantically valid for all the purists out there (it uses the word "grid" instead of "table").
I'm not against CSS, I think the concept is great, and the styling part of it works wonderfully. I think the positioning method sucks and should be scrapped, and the alignment method should be fixed - vertical-align working on more objects than just table cells, and being able to center table/fixed-width block elements without resorting to margin hacks.
Just because you're paranoid doesn't mean there isn't an invisible demon about to eat your face