tags:

views:

264

answers:

8

I know it will be 'finalized/made official' in 2012 (and something to do with it being given 'Recommendation status' in 2022), but I'm wondering if it's a good idea to make a site using HTML5 now.

A simple portfolio sorta site? Given that most users (most people using IE) won't have support for it, although IE9 (shock) will be shipping with support.

+2  A: 

It is a good idea to prepare your website for HTML5, but please be backwards compatible to allow users with a browser that is not yet "ready" for HTML5 to be able to view your site, event if that means limited functionality. That way, users with the latest browsers will reap full benefits, but those of us who are not on the bleeding edge will still be able to view content. As you can see, I feel somewhat strongly about this topic, but hey, I'm a realist.

Also, keep in mind that there are technologies like Silverlight and Flash, today, that can support rich functionality, if you want to allows non-HTML5 compatible browsers to also view such content.

Michael Goldshteyn
+1, it will be a gradual shift so keep older browsers on hand for testing -- but you do indeed want to be ready
Joe
True say, I know there are workarounds for IE.. but I'm wondering is it worth the hassle just yet-- just more coding isn't it?
john mossel
It's NOT worth the hassle yet. Trust me, you will not like having to fix bugs and issues that **will** arise eventually when some browser (or new version of a browser) breaks something. Browser vendors haven't been able to cooperate in the past, and that was only with two major competitors, so there's no reason to believe that even more competitors controlled by very different groups can cooperate in the future. HTML5 is a gamble.
Crusader
http://www.modernizr.com/ << This is quite cool, found it just now. If anyone does decide to use HTML5 use this.. It does most of what you've said above ^^.
john mossel
That brings up another of my complaints with the HTML5 deal - a very fragmented and rapidly changing set of dev libraries, tools, and so on. I do some amount of research on all these "JavaScript frameworks" (for lack of better terms) and I've yet to see that one. At least if you hire a Silverlight or a Flex developer, you *know* they've used the same exact APIs you're using.
Crusader
I see your point, but neither Flex nor Silverlight provide native support for Linux... and I hate sites that tell me to download Silverlight to view.
john mossel
As I've said, **perfect** cross platform support is in the future on all fronts (RIA and HTML5), but on the Flex/Flash front you're at least partially incorrect: http://www.howtoforge.com/native_linux_flash_player9_in_ubuntu I do understand that even a one-time-process like this is a pain to have to do at all, but I attribute this to the Linux ecosystem more than anything else. It's been awhile since I've used Linux but if installs are still a *fraction* of how painful they used to be, it's not yet worth the hassle when Winblows can install stuff like this with one click (or already has it).
Crusader
A: 

Realize that html5 is a blanket term. Using the doctype is just the start. I wouldn't start including advanced webkit animations in all your sites, but using border-radius and box-shadow will work with most(minus ie) browsers and degrade gracefully.

jtmkrueger
But how can we say such features "work" if 50%+ of Internet users use IE where it doesn't exactly work? Do you mean to say these "work" or "won't completely break the page"?
Crusader
i mean work, and I excluded ie. please read before flaming
jtmkrueger
Wasn't a flame, just asking the question. :) It's just that to me for it to "work" IE has to support it, and it sounds like you excluded it because it lacks support, right?
Crusader
@crusader "will work with most(minus ie) browsers"
jtmkrueger
You know what, I did slightly misread that initially - apologies.
Crusader
border-radius and box-shadow have nothing whatsoever to do with HTML5. They're part of CSS3. People really need to stop lumping CSS3 in with HTML5, they're completely separate.
Ian Devlin
Thanks for that clarification, this was pointed out in another answer but we didn't connect that fact here.
Crusader
A: 

No, it's too soon. If you want rich client functionality use the more mature options, Adobe Flex or Silverlight (JavaFX possibly soon).

Gartner:

The choice among these technologies is not “all or none”. One approach that many, if not most, organizations might end up pursuing is a hybrid approach — sometimes known as “islands of RIA” or supporting “hot spots of interactivity”. In the near term, this requires a plug-in based approach, such as Flash, Silverlight or Java. Over the long-term (5 or 10 years), HTML5 may fit the bill.

So as they say, I'd wait 5-10 years and check in.

