What he's saying is obviously right but it seems to me that it was the tech press and the marketing people in the industry, that started using the collective HTML5 term for all the new things that have emerged on the Web recently. They're at fault too for making cruel simplifications that the mere mortals then absorbed.
Sometimes it is confusing because a lot of animations and tricks are in fact related to a browser version.
When a browser vendor releases access to a Javascript API that can control your CPU fan speed it has nothing to do with HTML, CSS or Javascript. So it's no surprise people sometimes call a meatball spaghetti.
Notice that the W3C is not so stupid as to interrupt society when society decides to lavish tons of attention and love on their brand, even if society has decided to redefine it in the process.
HTML5 is a convenient label for discussing and comparing other alternatives which also tend to have labels, such as Flash applications, desktop applications or native iOS applications. People will know what you mean in the broad sense, without specifying the exact CSS and JavaScript revisions and other extensions being used.
Sure, javascript, CSS and SVG have existed for a long time, but canvas, webgl, native video, CSS 3, new javascript apis and other things that bind all these together have only started trickling in. Some of them may still need improving, like audio, but that is changing over time. It is only now that you can contemplate building something complete with only the tools the stock browser provides.
Client: We want to build an HTML5 application for our customers to access our low-level educational books.
Me: Ok, we can do that.
My internal monologue: I understand that when my client says HTML5, they really mean a whole set of technologies.
Client: Great, let's talk more about the idea!
## CASE TWO
Client: We want to build an HTML5 application for our customers to access our K-6 educational books over the internet.
Me: Oh, you don't really want 'HTML5' you want a single-page application written in HTML that uses Javascript to load client interface components in small pieces, rather than refreshing the whole page, and to drive reflexive interface elements that behave like traditional desktop applications. Also, we'll use CSS to style elements and use newer CSS3 features where available. Don't worry, the app will degrade gracefully in older browsers. We'll probably use a Javascript framework like Ember or Backbone coupled with a back-end web service built using Sinatra. How does that sound?
Client: Ok, great. Well, we've got a few candidate firms to work our way through. Don't call us, we'll call you.
You see, the guy in business building K-6 educational content can't also be in the business of building web applications. No matter how much you want to educate the world about your craft, it won't change one simple life lesson: you have choose what you'll be good at, because you can't be good at everything. Your clients know this implicitly. If they have the money to pay you, it means they're good at their business. Don't ask them to be good at your business.
Buzzwords are abstractions for clients. They make our complicated technology accessible. They create a 'product'. This is good for our industry. If you're uncomfortable co-opting names for specifications, like HTML5, then you should propose something different, not simply complain about the abuse.
I propose one of the accurate terms that were already in common use, like "AJAX app" or "single-page app". But terms like these are constantly being replaced, to the great bewilderment of the client/lay person, in order to give the illusion of innovation. By using consistent terminology, we could avoid the translation step, along with the frequent conflicts caused by mistranslation.
I also prefer the single-page-application description. I use the acronym form (SPA) once I've introduced customers to the idea. I scope projects like this:
* You want a web app
* The web app will be composed of components
* Some components will be standard CRUD applications
* Some components will be SPAs
The "page refresh" is the cognitive anchor I use for clients. I tell them that standard CRUD applications are applications where the page disappears and refreshes when they click the save or submit buttons. SPAs are pages where things happen seamlessly on the page when they click buttons. I usually contrast their existing site to a site like Gmail.
The thing is, I don't get in to this detail until we're past the opening conversation. During the opening conversation, my approach is to avoid correcting them at all. Rather, I ask for clarification of what they mean, then let them continue using their own terminology; abusive of our craft or not. I find that people are far better at explaining things in their own terms than they are trying to wrap them in our terms. Asking for functional examples (micro workflows) is a great way to understand what they really mean.
> Look up HTML5 for yourselves. Understand what it can do, when it will do it and what it will never do.
It appears the omission of the canvas element and API, and WebGL, which would contradict this:
> There is nothing in the HTML5 specification for animations, moving or otherwise visually manipulating anything.
... would suggest the author isn't taking a leaf out of his own book.
I think it's disingenuous to consider HTML5 and other technologies in isolation, because you can't feasibly use this stuff without HTML5, or something that attempts to mimic its functionality.
HTML5 is different from previous versions of HTML in the sense that it also includes a multi-module API specification; not just a new revision of the mark-up language.
Unfortunately, I don't think the author actually provides any clarity.
Web 2.0 was a marketing term designed to help restore business confidence in the web. HTML5 is likely to be used as similar marketing term - I don't think it's a huge problem.
The first comment on TC is pretty self explanatory:
HTML5 provides the structure, and the API's for Javascript to easily do its work. It's not supposed to do the drawing, animation, whatever. Javascript is supposed to do that. CSS3 for the design.
The problem is, that there is no collective name for HTML5, Javascript and CSS3, so people just call it HTML5, collectively. It's not 100% correct, and this is the first reason why you are confused.
It appears to me that this is a made-up argument about terminology and semantics that in no way advances the human race forward; all it's good for is starting angry and meaningless debates about nothing.
"That’s Javascript and CSS moving things around. Well written, nicely implemented and totally unrelated to HTML5. And totally possible on HTML4."
How can this guy be a CEO of web company?
HTML5 has become a brand (with a cool superhero logo and everything). If you've ever tried to build a brand before, you know that this is a much more valuable thing than whether the name agrees with the scope of the spec.
In other words, let's not look a gift horse in the mouth, hmm?
I am one of those that is terribly disappointed that HTML5 has become the name of all the new web technologies. It's misleading and confusing as to what is actually being discussed.
But I have gotten over it and moved on.
One major problem I can see is job descriptions written by people who think using buzzwords they don't understand is the key to getting top talent.
22 comments
[ 3.3 ms ] story [ 65.6 ms ] threadWhen a browser vendor releases access to a Javascript API that can control your CPU fan speed it has nothing to do with HTML, CSS or Javascript. So it's no surprise people sometimes call a meatball spaghetti.
## CASE ONE
Client: We want to build an HTML5 application for our customers to access our low-level educational books.
Me: Ok, we can do that.
My internal monologue: I understand that when my client says HTML5, they really mean a whole set of technologies.
Client: Great, let's talk more about the idea!
## CASE TWO
Client: We want to build an HTML5 application for our customers to access our K-6 educational books over the internet.
Me: Oh, you don't really want 'HTML5' you want a single-page application written in HTML that uses Javascript to load client interface components in small pieces, rather than refreshing the whole page, and to drive reflexive interface elements that behave like traditional desktop applications. Also, we'll use CSS to style elements and use newer CSS3 features where available. Don't worry, the app will degrade gracefully in older browsers. We'll probably use a Javascript framework like Ember or Backbone coupled with a back-end web service built using Sinatra. How does that sound?
Client: Ok, great. Well, we've got a few candidate firms to work our way through. Don't call us, we'll call you.
You see, the guy in business building K-6 educational content can't also be in the business of building web applications. No matter how much you want to educate the world about your craft, it won't change one simple life lesson: you have choose what you'll be good at, because you can't be good at everything. Your clients know this implicitly. If they have the money to pay you, it means they're good at their business. Don't ask them to be good at your business.
Buzzwords are abstractions for clients. They make our complicated technology accessible. They create a 'product'. This is good for our industry. If you're uncomfortable co-opting names for specifications, like HTML5, then you should propose something different, not simply complain about the abuse.
* You want a web app
* The web app will be composed of components
* Some components will be standard CRUD applications
* Some components will be SPAs
The "page refresh" is the cognitive anchor I use for clients. I tell them that standard CRUD applications are applications where the page disappears and refreshes when they click the save or submit buttons. SPAs are pages where things happen seamlessly on the page when they click buttons. I usually contrast their existing site to a site like Gmail.
The thing is, I don't get in to this detail until we're past the opening conversation. During the opening conversation, my approach is to avoid correcting them at all. Rather, I ask for clarification of what they mean, then let them continue using their own terminology; abusive of our craft or not. I find that people are far better at explaining things in their own terms than they are trying to wrap them in our terms. Asking for functional examples (micro workflows) is a great way to understand what they really mean.
It appears the omission of the canvas element and API, and WebGL, which would contradict this:
> There is nothing in the HTML5 specification for animations, moving or otherwise visually manipulating anything.
... would suggest the author isn't taking a leaf out of his own book.
I think it's disingenuous to consider HTML5 and other technologies in isolation, because you can't feasibly use this stuff without HTML5, or something that attempts to mimic its functionality.
Unfortunately, I don't think the author actually provides any clarity.
Web 2.0 was a marketing term designed to help restore business confidence in the web. HTML5 is likely to be used as similar marketing term - I don't think it's a huge problem.
HTML5 provides the structure, and the API's for Javascript to easily do its work. It's not supposed to do the drawing, animation, whatever. Javascript is supposed to do that. CSS3 for the design.
The problem is, that there is no collective name for HTML5, Javascript and CSS3, so people just call it HTML5, collectively. It's not 100% correct, and this is the first reason why you are confused.
So, it's only a terminology issue.
SVG includes animation support...
In other words, let's not look a gift horse in the mouth, hmm?
But I have gotten over it and moved on.
One major problem I can see is job descriptions written by people who think using buzzwords they don't understand is the key to getting top talent.