Confirmed users
610
edits
(Expand material further) |
(Expand material further) |
||
Line 1: | Line 1: | ||
'''This is a draft in progress describing a | '''This is a draft in progress describing a proposed project to bring a complete implementation of the Processing language to the open web.''' | ||
== Summary == | == Summary == | ||
"Processing for the Web" is a proposed Mozilla initiative to take the Java-based [http://processing.org/ Processing] language and environment (popular for art and visualization applications) and port it to the open web using standard | "Processing for the Web" is a proposed Mozilla-sponsored initiative to take the Java-based [http://processing.org/ Processing] language and environment (popular for art, design, and visualization applications) and port it to the open web using standard technologies such as JavaScript, [http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html Canvas], etc. | ||
The goals motivating the initiative are as follows: | The goals motivating the initiative are as follows: | ||
Line 29: | Line 29: | ||
== Why Processing for the Web? == | == Why Processing for the Web? == | ||
Why do "Processing for the Web"? Given Processing's Java syntax and heritage, wouldn't it make more sense to encourage people to move to using web technologies like JavaScript and Canvas directly, perhaps supplemented by JavaScript toolkits? And even if porting Processing to the web | Why do "Processing for the Web"? Given Processing's Java syntax and heritage, wouldn't it make more sense to encourage people to move to using web technologies like JavaScript and Canvas directly, perhaps supplemented by JavaScript toolkits where appropriate? And even if porting Processing to the web is a good idea, why should Mozilla get involved? | ||
We believe that this project can bring real benefits to the Processing community, to Mozilla products and the Mozilla community, and to the open web | We believe that this project can bring real benefits to the Processing community, to Mozilla products and the Mozilla community, and ultimately to the open web, for the following reasons: | ||
First, Processing has a large and enthusiastic community of people who have demonstrated creativity and innovation. | === It's good for the Processing community === | ||
First, Processing has a large and enthusiastic community of people who have demonstrated a great deal of creativity and innovation. Doing a complete and robust implementation of Processing using web technologies benefits that community in multiple ways: | |||
* It helps get more people involved in using Processing by lowering the barrier to entry—potential Processing developers would not have to download and install the Processing envronment, but could develop and run Processing sketches directly in their browsers. The resulting sketches could also be viewed in any modern browser, without the need for browser Java plugins. | |||
* It would help enable new types of Processing uses that leverage the power of the web, for example to access web-based data and services, enable web-based user interaction and collaboration, and so on. | |||
* Last but not least, it could also help enable easier collaboration on development of Processing applications, given suitable support in the underlying web-based Processing development environment. | |||
A high-quality web-based Processing implementation could help spark a new wave of innovative uses of Processing. These would be valuable both for their own sake and also for demonstrating and promoting the power of the open web technologies that made Processing for the web possible. | |||
=== It's good for Firefox and other open web products and technologies === | |||
* to serve as a forcing function to drive improvements in key aspects of Mozilla products and technologies, including [http://hacks.mozilla.org/2009/07/tracemonkey-overview/ JavaScript performance], [https://developer.mozilla.org/en/Drawing_Graphics_with_Canvas Canvas functionality], applications of [http://labs.mozilla.com/projects/bespin/ Bespin], and others | * to serve as a forcing function to drive improvements in key aspects of Mozilla products and technologies, including [http://hacks.mozilla.org/2009/07/tracemonkey-overview/ JavaScript performance], [https://developer.mozilla.org/en/Drawing_Graphics_with_Canvas Canvas functionality], applications of [http://labs.mozilla.com/projects/bespin/ Bespin], and others | ||
=== It's good for the Mozilla community === | |||
* to reach out to and increase cooperation with the design, art, and new media communities, both as part of the existing [http://education.mozilla.org Mozilla Education] program and as a key component of a proposed Mozilla Media program | * to reach out to and increase cooperation with the design, art, and new media communities, both as part of the existing [http://education.mozilla.org Mozilla Education] program and as a key component of a proposed Mozilla Media program | ||
== Notes == | == Notes == |