Max vs Pd 2015 (pros and cons of both) (also, education)

Ploki's icon

What are the pros and cons of both in 2015, for beginners AND for someone who plans to delve deeper into it?

Also, as a separate pro/con, for education purposes for beginners

vichug's icon

Max pros :
-easier and nicer to do everything
-there are a lot of things that you can't do with Pd ; technologically-wise
-you can compile easily apps for Windows and OSX
-ease of use of super nice tools like Mira and Max for Live

Max cons :
-OSX and Windows only, no little linux machines, no phones
-pricy, especially if you consider everything you can potentially buy to take full advantage of all its functionalities (the ipad for Mir, Mira, Live for M4l, and M4l)
-less flexible, less reactive developpers community maybe, no access to source so if there is a bug you have no choice but to wait for official support

Pd pros :
-pd runs on linux mac windows, even microcomputers, even android
-pd is free
-you can use a compiled patch (nearly) anywhere with libPD
-you can edit the sources and if you so want, make a fork
-the more epured interface allows sometimes for things that are sleeker. Most of the time though, it's not as cool
-everything is harder to do, but there are some nice things that are less cool/don't exist in max : the low-level array system with pointers and whatnot ; the patchers with "show gaph on parent" that can be instantiated directly
-pd extended includes by default a lot of community content

Pd cons :
-everything is more prone to bugs ; you may have more time trying to compile/install/solve weird bugs, especially on Linux (well since there is no max on Linux, it's difficult to compare of course - but the osx version also has its quirks)
-developpement is tied to the volunteering efforts of a handful of very knowledgeable and busy persons, so it is not going evenly in all directions, even less crash-proof ; and there is of course less care for the less computer-savvy end user
-pd extended hasn't seen an update in a while
-everything is more difficult to do - less high level nicely presented (and useful tbh) things
-in french, the abbreviated name doesn't sound right.

I tried to be as objective as possible - however, keep in mind that i use Max a lot more than Pd

nicnut's icon

I think Vichug pretty much covered everything. But I will add this, which I don't know if it's a pro or cons, but in Max you need to specify an int or a float, and in pd everything is a float. Also, maybe it's just me, but I feel like the pd sounds more old school to me, a sound I haven't been able to get in max. Max sort of sounds cleaner to me, but this could just be because I'm not as experienced with Pd as with Max.

Wetterberg's icon

@nicnut perhaps you're referring to saw~, rect~ and such, which are antialiased?

That "oldskool" aliased sound certainly is... easier... to achieve in PD.

Ploki's icon

Thank you all for answering, nice to see what you guys think.

@RAJA_THE_UNNECESSARY_OPINION
I did check the forums for similar threads, since Pd hasn't been really updated since 2013 (vanilla 2014), i doubt i could get better answers in 2015.

As far as I looked into it, the best thing about Pd is Pdios, Pddroid, lippd and similar that allow you to directly port things to other platforms, however as far as I know libpd and similar extensions rarely go beyond using Pd vanilla, meaning, while it makes Pd very versatile, it also makes it very rough to work with.

nicnut's icon

@wetterberg Ah, that makes sense. Yes, in Pd you only have one oscillator, you have to create your own saw~, tr~, and rect~, I think using a phasor~. I went through some pd tutorials awhile back and learned a lot doing that, but I didn't know what anti aliasing was until now, I just looked it up.

Ok, maybe this should be a new thread, but is there a way to achieve that aliased sound of Pd in Max? Would it be possible to make oscillators like that in Max? I kind of like that sound.

thanks, Nick

Ploki's icon

@nicnut yes of course. [phasor~] works the same in Max as it does in Pd, so you can use phasor as your start point.
If thats not enough, search the forums for "Gen simple oscillator". Mostly all are not antialiased since its tricky to implement it.

vichug's icon

the PD community is very responsive if you go on irc or mailing list, and i think vanilla is more up do date on M.Puckette's perconnal page : http://msp.ucsd.edu/software.html
the infos are maybe less centralized than for Max, but there is a huge and active community for Pd as well :)