Follow

// how to quickly make
// a drone out of 100 sawtooth
// oscilators in

(
100.do({
{Saw.ar(
freq: 71
+ [5.0.rand,
7.0.rand])
* 0.08
}.play;
})
)

//

when I saw ".do" method demonstrated in I decided to switch from PureData. if there was about 5-10 characters difference between one oscilator and 100 or even 1000 of them, that seemed to me THE power of a typed programming language versus patcher graphical programming language like Max/MSP and/or Pure Data.

Show thread

// another version of drone with
// resonant low pass filters
(
150.do({{
RLPF.ar(
in: Saw.ar(
freq:71
+ [5.0.rand,
7.0.rand])
* 0.06,

freq: LFNoise1
.kr(0.1.rand + 0.01)
.exprange(50,10000),

rq: 0.5.rand
+ 0.1
)
}.play;})
)
// @LearnToMakeMusic

Show thread

@luka pd has [clone] now, but I am no longer a fan of visual patchers either.

@mathr found this and it was fun to watch. especially the occasional swearword by the robot, ha!

invidious.xyz/watch?v=jGgu77pC

@luka

Ughh supercollider is a stunningly gorgeous programming language.

It is so concise and clear that I dont think a visual programming language like max msp or even graphical UIs for synths can actually be any more descriptive in such a small amount of space.

@LearnToMakeMusic

@Alonealastalovedalongthe

well. it becomes complex and there's a steep learning curve, before you understand what is part of the language side and what server side and all the basic concepts in the background... but yeah, with practice (and abandoning the idea that you can know everything) it gets amazing.

on one hand there are so many helper methods for a lot of math, and on the other there's loads of different 'dialects'.

once you get deep you see it's very deep.

@LearnToMakeMusic

@Alonealastalovedalongthe

to be fair, the steepness of the learning curve is aleviated with possiblity to start having fun with first line of code. just using {}.play and pluging UGens here and there you can get really far with great sounding stuff. every now and then you stumble at something that doesn't work although by your logic it should work. and that forces you to dig and ask q's.

fortunately, the community is proly the friendliest on the internet. especially jhj!

@LearnToMakeMusic

@luka
@LearnToMakeMusic

Yah the server - client architecture with synthdefs and stuff is complicated, I do wish there were more tutorials that showed you {}.play examples that also didnt mislead you into thinking the majority of your experience with supercollider will be through the {}.play paradigm.

@luka @LearnToMakeMusic

I think that is really my only gripe with the server-client thing, it is a little clunky for most peoples use who arent doing super powerful or networked stuff, but even still the synthdef format is easy enough to parse once you understand what it is you are doing when making and calling them.

Its just the fact that everyone gets onboarded with {}.play examples and then the bait and switch happens and its like bam synthdefs are what you must use.

@Alonealastalovedalongthe

I think it's just the wide horizon of dialects and ways how to do stuff is amazing but also overwhelming.

Not to mention quarks and plugins.

@LearnToMakeMusic

Sign in to participate in the conversation
SoNoMu

SoNoMu (Sound Noise Music) is a mastodon instance for musicians, sound-artists, producers of any kind of aural noise, songwriters, bedroom producers, sonic manglers and algorave livecoders. -> more...