Max progamming beginner

  • Is there a simple tutorial or way to get started with Max?

    I am good with code (html, java, action script, etc) but I don't quite understand the basics of Max.

    Can anyone give me an hints/tips or send me in the direction of a good tutorial?

  • the max tutorials that come with it are the best documentation you will find and the best documentation i have ever come across for any application or coding language.
    once you've been through a few of them, check this page out on the docs for some more monome specific examples
    http://docs.monome.org/doku.php?id=dev:max

  • When I first started I hated Max, it seemed total unintuitive coming from a traditional programming background "what do you mean I can't loop???", everyone said do the tutorials in Max (under the help section). I scoffed, it seemed way to much like reading the fucking manual, real men don't do that. But eventually I tried them and I have to say they are awesome, it's some of the best and well constructed help I've ever seen. I highly recommend, just starting at the top and working your way down playing with the example patches and looking at all the help files for every object you don't know.

    These days I'm much happier - although I still don't get it and I seem incapable of putting together anything half complex.

    My problem is shooting too far, I really need to focus on something simple and work through that then get more complex.

  • Is it necessary to use something 'more basic' at first then to jump into max? All my background is music based, not programming. I do use audiomulch and reaktor however.

  • I can only agree, max tutorials are great. They helped me a lot and I read it from time to time frequently.

  • @berryghil: Not sure there is much more basic that Max. It's pretty unique in it's drag and drop of objects. You don't really code you put flows in order.

    You're probably better off, not learning something else. ;-)

  • Once you get the basics down, what is nice in MaxMSP is that you have access to both Java and Javascript, so you can code out the parts that hurt too much to do graphically, and patch everything else. It is worth the while to learn it and tough out the tutorials.

    Also, the help patches for objects are also incredibly useful. You can even cut and paste from them!

  • i agree with the others: do the tutorials. yes, it sucks going thru them all and not actually making anything useful. and it feels like it takes forever, but it's worth the time/effort. they're quite well done.

    kid_sputnik: i really need to learn how to drop java in there easily (i.e. rtfm dummy!). i was so happy when i discovered how easy the "expr" object is, so i'm sure that'll extend to programming my own java objects.

  • I'd love to find some simple way to do http requests and response handling in max - that's my biggest missing chunk. Tried with the JavaScript but they don't allow any of the AJAX style approaches. I really just need a python wrapper or something.

  • i'd love for someone with some java/javescript knowledge to create some really simple objects to learn from. im starting to feel pretty restricted by max now.

  • I did some fairly extensive patching with max a while back, although now a bit out of touch. Trying to get back into it for m4l.

    I think it helps to have something you want to make to get going with max, i delved in by building a vj app for a uni project and learnt most things from the help files. If your a traditional programming its mostly a case of working out which objects do what youd expect functions from normal coding style do.

    I think the js object is useful if you want to drop back to traditional programming at any time. Im looking at using this to build some framework modules for use with m4l, ie doing bit shifting, loops and other stuff id rather not deal with graphically.

  • an example as to why the tutorials are worth reading; not only are they informative, they're also humorous.

    from the javascript tutorial, an example function:

    foo.local = 1;
    function foo()
    {
    post("what does Pd *really* stand for?");
    }

  • @jp - nick rothwell has an object to run python scripts in max - http://www.loadbang.net/space/Software/net.loadbang.jython

  • @stephen, yeah I saw that one a while ago whilst researchingÂ… downside is I'd need to learn python now. :-)

  • > I'd love to find some simple way to do http requests and response handling in max

    I would go with MXJ/Java. If you know js but not python, I would think it would be easier to get a grip on java than python (as far as syntax goes).

    The js interpreter in MaxMSP doesn't have any of the normal browser/DOM/XmlHttpRequest objects from web design. This makes sense, since these are not really part of the language as much as objects that the browser or OS expose to the browser's js interpreter.

  • Thanks guys.

    I want to create max patch that will allow me to record an APC40 clip launch. Real-time follow actions.

    I got to start checking the tutorials!

  • i still think it's pretty difficult to do, I don't understand a lot of the jargon used in the tutorials, still now I couldnt explain a 'bang' properly, that how much I don't get it....
    been struggling with Max for about 5- 6 months now...

  • To the same point, as long as you're trying to learn with the tutorials but you find your self having a difficult time, the cycling forum is a great place to get help. Just know that the more you tell them about your problem (example patch, objects your trying to use, to what purpose) the more they can help you.

    http://www.cycling74.com/forums/index.php

    Also, I bet if you have a monome specific question they would be answered here.

  • I found the tutorials helpful on one level and confusing on another. Sometimes the tutorial patch is more complex than the subject it's teaching. So you end up spending a lot of time following the flow and testing, which isn't bad but tough for the impatient ready to start messing around. I found as I was learning I would commonly open the object's reference page, check the ins and outs, open a new patcher and test the results I can get from that object by sending it some numbers.

    One gripe though that I do have with the Max Help window is that you can't seem to a search with more than one word. So many times have I had to put in a more general word and sift through the tons of objects that have this word until I find the right one?

    Have others noticed this?

  • egon77: it might help to just make the patch yourself, from scratch. that's what i normally do, instead of opening theirs up and just going "yea, that works...cool." it's more helpful to do it yourself, play with it as you build it, etc. then maybe you'll understand it better (at least, i feel like i do). which is the whole point, right?

    i will agree that some of their patches will include a "trick" tho that will take you a minute just to understand, even when it has nothing to do with the object being taught. when they could have just used objects you are familiar with instead of the trick, even if that would have occupied more space/cpu cycles.

  • Thats a good idea jmelnyk. Never thought of it actually. I think the best thing to learn sometimes is another way of doing something you already know your own way. It connects a lot of dots for other things you do.

    Have you noticed the issue with the help search?