Crusader
FUD. 11chars...
Jani Hartikainen
lol, how about until 2022
john mossel
FUD from Gartner, eh? Where's your white paper Jani? Do you know who Gartner is?
Crusader
Is flex available on ubuntu? Also, I despise the Flash player, open more than one and FF crashes.
john mossel
This *is* FUD. Provide a proper source (link) and actual arguments instead of citing an opinion.
You
Oh, here we go with the HTML5 evangelists. Everything regarding the future of HTML5 is an opinion. I quoted a Gartner researcher's opinion, what do you have? http://blogs.gartner.com/ray_valdes/2010/02/10/html5-and-flash/It's TOO SOON to tell what the future will hold, and HTML5 still has a long way to go in the short term.
Crusader
@Crusader: Most of the HTML5 spec is perfectly usable already, while some parts of it still have a long way to go. To simply reject all parts of HTML5 because some parts are less mature is just as bad as doing the opposite. HTML5 is huge; much of it is mature.
You
If you need to build a car but you're only comfortable with the design of the body and the engine, but not the steering wheel or the breaks, would you still build the car using those tools or would you switch to the more mature set of components to work with?
Crusader
That's not really a relevant analogy. There's a huge difference between things such as local storage (which is HTML5, and not widely implemented) and the `<section>` element (which is also HTML5, and basically ready-to-use). This is more like building a car but not using parts from Mercedes because they also happen to make trucks.
You
It is relevant: The point was that if you **need** a missing or incomplete feature, you have to either accept the risk or use a different tool, like a virtual machine/player based platform to get the features you need.
Crusader
And my point is that you can use some parts of HTML5 today and fall back on other technologies on certain other parts. There's nothing stopping you from using both HTML5 and Flash (the `<object>` element is still there).
You
This is true, but IMO I don't see the point of mixing and matching multiple technologies when a simpler solution would be to just use the same tech for everything. I see no upside to mixing multiple technologies when it's not needed.
Crusader
Gartner don’t build websites.
Paul D. Waite
No but they're objective, and nobody else here is, are they? I think a lot of people here get very upset when the very serious fragmentation and standardization issues present in the 'browser development environment' are pointed out, but it's just business. The OP asked if HTML5 is ready--meaning ALL of it--not parts. And the answer to that is an absolute **no**. If I had to carefully research to pick and choose what Flex components I can or can't use, I'd ditch it and switch to something more mature and productive--why waste the time when there's a mature choice with better tool support?
Crusader
“There's nothing stopping you from using both HTML5 and Flash” — completely agree. Also, nobody’s developed an HTML5 blocker (…yet ;)
Boblet
True you could do that, but why use and learn two technologies when one does what you need? I don't see a reason to. There's no net benefit, all it does is increase the likelihood of something going wrong. Better to use as few different technologies as possible, as long as you get the job done. Less complexity is always better. If you're blocking something (or disabling JavaScript...), your loss?
Crusader
+12  A: 

There is no one monolithic HTML5. HTML5 is being developed as a single large (oh so very large) document, yes, but that doesn't reflect reality(*).

That is to say, HTML5 is a collection of loosely related incremental improvements to HTML4. Some of those new features are widely implemented already. Some of them you can safely use knowing that they'll degrade usefully for old browsers. Some of them you can use as long as you add explicit fallback code. Some of them will be shutting out some browsers for the foreseeable future. Some of them will only ever have minority support. Some of them may never be implemented at all, or may yet be edited out of the standard. And many new features that are often regarded as being “HTML5” aren't in HTML5 at all, but other standards (CSS3, ECMA262-5, DOM extensions, WebSocket...).

You will have to pick and choose which the features of the New Web you want individually, judging by current and apparent future support. There's not a switch for ‘using’ vs ‘not using’ HTML5, other than merely the doctype itself (which doesn't get you any new behaviour).

*: This was a big mistake, in my opinion. It would have been better to quickly standardise the bits that were already supported by everyone—like HTML3.2 did after the HTML3.0 fiasco (XHTML2, anyone?)—and then add new features in a more modular fashion. But that's not what happened, and it's too late to do much about it now.

