[whatwg] (real?) web applications
robodesign at gmail.com
Tue Nov 22 08:56:24 PST 2005
I believe this is way too much to ask/suggest for Web Applications 1.0
(maybe 2.0). AFAIK, this is beyond the purpose of WA 1.0.
Here it goes:
1. Add a special "frame" tag which displays live image data from the
client web cams, TV tuners, whatever, any device the user allows access
to. This special frame should also be able to be binded to ... broadcasted
data, live online streams over the Internet.
This could also be extended to allow playback of video data from files,
which could be controlled via DOM: previous/next N frames, statistics,
various info about the video, play/pause/stop, etc.
2. Similar to the video frame, but nothing visible, just audible: for
3. Give the possibility to have "chained filters", between the input data
(i.e. webcam) and the final output (played on the page, in the frame).
These filters could be JS functions ... or whatever script the browser
supports (might be Python, whatever). The function receives buffered data
of specified size and returns the processed data.
4. Have the possibility to broadcast from the user, on a limited range of
ports, if the user allows, the data from the device (microphone, webcam,
TV tuner, whatever).
Now ... you guys see where I am getting at: real Instant Messaging with
video and audio chat, but not only. There could be a wide range of
I am aware of the privacy invasion problems and what-not (making a server
to broadcast live data, allowing access to devices, etc).
I know there are serious complexities to overcome, arising with handling
video and audio data (codecs, and whatever).
Last, but not least, probably (most likely) JS is not a good programming
language for "chain filters", that's why I am suggesting to allow any
programming language the browser might support.
Adding these features to WA specification (any version, the sooner the
better) would really give future web developers the possibility of making
really advanced, true, web applications, not just web sites mimicking real
software. I know I wouldn't like web sites to access my devices, but there
are many cases when I'd like some sites I trust to be able to do this, if
they can allow me to use some advanced features (such as Instant
In my opinion, this is a logical step: give web applications, somehow,
access to the devices. You can't call a web site a true web application,
unless you give it the same power as a real application. This is one of
the reasons ... I'd also give access to web applications even to my entire
HDD and all other devices (such as, but not limited to, printers,
scanners, digital cameras, etc), but this is another story and ... I
believe it's somewhat "controversial".
For those who feel afraid to give freedom to web applications, due to
security concerns: I can assure you that the already new features of WA
1.0 can be exploited in "creative" ways by malicious authors: XML HTTP
Request, pushState, canvas, session and persistent storage, server-sent
DOM events, and network TCP connections. This is something inevitable, yet
this shouldn't hold back new features.
All of this makes sense specially for intranet applications: these can be
cutting-edge and are ran in a "controlled environment".
For all these features a very serious and very *strict* security model
must be conceived. I'd say even third-party approval: a web application
can't access any device without having some signed certificate which
allows only the required features, received from a third-party, trusted
server (like opera.com).
These advanced capabilities will probably be made available by the
browsers of the future, then some specification will standardize that
(just like with XML HTTP Request, canvas and more). Some way or another
these features will be available to web developers, if the web is set to
make real web applications.
What do you guys think? Is it not necessary yet? Is the suggestion too
early? Comments, ideas?
Anyway, WA 1.0 is a very important step towards real web applications.
ROBO Design - We bring you the future
More information about the whatwg