milwaukee, Wisconsin, USA
I'm a coding moron
StoreTags: max/msp, programming, coding
Author: madeofoak on January 31 2008
Viewed 1596 times. 11 people liked this blog. You can rate it below if you haven't already.
--> so my inability to write my own shiz is becoming a real bother, especially with ableton. i know everyone here is way smarter than me about that stuff (i'm looking at you, erik), and i just wanted to know if there's any good online resources you'd recommend for getting started. how did you get started? what software/languages/etc do you use? and please break down your answers into language a complete moron could understand, because that's who you're dealing with here.
Read madeofoak's other blogs.madeofoak's Recent Blogs
Comments

1 | 2
i don't really understand what you are heading at. especially the ableton-part.

are you just asking whar kind of software/language we use? and about the tutorial stuff to that?

if so. i mostly just did all the max/msp tutorials and read the curtis roads books „computer music tutorial“ and „microsound“ that's basically it.
though i have to admit i totally suck at max/msp

besides. sometimes just visiting the cycling74 forum is sort of a learning-tool. just skimming through posts and read about how to solve stuff.

i know people write little patches in max to streamline their ableton setup (maybe a patch that records into the next open audio track when it recieves a certain midi command, etc), and i'd like to know how to get started. most specifically, i'd just like to be able to make slight alterations to patches or programs i've downloaded from forums. i just feel a little lost.

astroid told me: rtfm

i've always felt its more important how the music sounds than the means used to make it

thanks, lara! i know it's a real drag having to wade through the endless waves of noobs like me. i'll try to be smarter next time!

atum: couldn't agree with you more, but i find a lot of times where i'd be able to solve a specific problem if i had a wider base of knowledge about programming or source code editing.

if your goal is to write code, then I'd say tutorials and studying is the way to go.

if you want to run custom modules and instruments and modify sounds, I'd say start with what's already been built (in an environment that allows you to dig down) and hack up and re-port. start one layer deep, and if you're having fun and getting somewhere, you'll naturally dig yourself a level deeper... you can learn a lot from reverse engineering and just messing stuff up.

for ableton just load up a bunch of example patches and fuck around with them! At least get yourself feeling musical and confident in the environment before you run off and hack it, I think... tutorials + sample patches are the way to go in my opinion. If you create something you like with a canned sound, go with it.
here is my max/msp story:

before i could do anything at all, I started reading the max mailing list habitually. i understood NONE of it, but the more the lingo popped up in front of me, the more familiar it got, and that lead to bells going off sometimes. there was also a steady stream of new users asking the sort of questions I wasn't quite ready to ask, or hadn't thought to ask. so it was a nice balance of reading discussions between seasoned max users that went totally over my head (but did help me learn good questions to ask, or how to go about problem solving, etc etc) and reading discussions between seasoned max users and total noobs. also max users are totally weird and often lots of nerdy fun. it's a nerd zoo in there, i love it.

the number one piece of advice you will see on the max list is "do the tutorials and read the help files." there's just no way around it - I probably added two years or so to my learning curve because I avoided that process, but once I spent the couple months it took to go through the tutorials, things picked up a whole lot. this sounds boring and lame and it totally can be, but here are some things to make it fun:

- start with the first few max tutorials, because these provide you with absolutely essential info about the way things happen across the program. once you have a bit of a grasp of things like right-to-left message order, the differences in data types (max messages versus msp signals for example) and common conventions like 1 meaning yes and 0 meaning no and BANG meaning BANG, go nuts. Try to work through all the max and msp tutorials, but I wouldn't worry what order you do them in. Yes, they build on each other, but where's the fun in that? Jump ahead to MSP tutorial 28 on delay line feedback and start fucking with the default values in the example patch - hack it apart, and just dive in bindly. This is a lot of fun, you get to make noise, and you even can learn a little bit in the process! Then go back and check out the earlier tutorials that cover things leading up to it when you find something cool you want to know more about. Rinse and repeat. Eventually you'll still get through everything, but you can also get dirty and make some noise right away.

- remember EVERYTHING in max is a max patch. check out the help file for any object - that's a patch, unlock it and start tearing it apart. (save it as a copy though!!) open the file preferences dialog to set your search path - that's a patch, unlock it and tear it apart. (once again, copy and paste is your friend, start with a fresh copy!) just about anything you see in max is a patch that can be unlocked and messed with. i learned a lot about file handling by hacking apart the 'quickie' recorder in the extras menu for example.

the absolute best thing for me though was having a 'max sparring partner' - in my case mr bryan teoh. we were learning at the same time so we could bounce ideas and frustrations off of each other, and share solutions to problems etc. it makes the whole process way more fun, and two heads are better than one after all. we still do this.

doing things like learning good programming principles (break everything into smaller problems!) and best practices in modular environments are great, but really what helped me get from staring at a blank white box to actually playing the software as an instrument was just living with it and moving one step at a time. you can do it!

also i think it's a GREAT idea to get started by building pluggo plugins to add into ableton and elsewhere. i'd work on making little fun widgets based on help files and tutorials patches to start, and then learn how to convert them into a format that can be built as a pluggo (it's fairly painless, but there is a thing or two to know).

as always, I'm usually on AIM and i'm ALWAYS ready to nerd out over max/msp questions, so hit me up.

whew, THAT was long-winded.

madeofoak said: "thanks, lara! i know it's a real drag having to wade through the endless waves of noobs like me. i'll try to be smarter next time!"


i'm an asshole by proxy!

but yeh, max has a greeeat set of help files. between that and hecanjog, i'm set.

i just have to second hecanjog's reiteration of the advice "do the tutorials and read the help files". like really, do that one afternoon, work through as much as you can. do the same the next day. 3rd day do the same but as you are going through read about every object you are using, look the object up in the ref manual see the "patch" they show there, or the example usage (which may be different) and be sure to look up the related objects that are listed. when you run across something like groove~ that seems like it will be really really useful for sample-mangling try really hard to remember it. by the time you are a week in some of it should start making some sense. the trick with max is there are objects for messing with signals or sound, objects for controlling things (knbos, sliders, etc) and objects for controlling other objects. once you learn that you can have a lot of fun experimenting with hooking things up in weird ways.

ps. i am probably the least smart person on this site. i know no math. like seriously, all that equal power panning law equation stuff, i have no idea what is going on there with numbers and letters, but i know how to stick the formula into an object in max and get a panner. i think that is in the tutorial/manual stuff.

max/msp has a huge learning curve, but the documentation is the best i've seen for anything. im not saying just anyone could "learn" max/msp, but i think anyone willing to try that can and will read and absorb information can get a good handle on how to make some really fun interesting things with it. by this i mean get to a level you could make some of the things you dream up and try to make, and make lots of other really really neat stuff on accident as you try to make other things.

also i always had good luck asking my really stupid max questions on the forums here a few years ago when i was trying it, i think the hardest part with max is sometimes understanding the list of parameters an object may want and getting those formatted right.

also most people's patches are either a huge mess (wires all over the place, you can't tell what is what.) or everything is so abstracted out you don't know all the fun stuff is in some object you don't recognize the name of. so that can make things weird if you are trying to learn that way.

oh and the other main thing if you really know nothing at all about programming that you will need to know, i think the max documentation uses the following:
i or f when talking about numbers you can input/output.
i = integer - that is a whole number ie. 4 or -5 or 44100
f = float - thats a number with a decimal place like 0.5 or -0.025 or -333.33

also lots of times with audio/dsp/math/signal processing levels are going around anywhere between 0 and 1.
or stuff is happening at "audio rate" like when an lfo is fast enough you can hear it as a tone. someone else could explain audio rate better im sure.

those are some basic basics i wish i had know when i first tried max/msp/bidule/etc

pps. if you do the trial, save everything, save different versions, if you accidently make an lfo based stutterer save it as such, even if you were trying to make something different, that way you have a headstart if you want to make a stutterer later.
also you can add labels so you know what things do an color-code patch cables and objects to make things easier to look at and make sense of. i am hoping that side of things is easier/faster to do in max 5.

with both max/msp and jitter I've found that I've had to hit the tutorials a few times. When first starting out I made it through the first ten, then put it aside for like a month. When I came back to it I had to redo the first 10 tutorials (although the second time through was faster). I kept doing this for awhile until I finally made it all the way through the max tuts and about halfway through the msp tutorials. After that, I just started patching stupid one trick wonder patches which was good for creating techniques, applying ideas you learned in tutorials, and figuring out how things work on a deeper level. After you do that, send the patch to a maxxing friend (both erik and I would be happy to receive your patches I'm sure) and people can look at what you're doing and perhaps suggest alternative ways of doing things, or strip away unnecessary crap from the patch.

Really, max/msp is probably the best way to get into programming. It's visual, and artists tend to have an easier time figuring out how data is directed and how each object effects things, however the concepts that you see in max/msp are derivative of text-based languages, so if/when you decide to get into scripting or perhaps even coding in java or c or something, you're conceptual framework for coding will already be taken care of. You'll just need to learn new ways of saying the same thing if that makes sense. For instance, once you figure out how frequency modulation works mathematically, multiplying the numbers with a line of code is just as easy as patching a few objects together.

I wouldn't recommend the "computer music tutorial"...at least for now. It's an incredible tome of knowledge, but if you're feeling a little math/science stupid, it's not going to make you feel any better. IMHO, that book is much better after you've already been using some of the processes it describes. It'll give you a deeper understanding for how everything works on a nitty gritty level. For now, it'll probably just give you headaches.

The max/msp tutorials are bloody phenomenal. Do them, force nomad palace to learn along with you, and make sure to send me all your patches so I can steal all of your ideas.

the max/msp tutorials are great. As far as a place to start with max, there is none better.

using these types of tools can be a tiresome process. Do in max only things that are impractical elsewhere. IMHO, wanting to learn max so that you can make your own loop-based sequencer is quite simply a bad idea. Existing loop sequencers might not be perfect, but trust me, your max/msp thing will not be perfect either and it will take you a lot of time and effort that could be spent making music. EnergyXT or something would be much better.

On the other hand, max can be used to control ableton if you're making teh lopz, which can be a very fruitful pairing. This is what monolake does.

Can you be more specific about what problems you're facing that you'd like to use a max-like tool to help solve? in other words, what do you want to do with max/reaktor/whatev?

I'm in the same shoes Madeofoak, I've been playing with other peoples patches and tinkering with their patches for a few years now. I always have this kind of guilt run over me when I use them because it's someone elses work. I've got my nose in max5 now and I'm finding it easier to pick things up from it.

maybe it's because it looks pretty...after max I've got to learn supercolider then reaktor!

1 | 2

Register / login
You must be a member to reply or post. signup or login