Some recent efforts at using Tracktion's Waveform's API to create some custom functions revived my interest in doing a bit of scripting / programming. The release of Ableton Live 11 reminded me that MAX has always been somewhere on my list of things "to do." So why not take advantage of the confluence of both of those things and use that renewed interest to learn more about MAX and M4L now?
So I've decided to give a go at learning a little bit about MAX.
When I've dipped my toe into MAX before, it seemed like a bewildering morass of "stuff," and the various and many tutorials and reference materials were not well organized. That appears to have improved markedly. Over the last couple of iterations, Cycling74 / Ableton have really put a lot of effort and thought into how to organize and integrate the learning resources and reference materials into the application. They are a lot more contextual and easily accessible.
I've also found a fantastic course about MAX on Kadenze called "Programming Max: Structuring Interactive Software for Digital Arts" from Stanford University. As described in the overview:
"Max programming, like most interesting topics, has deep aspects and shallow aspects. This course will largely focus on the deep aspects: principles, concepts, techniques, and theory. If you understand these underlying aspects, your capacity to create in Max will deepen exponentially."
So far, it strikes a great balance between the deep and shallow aspects of MAX and I've completed my first MAX patch that actually does something other than display "hello world".