I've made a 40kHz sensor, similar to the PING))) board, and I've used the PING))) board. The PING board is MUCH more advanced that what I came up with. For example, when my 40KHz emitter would send a signal (chirp) the receiver would resonate which would look like a reflection. My MCU would have to learn this initial resonation and filter it out. The problem is that when the object to sense was very close to my board, the reflected signal would interfere with the initial oscillation. Depending on the exact distance, the interference would either be constructive or destructive. It made short range sensing VERY difficult (about 1").
The PING))) board is much more complex. It has multiple selectable op-amp gains and it adds a varying amplitude PWM signal to the received signal to eliminate the signal seen by the initial resonation. My board was basically a fixed gain -> rectifier -> peak hold circuit while the PING))) was ... well, all around better.
If you only need one board, its worth it to spend $30 on the PING))) board than to come up with your own solution.