bobince
No disagreement here, but personally I can't see why you'd want to remain subjected to such a rapidly evolving, chaotic, and non-standard environment when we have **consistent** platforms like Silverlight and Flex/Flash with which to build once and not have to worry about future compatibility problems. HTML5 needs to unify a historically competitive and non-cooperative group (browser vendors) when what we probably should be doing is using virtualization technologies to give developers standardized, stable development platforms to work within. Standardized plugin platforms fit the bill.
Crusader
I just wish the OSS community could develop an "OSS Flash" (and have it not fragment into 10 different incompatible branches) so people stop complaining about proprietary control over platforms that are freely given away.
Crusader
@Crusader: Silverlight and Flash is consistent? You must be in a dreamworld somewhere.
Lie Ryan
@Lie They're much, **much** more consistent than 5 different browsers running on 3 very different operating systems. They're the only consistent platforms available on the Internet (well, Java). Write an app to Flash and you'll never have to rewrite it again--THAT is the point.
Crusader
@Crusader: really? I have only seen Flash/Java applets that run on Windows crashing the browser in Linux or vice versa, or taking gigantic amount of unwarranted memory. Faulty Javascript/HTML may cause the page to show incorrectly, but at least it doesn't crash the browser.
Lie Ryan
Yes, Java destroys my browser on Ubuntu.
john mossel
One man's consistent is another man's stagnant, I suppose! ;-) And yeah, personally I'm not a fan of plugins. I'm glad applets and media-player embedding are dying, replaced by Flash, and I'm glad HTML5 `<video>` is starting to muscle in on Flash video. The “OSS Flash” in terms of the vector animation Flash was originally designed for is arguably SVG plus scripting, but we've got a way to go yet on support and speed (IE9 is doing great work here) and authoring tools.
bobince
WOW now thats what I call an answer!
Trufa
Why assume this is a Flash problem and not an issue with the browser/OS? It could be either. Most problems with Flash tend to be poor support from things wrapped around it or interacting with it. Now at least I see where you're coming from. Perhaps Adobe needs Linux people to actually report such issues (if they are indeed widespread) rather than simply complain about them not getting fixed? They can only do so much with in-house testing.
Crusader
For what it's worth, the new Flash Player Square beta on Ubuntu has been by far the most stable Flash I've ever used on any platform. Which isn't saying a great deal, but still. Also Flash is often affected by, and receives the blame for, bugs in graphics card video acceleration drivers.
bobince
That's good to hear, and I expect that by 2022 (when HTML5 might be 'complete'), cross platform issues should be gone. If not, I'll be glad to dump any inferior platform for a stable, consistent one.
Crusader
+1  A: 

Certain bits of HTML5, sure. Almost all new elements introduced in HTML5 can be used already, thanks to the html5shiv, and if you provide a suitable fallback you could be using <video> and <audio> as well. Those, along with the more advanced scripting features (local storage, etc.) are the features that will take time to implement.

Also, while Mark Pilgrim's Dive into HTML5 mostly discusses features that won't be available for some time (at least not in IE, i.e. the majority of web users), the chapter on semantics is both interesting and applicable.

Also keep in mind what your target audience is; if most of your visitors are from the designer community (or whatever), most of them probably have a browser with HTML5 capabilities. WebKit browsers already support much of the HTML5 draft.

You
Yeah, it's more sitepoint.com than 4chan.org (please dont hurt me)
john mossel
Anyone care to elaborate on their downvote?
You
A: 

The thing you should understand is that html5 is not ONE big thing, it is a lot of bits and parts that you will start to use envtually here is a extract from http://diveintohtml5.org/

  1. It’s not one big thing

You may well ask: “How can I start using HTML5 if older browsers don’t support it?” But the question itself is misleading. HTML5 is not one big thing; it is a collection of individual features. So you can’t detect “HTML5 support,” because that doesn’t make any sense. But you can detect support for individual features, like canvas, video, or geolocation.

You may think of HTML as tags and angle brackets. That’s an important part of it, but it’s not the whole story. The HTML5 specification also defines how those angle brackets interact with JavaScript, through the Document Object Model (DOM). HTML5 doesn’t just define a tag; there is also a corresponding DOM API for video objects in the DOM. You can use this API to detect support for different video formats, play a video, pause, mute audio, track how much of the video has been downloaded, and everything else you need to build a rich user experience around the tag itself.

If you are really interested you will find this: http://diveintohtml5.org/ very interesting!

Trufa
+1  A: 

There are people that wanna be progressive, those are the ones that bring the change, and I figure your one of them. So my advice would be, sure, cool, use it, just with care that users whose browsers don't support it also have decent experience.

Things that might help: http://code.google.com/p/html5shiv/

("Public repo for the latest HTML5 JavaScript shiv for IE to recognise and style the HTML5 elements. ")

Also, as new user i can't post more than one link, but look for css3pie:

("PIE makes Internet Explorer 6-8 capable of rendering several of the most useful CSS3 decoration features.")

Ramon
+1  A: 

Once IE 9 is released, all major browsers vendors will support a large subset of HTML5. http://caniuse.com is a very useful site for answering the question "Which HTML5 related feature can I use now (or in the near future)?"

Updated (to address @Crusader's comment):

By some measures the market share of browsers without at least some HTML5 support (i.e. IE 6,7,8) is now lower than 50%. In other words, the era of HTML5 has already arrived.

With the arrival of IE 9 soon, I predict the share of browsers with no-HTML5 support will fall to less than 25% in the next 12 months. And for those who refuse to upgrade (or can't because of corporate policy), Chrome Frame allows easy use of HTML5 in IE 6,7, and 8 for sites that need to support those browsers.

Or consider: the only reason MS is implementing HTML5 features in IE 9 (instead of continuing to put all its eggs in the Silverlight basket) is because they know HTML5 has already arrived and they are late to the party.

kanaka
But, meanwhile, look at how many people are still using less than IE 8. It'll still be awhile until decent support is common, even after IE 9--and it's yet to be seen how well 9 will perform. It could be "a Vista" or "an ME", for all we know.
Crusader