Future “development”
Recently I had to think a lot about an eventual hardware and software configuration for a personal project - still on progress. Basically my aim is to provide PCs with a pre-installed software. The software has to be, as usual, visually and interactively compelling. After a bit of research I wanted to share my actual thoughts.
Operating System
When it’s about delivering a full solution, the OS is definitely an important part. Not only because the eventual cost of the license, for instance the Windows’ one, but also for the time you will have to spend on setting it up. Linux distributions are getting incredibly complete and Ubuntu, of course, is a good example. To set it up as second boot option on my old laptop was incredibly quick, especially with the 6.10, and having it working was much faster then setting up Windows. The cool things of Linux though, is that you can have LiveCD. In very few words, is theoretically possible to put in a USB key a generic OS and our custom application so that any machine could run our software in few minutes without any need to setup, pretty amazing.
Development Environment
For this kind of stuff I used to use Processing + OpenGL, like in bb-write, and so the first tests have been developed with it.
Adding complexity to the application, the performances start struggling. Usually it shouldn’t be a Processing’s issue, since it works just as kind of wrapper to OpenGL, but since in the past (link) I noticed a remarkable decrease of performances between the 92nd revision and the 107th, I can’t exclude it.
A lower level alternative to create executable could be C++, which I used during the OpenFrameworks workshop I attended at Ars Electronica this year. If I want to stick with Linux though, I should set up an IDE to deploy in Linux and we know how odd is to switch IDE in C++. The compatibility issues that changing a compiler could generate are very painful.
Programming Language
If I want to be able to switch easily from one OS to another I definitely need a higher level programming language. Two that don’t use any Virtual Machine, and so could be very tempting for their simplicity in setting up the PC, are Python and Ruby. They are very modern languages comparing to C++ and Java, and their interpreter generates temporary the bytecode so the application can run natively on the machine.
I have been totally shocked about the simplicity on creating a standalone application that use OpenGL with Ruby. In Python instead my attempt has been a bit of a nightmare, too many libraries dependencies and only one incompatibility can increase the pain considerably. It’s very difficult to say which is better between Python and Ruby, Python has so many libraries and Ruby is getting very popular recently only because of Rails, but the simplicity on deploying gave me a clear example about the quality of the architecture behind.
So this long post was only to say that at the moment I’m investigating both on Linux and Ruby, two technologies that seem to have great future.
Ha, i wrote a reply few days ago but stupid me- mistaken the math question and lost all the text, but it actually turn out better as i’ve read some more inbetween and now i have a bit different view on the topic, so here it is
i’ve been brainstorming with similar problems recently, i’m actionscripter but already want to escape the limits of vector graphics and was looking deeeply into Processing as the more powered graphics-oriented language (that’s how i found your blog). aslo i need to do a project next months that needs to work with mysql as well - flash cant
and then… i saw this your text and started rethinking… is processing very limited. what i don’t like in it is that i can’t compile to exe, and it runs in java - that i understand as small UI window sizes and processor overloading. so i was happy to read that you’ve been there and you’ve found Ruby (and Phyton but didn’t like it so much) so i started reading about Ruby and it’s amazin language, but there are things i didn’t like in it too.
you say it compiles to bytecode, but i didn’t find any info for that, it runs in VM just like java (and there is a wrapper to make it into .exe but all it does is puts all scripts libraries etc into one file and again runs the VM)
http://en.wikipedia.org/wiki/Comparison_of_programming_languages
also here http://shootout.alioth.debian.org/gp4sandbox/benchmark.php?test=all&lang=ruby&lang2=java
it says that ruby is way slowlier in calculations/operations (nearly all) than java (what Processing compiles to) so i start thinking that Processing is actually not that bad compared to Ruby but maybe better. somewhere i’ve read about ruby that the best way to use it for heavy applications is to write it all there as it’s easy to make the ideas work and then the parts that perform heavily to wrerite in C. i believe nothing works as good as compile-to-binary C but i’m not going to learn it
so i’d love to hear your comments

i hope i got the math right this time
zt
(Ops the CSS seems to be a bit broken :S)
Processing is definitely not that bad, I know many estimated people and friends using it. The point is basically that when you do OpenGL stuff the programming language works as a wrapper, so the performances will depend mainly by your Video Card. Of course code optimization at some point matters. You are right, Ruby is known as not being that fast and Java could be faster sometimes. It’s true also that they both use an interpreter but as you have noticed embedding the interpreter for Ruby is way liter/easier, difficult to compare to the JVM.
So I was very impressed by this “simplicity” of Ruby, of course easy to find in modern languages. My interest in it though is not only related to create standalone applications, I’m interested also on the mixture between OOP and dynamic languages to explore new frontier of productivity (Ruby on Rails is an example).
I won’t definitely leave Processing, especially if we consider that after what happened recently the possibility to generate standalone applications from P5 becomes closer, and of course I look forward that!
Forgetting… the byte code info was from a friend (never trust them!) and I’m sorry for your math mistake
Thanks for commenting btw, chr
thanks for your thoughts as well
very appreciated. i think for now it will be processing what i’ll be learning, it looks quite stright forward how it deals with mysql and can be used as serverside app. and its graphics manipulation is better than any other i know 
and the idea that java may get compiler to exe now that it’s opensource is very pleasing
going to dig now
ps: i htink i got the idea of the math, it always cuts me the first time, maybe i have to type faster…