Home  >  

John Resig and Processing.js

Author photo
| | Comments (2)
AddThis Social Bookmark Button

Processing is a programming language invented, at least in part, to bring the power of programming to designers. It's a powerful visual oriented language focused on rendering animations and interactions. Several artists have been doing some really amazing work in Processing lately, giving it some well-earned noteriety in places like Wired magazine.

Until now, Processing was pretty much of limited use for real production applications. It was cool for artists and even mocking-up interaction-based apps, but didn't run natively in any platform users are on.

On May 8th JavaScript guru John Resig changed this by releasing Processing.js - a port of Processing to JavaScript. Processing.js allows some unparalleled interface designs without the use of a plugin. It's like watching Flash running natively in your browser, and the code is about as clean as AS2 ever was. The examples I've seen so far are limited, but it's not hard to imagine how a few open-source developers with a little time on their hands could write the core components required to make this language powerful enough to rival plugin-based solutions like Flash and Silverlight.

Check out some of his examples:


Processing graph example

A live, molten bar and pie chart


Processing snake example

A mouse-chasing snake

It's worth noting that the people at Processing don't consider themselves to be in competition with Flash:

There are things that are always going to be better in Flash, and other types of work that will always be better in Processing. But fundamentally (and this cannot be emphasized enough), there is no all-or-nothing game… We're talking about tools. Do people refuse to use pencils because pens exist? No, you just use them for different things, and for specific reasons. If Processing works for you, then use it. If not, don't. It's easy! It's free! You're not being forced to do anything.

While porting the language to JS definitely strengthens the case for a "flash killer," I think it's still a while in coming. There are certainly still large differences between building an application in a plugin language like Silverlight or Flash vs. AJAX / Javascript. Applications will obviously need a wider range of tests in different browsers, but I expect those sort of nuances to be handled by the library as it matures. The real struggle for JavaScript based applications will continue to be memory management, as their dependence on the browser's often poor management system can lead to real memory nightmares. Plugin applications certainly won't be rendered obsolete by Processing.js, but they may be surprised to find it more of a competitor than they'd previously thought.

Read more from RJ Owen. RJ Owen's Atom feed rjowen on Twitter

Comments

2 Comments

Andrew Trice said:

Definitely very interesting and worth keeping an eye on. Too bad it requires the canvas html tag, which isn't fully supported in all browsers yet.

christian said:

Processing.js is incredibly powerful library but it is, and will always be, incomparable to Processing (P5). Despite sharing the same syntax and thus philosophy, code should be quick and easy to type (Processing, in facts, was focused on teaching programming to designers), the stronger feature in Processing is that it is java based thus very extendible and easy to interface to hardware (from movie generation to computer-vision through network process). Still lot of respect to P5.js though!

Leave a comment


Tag Cloud

Question of the Week: Dream App

If you had an unlimited budget and unlimited resources what application would you build and why would you build it?

Answer

Latest Features

Recommended for You

@InsideRIA on Twitter

Archives

  • Or, visit our complete archive.  

About This Site

Welcome to the premiere community site for all things RIA sponsored by O'Reilly Media and Adobe Systems Incorporated.