i have tried learning pd thru bang(book) as well as floss manuals. worked thru the examples, and i have a basic knowledge now. is there some other language that is similar in structure or logic for which resources already exist? like pd is similar to visual basic (im sure its not) so i should check out a book about visual basic to get some higher level lernin.
-
PD is similar to what language?
-
not sure what you are asking but do you mean MaxMSP?
-
yeah exactly. i have used max/msp a bit also which is why i came into pd not totally clueless. but a language that is more common that might already have some books/guides/tutorials that kind of follow the same logic. that way there is a built in knowledge base i could look into. my problem is that i am not able to do what i want from the tutorials etc that i have followed.
-
Welll... What is it you want to do?
any technology distinguishable from magic
is insufficiently advanced. -
As Pd is graphical, i doubt that you could find many examples of similar enough programming languages.
"pd tutorial" in google returns a whole bunch of useful stuff. -
i don't see the point in studying another dataflow program in order to learn pd... Once you understand inlets/outlets, cold/hot inlets, execution order, signal/data, all you have to do is patching !
-
well, i dunno.... learning ANY other programming language will have some effect on the way you patch, and especially how you organise larger projects.
Learning a tiny bit of C++ helped me a lot with the way i approached PD.
-
To me, the best way to learn Pd is not to learn another programming language. Sure, any other language could contribute to your learning, as well as knowledge about laces and boxes could also contribute. I've never seen any programming tutorial about Python start with "go learn javascript, then go back to this tutorial". What if the js tutorial starts with "go learn C, then go back to me" ?
My advice to jmm :
* describe in clear terms what you want to do
* try to do it, step by step, make subpatches, abstractions : break your process down to pieces simples enough
* search the pd mailing list and this forum
* then only ask questions about how to do this and that -
There is nothing more similar to Pd than Max/MSP. The concept is the same, the differences are in implementation details (object names, methods to create subpatches etcetera). I learned Max/MSP first because that was taught at school and it has very systematic documentation. When I asked about Pd at school, the teachers told me 'it is similar, you can use what you want'. But yeah, it is a bit like dialects of a language. Only when you know the language you can make sense of a dialect. I was a total noob with computer music therefore I could not 'speak' Pd while 'hearing' MaxMSP. By the time I was familiar with the concept and workflow of MaxMSP, I switched to Pd. Without the pressure of following lectures and doing tests, I would have started with Pd right away.
I agree with mod that learning C/C++ is most helpful. Pd itself is programmed in C so you can look under the hood, see how it works and eventually program some externals yourself. There's a book from Eric Lyon about writing externals:
http://www.amazon.com/Designing-Objects-Computer-Digital-Series/dp/0895797151
I was a bit disappointed to see that it focuses on Max/MSP, with a Pd version of each Max/MSP class as a 'bonus'. But it explains the programming decisions which are valid for both. A howto written by Johannes Zmoelnig is about Pure Data only:
http://pdstatic.iem.at/externals-HOWTO/pd-externals-HOWTO.pdf
Katja