So recently a rather interesting Facebook discussion was kicked off but an article discussing Max/MSP. The discussion is trapped inside Facebook but the articles is available online here.
It is an interesting read the discussion about perceived value of items based on cost and why Max continues to enjoy the popularity that it does.
Personally I have found my use of Max declining even though I have continued to teach it. (Interestingly I think this has aided my teaching of the language as rather than having a focused area of current use I have instead focused on maintaing a broad methodology for others to extend.)
The reasons I started using Max are simple; it along side C was what I was taught.
In a race between C and Max you get something fun much quicker in Max, sliders, dials flashing lights and noises and I still believe that is Max’s best feature, the rapid prototype and quick to build methodology. (In C I built a calendar!)
However while the graphical interface is very quick to learn it does create massive complexities out of simple tasks and perhaps hinders a more detailed understanding of programming. ChucK, the text language I found is increasingly my first choice and while there are a number of reasons I think is the precision of the text interface and the language behaviour is facilitates which has caused this.
In the article the example of poly~ is given to illustrate the problems of the graphical language and within ChucK polyphonic behaviour is a matter of function reuse or class instantiation, clear programming methods.
I understand that the choice of tool is a personal one so all I am really suggesting is that if you have never considered a text based language it might be worth giving it a try.