I just came across PulpCore, a open-source 2D rendering and animation framework for the Java plug-in. I found the demos really impressive, in part because the experience of launching them was so straightforward and non-intrusive. It made me think–wait for it–that I was launching something in Flash. But these are Java applets; it’s just that they’ve actually taken the time to subvert the normal launch process so that you’re not reminded that, first, this is written in Java, and second, this is going to take awhile. Go check out the demos, see if you don’t agree. Among others, there’s a fun, silly little game called Milpa, a cool compositing demo, and a nice demo with layered text, among many others.
Discovering PulpCore allowed me to re-discover two cool Java libraries, Phys2D and JBox2D. Both are ports of a “2d rigid body physics engine, written in C++ by Erin Catto” called Box2D. From what I could pick up on various forums and blogs, Phys2D is based on an older version of JBox2D; the API is apparently somewhat easier to use than JBox2D, but the latter has been working on improving performance over time, so that at this point, JBox2D is faster, but Phys2D somewhat easier to use. Whatever: they both demo well. I like that you can hit the space bar to cause boxes and beach balls to go rocketing into whatever pile of bricks are shifting around on-screen. Rigid-body physics doesn’t have to be boring.
Back to PulpCore. I think PulpCore has that first-day-of-spring feel to it. I don’t mean that it’s new, or that you can’t see the same types of graphics effect using a dozen different languages these days, but rather the author’s own enthusiasm for the thing comes through in the demos. The demos just seem cool to me. Nice choice of colors. Clean layout. Each demo has a clear focus. Sharp edges. Good user experience.
I get this same kind of feeling quite often with Processing demos. It’s somehow refreshing to me that people are writing these little apps, making this dynamic, evocative artwork, just for the sheer joy of it. They aren’t telling you they’ve found the next big thing, they’re showing you what something that makes them happy, that excites them, draws them in. Maybe they spent hours, days, weeks getting that demo to run well and look nice. All of that energy, focus, drive, and joy in creating this work comes across to the person viewing the end product, at least, that’s my experience of it. Check out the videos posted by flight404 on vimeo.com to see more of what I’m talking about.
I used to get this same feeling about the demos posted about a language then called F3. The language is now becoming a product–on the eve of it’s first full release–but in the meantime, the life has been sucked out of it; marketing is in full swing and we’re being told, again and again, how this will be (one of the) next big thing(s). But I miss that old feeling, that spark of life that I got from the first demos the developer of F3 used to post once a month or so. I don’t want to be told that I’m going to have the next big thing, I want to experience something–I mean, I don’t even want to experience something special, I’m not looking for that, but if you do your job right, that’s what happens–I pick up on your enthusiasm, the fun you had creating this thing. It’s the life that is on full display when someone discovers joy, excitement, something cool–and pours that into their artwork and it reflects back outwards towards you, the visitor. I hope that the technical work that’s taking place around F3–a full compiler, a new runtime, graphics libraries–will be thrown into the shoebox and they all end up as newer, better tools in the hands of people seeking joy. Me, I don’t need another stinking RIA app. I just wanna have a little fun.