To further my understanding of frequency analysis and the fast fourier transform, I have created an application that just turns on the microphone and continually plots the FFT magnitude of what it records. It allows control over the window size and sampling rate.
Because the FFT of a real valued function is even, we only display the first half.
It's fun to whistle and see the result. I think it would be cool to make a game out of this. For example, you could make pong and control the paddle with sound. I plan to call it Whistle Hero.
For some more fun, run soundlab at the same time as WaveStudio, an older application I made that lets you draw a waveform and hear it. That way you can see a waveform that you create in the time domain in the frequency domain, and hear it all at the same time. Its actually quite challenging to try to make a perfect soundwave, and eliminate all of the harmonics.