Hello everybody,
It took a while to set up, but we're now running a fund-raising campaign for GridFlow documentation efforts.
GridFlow is a multidimensional dataflow processing library intended for interactive video/sound art. You can use it within PureData (http://puredata.info , an Open Source alternative to Max/MSP) or Ruby itself, on Linux, OSX and Windows.
This fundraising campaign aims to enable Mathieu Bouchard, the creator of GridFlow, and associates if relevant, to write a workshop-style book and better documentation for GridFlow classes.
We believe GridFlow is extremely powerful, in that it allows a user to create a Puredata object without having to learn C, in a language designed for creative productivity.
Using GridFlow, it is possible to write a functional PD object in a couple of lines of clearly understandable Ruby, a programming language extremely well suited to beginners, but powerful enough for programming experts.
However, currently, the documentation is not thorough enough to help people get started as well as it could.
Imagine the power of your own Puredata objects without the C/C++ situps, and donate to help us achieve a textbook for newcomers to both puredata and interactive art programming!
Matthieu Bouchard does not currently have a way to handle online donations, so I will be managing donations through a secure PayPal account.
To learn more about GridFlow, why it is the bee's knees, and how to donate, see here:
http://www.davidcasal.com/gridflow.html
Thanks for reading,
David
-- # David Plans Casal
problem.each { |day| assert_nil(spoon) }
I support all documentation efforts, of course, and GridFlow does sound quite useful, but I have to say, you don't need C, C++, or GridFlow to write your own Pd objects. You can write Pd objects in Pd itself.
Looking forward to those docs, so we can sway more Jitter users to the open-source side of Max.
.hc
On Sep 29, 2005, at 5:34 PM, David Plans Casal wrote:
Hello everybody,
It took a while to set up, but we're now running a fund-raising campaign for GridFlow documentation efforts.
GridFlow is a multidimensional dataflow processing library intended for interactive video/sound art. You can use it within PureData (http://puredata.info , an Open Source alternative to Max/MSP) or Ruby itself, on Linux, OSX and Windows.
This fundraising campaign aims to enable Mathieu Bouchard, the creator of GridFlow, and associates if relevant, to write a workshop-style book and better documentation for GridFlow classes.
We believe GridFlow is extremely powerful, in that it allows a user to create a Puredata object without having to learn C, in a language designed for creative productivity.
Using GridFlow, it is possible to write a functional PD object in a couple of lines of clearly understandable Ruby, a programming language extremely well suited to beginners, but powerful enough for programming experts.
However, currently, the documentation is not thorough enough to help people get started as well as it could.
Imagine the power of your own Puredata objects without the C/C++ situps, and donate to help us achieve a textbook for newcomers to both puredata and interactive art programming!
Matthieu Bouchard does not currently have a way to handle online donations, so I will be managing donations through a secure PayPal account.
To learn more about GridFlow, why it is the bee's knees, and how to donate, see here:
http://www.davidcasal.com/gridflow.html
Thanks for reading,
David
-- # David Plans Casal
problem.each { |day| assert_nil(spoon) }
PD-dev mailing list PD-dev@iem.at http://lists.puredata.info/listinfo/pd-dev
________________________________________________________________________ ____
As we enjoy great advantages from inventions of others, we should be glad of an opportunity to serve others by any invention of ours; and this we should do freely and generously.
- Benjamin Franklin
On Sun, 2 Oct 2005, Hans-Christoph Steiner wrote:
I support all documentation efforts, of course, and GridFlow does sound quite useful, but I have to say, you don't need C, C++, or GridFlow to write your own Pd objects. You can write Pd objects in Pd itself.
But languages are not created equal and that's (one of the reasons) why there are so many of them.
If PureData was really easy to use all of the time I wouldn't have been tempted to code so much of GridFlow in Ruby instead of PureData.
I'd like to tell people to code their object-classes in PureData itself (i.e. as abstractions) all of the time, but I wouldn't feel that honest. I'll be happier with PureData once the abstractions have access to the same abilities as externals. Currently, abstractions are second-class citizens in the PureData world.
Looking forward to those docs, so we can sway more Jitter users to the open-source side of Max.
David is talking about the Ruby side of GridFlow, which has no equivalent in Jitter.
Jitter is more like the rest of GridFlow coupled with something like GEM-Geos or 3DP.
Recent versions of MAX can handle Java and JavaScript externals straight out of the box. You can also get C++ and Python support using Flext and Pyext. It would be possible to adapt gridflow/bridge/puredata.c so that it also compiles as a MAX external (though I dunno who would do that, as I can't even get someone to work on the OSX port of GF)
____________________________________________________________________ Mathieu Bouchard - tél:+1.514.383.3801 - http://artengine.ca/matju Freelance Digital Arts Engineer, Montréal QC Canada
On 4 Oct 2005, at 03:52, Mathieu Bouchard wrote:
David is talking about the Ruby side of GridFlow, which has no equivalent in Jitter.
Recent versions of MAX can handle Java and JavaScript externals straight out of the box.
This is indeed what I'm trying to point out. Javascript is underestimated all the time as a language, and having it in Max is a paradigm shift, IMHO.
Ruby is a step up from that, in that it allows access to true OO (please dont' bash me over the head with PD OOness here), access to the rest of your machine without PD sit-ups, and access to whatever libraries you care to mention (plus writing your own, of course), and direct bindings for C libraries, etc etc etc.
It would be possible to adapt gridflow/bridge/puredata.c so that it also compiles as a MAX external (though I dunno who would do that, as I can't even get someone to work on the OSX port of GF)
Hmm. Must volunteer ;-)
d
On Tue, 4 Oct 2005, David Plans Casal wrote:
On 4 Oct 2005, at 03:52, Mathieu Bouchard wrote:
David is talking about the Ruby side of GridFlow, which has no equivalent in Jitter. Recent versions of MAX can handle Java and JavaScript externals straight out of the box.
This is indeed what I'm trying to point out. Javascript is underestimated all the time as a language, and having it in Max is a paradigm shift, IMHO.
Javascript is AFAIK already used to write a large part of Mozilla/FireFox, no?
And what qualifies something to be called a paradigm shift?
Ruby is a step up from that, in that it allows access to true OO (please dont' bash me over the head with PD OOness here), access to the rest of your machine without PD sit-ups, and access to whatever libraries you care to mention (plus writing your own, of course), and direct bindings for C libraries, etc etc etc.
Connecting to C libraries isn't automatic, but there's a Ruby/DL tool that can help. For C++ there is SWIG, which currently can't export towards Pd, but can export towards Ruby and Python and such.
Pd is a lot different because its messages never have return values, which is something SWIG can't deal with. This requires reorganisations and/or workarounds. What's a float(*)(float) in C becomes an extra outlet _and_ an extra inlet in Pd, and that's only if you aren't expected to change the pointer in the meanwhile, because that'd mean you're screwed.
Ruby and Python have their own interesting libraries, which are not available in regular C/C++.
____________________________________________________________________ Mathieu Bouchard - tél:+1.514.383.3801 - http://artengine.ca/matju Freelance Digital Arts Engineer, Montréal QC Canada
On 4 Oct 2005, at 09:24, Mathieu Bouchard wrote:
This is indeed what I'm trying to point out. Javascript is underestimated all the time as a language, and having it in Max is a paradigm shift, IMHO.
Javascript is AFAIK already used to write a large part of Mozilla/FireFox, no?
It is indeed. But most people ignore Javascript as a 90's webby thingy.
And what qualifies something to be called a paradigm shift?
When that something changes the nature and process of the work people do with the framework dramatically. Before, I worked in abstractions and tried to find other people's externals that might do what I wanted; I tried to study C. Now, I enjoy myself and write ruby objects. Not big, not clever, but I'm getting more work done than I ever did in a year, in a month.
That's a paradigm shift as far as I'm concerned.
Connecting to C libraries isn't automatic, but there's a Ruby/DL tool that can help. For C++ there is SWIG, which currently can't export towards Pd, but can export towards Ruby and Python and such.
SWIG is still hard to use IMO, but it would be great to have a small SWIG/DL tutorial for Ruby/Puredata, maybe...
Pd is a lot different because its messages never have return values, which is something SWIG can't deal with. This requires reorganisations and/or workarounds. What's a float(*)(float) in C becomes an extra outlet _and_ an extra inlet in Pd, and that's only if you aren't expected to change the pointer in the meanwhile, because that'd mean you're screwed.
Yeah. Wow.
Ruby and Python have their own interesting libraries, which are not available in regular C/C++.
Quite.
Does that mean we agree that it's a good thing? ;-)
d
-- # David Plans Casal
problem.each { |day| assert_nil(spoon) }
"Actionscript" the flash language is actually almost identical to javascript, at least it used to be (I've heard the new version has changed a lot again).
Anyhow clearly this market approach is to attract the 10000s of flash motion graphics people to tinkering with max/jitter.
Some people make installations and even perform in flash... I'm happy to have dropped that line in 2001 for pd/Gem.
b.
David Plans Casal wrote:
It is indeed. But most people ignore Javascript as a 90's webby thingy.