Is shared ground necessary?
Yes you need a shared ground. The reason it works is because everything connected to your PC and share supply grounds. But it also means that the supply ground will be the reference to all your signals, which isn't ideal. 

Ideally all communication lines include a signal ground, which is tied to the main ground of each PCB through appropriate PCB layout. That way you don't have to worry about the quality of the supply ground, where there could be ground currents messing up potentials, EMI etc.