[opendtv] Re: Apple dashes hopes of Flash on iPhone

  • From: Kilroy Hughes <Kilroy.Hughes@xxxxxxxxxxxxx>
  • To: "opendtv@xxxxxxxxxxxxx" <opendtv@xxxxxxxxxxxxx>
  • Date: Wed, 21 Apr 2010 23:20:44 +0000

HTML is a markup language.  It is Declarative.  It asks the browser/user agent 
to please place a picture here or fill a <DIV> with text there, or play a video 
source using the new <VIDEO> tag in HTML5.  The browser accomplishes those 
author requests as best it can using whatever magic it chooses.  If it crashes, 
it's the browser's fault, or the virtual machine, OS, vitualization layer, 
hardware abstraction layer, and hardware pile it runs on.  

In practice, HTML depends on ECMAScript 98% of the time to create the web pages 
we see.  ECMAScript is a Procedural language, an interpreted one ("script 
language").  That is what adds logic, data and string manipulation, event 
handling, "behaviors", animation, etc. to HTML.  

There's a state machine in between called the Document Object Model (DOM) that 
links the two, and Cascading Style Sheets, which determine the scene rendered 
from the DOM at any point in time.  Languages like SMIL and SVG allow declaring 
animation, etc. behaviors that modify styles and objects over time.

The APIs provided to ECMAScript, etc. only allow a limited reach outside the 
DOM controlled by the browser.  They can bake and eat cookies, but not rinse 
your hard drive or open of sockets (other than to ask an HTTP stack to run a 
protocol) to turn your machine into a spambot.  

What is a whole nother kettle of fish is binary plugins like Flash, ActiveX, 
Java, Silverlight/.Net, etc. that are compiled for a particular OS and/or 
hardware, installed on the machine (not IN the browser), and have APIs that let 
programs potentially reach all the way to your hardware registers and disk 
sectors.  If an author writes bad code, you may have a crashed or evil machine 
on your hands, not just a web page that came out looking stupid.

In the case of declarative code, the browser and system are mostly in control 
of performance, power drain, adaptation to the particular display and user 
interface, stability, security.

When you run an application on a VM with powerful APIs, you hand those keys to 
the app writer (unless you "sandbox" apps with lower trust by shutting off the 
powerful APIs).  The term is "Write once, destroy many".  It is very hard to 
write apps with low level APIs that don't have ugly results on some of the many 
varied hardware and software environments they were never tested on but will be 
run on.  MHP and Blu-ray have demonstrated the cross platform mayhem that can 
be accomplished with ten thousand APIs (methods).  Flash kept the problem more 
tractable by basically limiting to two platforms (Mac/PC) that were strongly 
managed, constantly updated, etc. to contain the surprises.

You can look at the whole debate in terms of "who is going to control the 
application APIs".  It isn't a new one.

PS.  It's a big deal that HTML5 makes video codecs the responsibility and cost 
of the browser for the first time.  If HTML5 browser makers threw in MPEG-2 
decoders, it would cost them around a billion dollars for the first year of 
free upgrades, so lots of people working on plan B.  One theory, close to PC 
market reality, is that a browser isn't a browser without Flash and its 
decoders installed on the machine and linked to the browser as a plugin.  
However, what sorta worked for PCs doesn't work so well for TVs and cell phones 
and their progeny.  

Kilroy Hughes

-----Original Message-----
From: opendtv-bounce@xxxxxxxxxxxxx [mailto:opendtv-bounce@xxxxxxxxxxxxx] On 
Behalf Of Bob England
Sent: Wednesday, April 21, 2010 10:20 AM
To: opendtv@xxxxxxxxxxxxx
Subject: [opendtv] Re: Apple dashes hopes of Flash on iPhone

On Wed, Apr 21, 2010 at 9:49 AM, <dan.grimes@xxxxxxxx> wrote:
>
> dan.grimes wrote:"...will actually be programmed within the HTML5 language."
>
> Kon Wilms wrote: "HTML5 is not a language."
>
> Could you explain this a little further? I thought the "L" in "HTML" was for 
> language, so I called it one.

From Wikepedia:
"HTML5 is being developed as the next major revision of HTML (HyperText Markup 
Language), the core markup language of the World Wide Web."
(http://en.wikipedia.org/wiki/HTML5)

Or perhaps more officially, from html5.org:
"HTML5 is a new version of HTML and XHTML. The HTML5 draft specification 
defines a single language that can be written in HTML and XML."
(http://html5.org/)

Or maybe even more officially, from W3C:
See the document "HTML5: A vocabulary and associated APIs for HTML and XHTML, 
W3C Working Draft 4 March 2010" at http://www.w3.org/TR/html5/

It's probably safe to call it a language, regardless of what Kon may have meant.

Bob England
 
 
----------------------------------------------------------------------
You can UNSUBSCRIBE from the OpenDTV list in two ways:

- Using the UNSUBSCRIBE command in your user configuration settings at 
FreeLists.org 

- By sending a message to: opendtv-request@xxxxxxxxxxxxx with the word 
unsubscribe in the subject line.


Other related posts: