Archive for the ‘technology’ Category

Google Top Draw: a Processing killer?

Saturday, October 4th, 2008

Another algorithmic drawing program hit the scene this week in Top Draw, a Mac-only program from Google. Much like Processing or OpenFrameworks, it provides a language to write code that produces images.

Top Draw was developed by one Dan Waylonis. You write object-oriented JavaScript code that is translated into images. The object-orientation differs from Processing and OpenFrameworks (and OpenGL and JOGL), where you write using the methods of one big class. And the methods are different. So for someone used to Processing-style methods (which are shared with OpenFrameworks), it’s a bit of a learning curve.

The big thing that Top Draw brings to the table is access to Apple’s CoreImage filters. Among other things, they allow you to transform 2D space with bumps and holes. Processing does not have this stuff built in, and I don’t think anyone has created a library to either use CoreImage on the Mac, or implemented the filters in Java. It would be cool stuff. ActionScript also has filters.

There’s some confusing extra functionality that lets you make a drawing your desktop image, or rotate through drawings. Neat, but really almost a separate program.

Top Draw is written in C and is licensed under the apache 2.0 license. The source code and the download is available on Google code.

So is it a Processing killer? I don’t think so. On the plus side has the CoreImage filters going for it. On the other hand, the language is awkward. The biggest issue is that it’s not a web application; even though you write in JavaScript, the library itself is in C. Processing sketches can be shown on the web using the moribund Java applet technology, and ActionScript can create Flash applications. It seems to me that almost everything must run on the web these days. Processing even has a JavaScript implementation (processing.js) that lets you run sketches using JavaScript in the browser. In this way it’s more like OpenFrameworks or OpenGL, which can’t run in a browser. And of course Top Draw only runs on Mac.

All in all, a good way to play with CoreImage filters.

Lightlink internet access

Thursday, March 22nd, 2007

In the innermost circle of my pet peeve inferno repose those unlucky souls who bemoaned the $5 per month to have wireless access through Lightlink at almost every coffeehouse, restaurant and bar in town (excepting Starbucks, of course, but that’s another story). If we didn’t have Lightlink, we would have a patchwork of more expensive and annoying services from big corporations; and these services wouldn’t have any free access time at all.

So pay the $5 per month, people, if you can afford it. It’s not much more than the cost of two lattes…

The lightlink supercomputer

Wednesday, March 21st, 2007

Due to my close industry connections, several months ago I heard that local Ithaca NY internet service provider Lightlink planned to purchase a supercomputer and rent out processing time. It appears that I can rip up my NDA, so to speak, since there’s an article in the Ithaca Times this week about this project.

It seems that it’s more of a cluster than a supercomputer, though. There’s a lot of talk about the number of CPU’s (1000 to start). It’s probably a Beowulf (wikipedia) cluster. (Geeks — feel free to weigh in with speculation on hardware, software and/or performance in tthe comment section). This approach is suited to applications that are parallelizable in in which each execution thread is mostly accessing a small set of local memory — I know of applications where the memory required would be in the order of tens of GB, and the execution thread would be accessing this in an unpredictable manner, so all of the memory needs to be fast.

Google’s servers are mostly clusters of commodity PC’s — but Google’s applications parallelize very well [The famous Google IEEE paper, now getting a bit out of date].

I was going to say something about the energy cost of 1000 CPU’s — using the numbers in the google paper, it might be something like $120,000 per year. But that paper is a few years to of date, and nowadays there are 2 or 4 CPU’s on a single chip that uses the same amount of energy, so perhaps it could be a factor of 5 lower — perhaps $24,000 per year.

NX Server (FreeNX)

Monday, March 19th, 2007

I installed NX Server inside my firewall. I like it as an alternative to other windowing systems, e.g. VNC or running an X server under cygwin. It’s secure, but it requires that a lot of ports be opened up in addition to port 22 (ssh), and I need to figure out how to run it in idiot-proof mode from outside the firewall.

It’s a lot faster than VNC.

For now, I still recommend VNC over ssh, or X clients over ssh, as an easy and secure way to connect through a firewall.

Eclipse Plugins

Wednesday, March 7th, 2007

Found out about a cool Eclipse plugin – Azzurri Clay – lets you define databases in eclipse.

I also like

PDT – PHP editor

Subclipse – Subversion plugin