 When starting out with electronics, it's common to forget about connecting grounds. When you have separate electronic circuits sharing signals like this data line here, even if they're using separate power supplies, the ground wires should almost always be connected. So here I've got an Arduino compatible powered from a 9 volt wall plug. I want to use it to control a long strip of NeoPixels, which will use its own 5 volt power supply. So, even while using different supplies, the NeoPixel ground needs to connect to the metro ground. Otherwise, the data won't transmit correctly. It's as if the signal is a little shy, and it'll only venture out to another circuit if it can see a clear way to get back home.