Hacker News new | ask | show | jobs
by bGriz 4331 days ago
I'm naive. What makes this comparable to - or better than - D3 js, Easel js, Three js, Raphael js, Kinetic js, Paper js, Famo.us js, Impact js... and boy I'm sure I can think of many more. I realize they don't all share the same feature sets... but I'm not understanding what makes this new or exciting.

Edit: Maybe I don't get the "processing" part... isn't this about creating interactive experiences? The examples demonstrate so and I didn't see examples of processing complex data sets or anything. Would love to hear some elaboration on it.

I noticed the statement "p5.dom lets you interact with HTML5 objects beyond the canvas, including video, audio, webcam, input, and text." This is interesting. Perhaps the point here is P5 manages more interactive components without the developer having to mash different tools together?

4 comments

Read "The Nature of Code" [1], by Dan Shiffman (the same Dan in the Hello video linked above), and you'll instantly understand the difference between Processing (and P5.js) and other languages/frameworks.

In the same way that Arduino brought hardware hacking and IoT for the masses, Processing does the same for creative coding. There's a ton of people out there that are not experienced hard core developers using Processing to create data visualization, interactive installations, games, and experiences mixing sound, vision and graphics.

The P5.js basically unlocks the power of Processing by expanding its canvas, from a monolithic desktop app to the browser. And this is a great step forward. Besides, Lauren is doing a great job creating a community around the project.

[1] http://natureofcode.com/book/

> There's a ton of people out there that are not experienced hard core developers using Processing to create data visualization, interactive installations, games, and experiences mixing sound, vision and graphics.

Processing was more or less how I got into 'serious' coding. It was ActionScript -> Processing -> Everything Else for me. It really cuts down on the bs and the boilerplate and lets you get started with getting your thoughts visualised on the computer, without worrying about the underlying technologies.

There's plenty of reasons why there would be such a state of affairs. Probably the biggest is that there is no clear winner in this space. D3 is shoring up, but it is quite a bit more complex for non-devs IMHO than what this looks to be. Frankly this is a pretty lazy comment. You could just look at the link's "Start" page for <5 minutes and see for yourself why it's different enough to warrant existence and could legitimately be in the running with the X other JS frameworks that have overlap in canvas drawing.

I mean it's in beta, clearly, and people are in here harping about the accessibility of one of the presentations on the site and comparing it to relatively mature (eg D3 is on v3) frameworks. That isn't very fair.

| You could just look at the link's "Start" page for <5 minutes and see for yourself why it's different enough to warrant existence

Honestly I'm not seeing what's different. I'm working on a hybrid canvas/html5 feature app right now. A good portion of the API (p5js.org/reference) feels, well, typical.

I don't want to discredit the project, it does look nice. You're point about beta is good.

In fairness, this appears to be targeted towards non-programmers, and having been deep in UI for years I may be missing the simplicity sake.

Also, I had no interest in slamming them for a temp broken browser context... rather I'm trying to understand what makes this awesome. In years of browser UIE I hadn't heard of http://processingjs.org/.

Yes, the "processing" refers to the name of a programming language / programming environment originally founded / created by people at the MIT Media Lab.

It is not referring to "processing" anything as a verb, but the name of the programming language outlined at https://www.processing.org

processing.js and this p5js are interpreters for the processing language built in javascript (so that people can write processing scripts in javascript).

You probably haven't heard of it in browser ui/development because it's not specific to the browser.

Many people use it to build interactive art environments both virtually and in the real world (tied to things like servos and light machines, etc) - and a lot of people use it to teach interactive graphics to kids or newcomers to programming.

So it's a totally different thing than what you are thinking of. It doesn't compete at all with any of the graphics libraries because it's for a different purpose.

If anything the community behind processing is sure to make this quite a lot different than D3.

Browse around here and you will see.

https://www.processing.org/

| Frankly this is a pretty lazy comment.

I agree and had been revising my comment after-the-fact. Sorry the reddit world showed its face there. Perhaps the really excited guy in the P5 hello video throws me off, because while it might enter competition with existing frameworks it showcases features that have existed through other manifestations.

Processing isn't about data. It's about graphics. The original, is a playground environment based on Java for making computer graphics and such. Think of it as programming for non-programmers.

Processing.js brought the Java toolkit to the web. You could basically insert a script tag and your Processing code would run within a Canvas object.

P5 here apparently improves upon Processing.js, letting you "escape the canvas" if you so choose.

I appreciate the point that it's oriented towards non-programmers.
> I appreciate the point that it's oriented towards non-programmers.

I dont think it's oriented towards non-programmers.It's an abstraction of web apis sure,but non-programmers wont magically turn into "creative coders" with a framework.

The original, Processing, took off because it was easy to share snippets of code and then modify variables to make it work. So indeed, non-programmers can write code, by copying and pasting. They're already creative... they want to make something that looks cool, they aren't sure how they'll get there, but they'll know it when it's done (or they run out of time to tweak).
> Edit: Maybe I don't get the "processing" part... isn't this about creating interactive experiences? The examples demonstrate so and I didn't see examples of processing complex data sets or anything. Would love to hear some elaboration on it.

I dont think that's the goal of processing,nor p5.D3 is the data visulalization framework of the web.