Basically a Schmidt trigger works with PWM pulse width modulation.
If you are really interested in knowing all the workings of Schmidt Trigger and PWM then check the links below.
Schmidt Trigger Wikipedia
Pulse Width Modulation Wikipedia
Step 1: Circuit and Testing
The fan will come to a complete stop with minimal buzzing.
I have made other speed controllers and they do not let the motor come to a complete stop and have a lot of interference ( buzzing ).
Step 2: Parts
1) 14 pin IC Socket
1) 1K resistor
1) 100K pot
1) #103 Cap
1) #104 Cap
1) IRF520 MosFet
2) 1N4148 Diodes.
Perf board if you decide to build it on that.
I will use Photo Resist and etch a board.
Step 3: Eagle
I have made the board so the pot can be either mounted on the board or remotely mounted
In the case of remotely mounted just solder wires to the board that are long enough to attach the pot where ever it is mounted.
Solder Pads 1, 2, 3 are for the Pot
Solder Pad 6 is +12V
Solder Pad 5 is Fan Pos
Solder Pad 7 is Circuit GND
Solder Pad 5 is GND OUT to the fan
This is not my design. I found it on line.
Step 4: Ghetto Exposure Box. PCB
I use a regular old CFB. Expose time 4 to 5 minutes.
There is a lot of ibles with exact procedures if you need more info.
Step 5: Populating the Board.
Sorry i do not have any pics of the install and operations. My Web cam only goes so far from the pc with the USB cable.
I am sure i have left out some important info, so ask if i didn't explian well.