Thanks for offering to look at this! Any feedback you have is appreciated.
I've been making snack-sized articles that run code, and considering writing one for introductory synthesizer concepts of oscillator waveforms and timbre.
The Web Audio API is super cool. I've been playing around with it, mostly with the nice and "declarative" wrapping library Tone.js.
I'm planning on using it to include visualizations and offer readers a synth they can play with in the zxcvbn neighborhood of their keyboard.
Some things in my mind:
- This is an opportunity to make a really different experience rather than a straight-reading article, and I'm not sure my plan is weird enough yet.
- Is there anything important I'm missing?
- Is this too little or the right size of content to cover?
- Creating a good mobile experience might require some thinking I haven't done yet
Here's the outline:
- A general introduction to waveforms.
- Display the shapes of common waveforms (sine, square, sawtooth, triangle).
- Discuss the sine wave, how it is a single fundamental/pure note. allow the user to listen to it and play an interactive keyboard.
- Switch to the square wave, the reader notices the difference timbre.
- Explain how overtones work with different waves to create dull/bright sounds. Show a live updating frequency equalizer graph while the reader plays a keyboard and switches between the square and sine waves.
- I should provide examples of waveforms from actual songs folks can listen to in context
- Maybe include an exercise section where you listen to a recognizable synth sound from a song like Van Halen's Jump and try to reproduce it by picking the right waveform.
Thanks for reading!