I recently had my first success with the ESP8266 by using the Arduino IDE's new board manager feature. Skip down to the Install the ESP8266 Board Package of  Adafruit's huzzah tutorial to learn how to setup your Arduino IDE to program the ESP8266. I used the blink example at to see how to connect a generic ESP8266 to my 3.3V SparkFun FTDI Basic Breakout. Note stozk's comment toward the bottom about connecting GPIO0 to ground when uploading, and letting it float when running the program. Once I had it wired, I tried uploading the example WiFiAccessPoint program from the ESP8266 Wifi menu. Sadly, while I could connect to the ESP8266, I was unable to navigate to the IP address as directed. After much experimentation and research, I finally stumbled upon theESP8266 Community Forum's WIFIACCESSPOINT . . . . . . . . . . . . . . . . DOTS DOTS thread where a kind soul explained the need to delete the following line from the example to get it to work:

while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); }

Once I did that, I was able to navigate to the IP address and see a page stating that I was connected.

The next step is to figure out how to pass accelerometer data (gathered using Pete LePage's This End Up: Using Device Orientation tutorial) to the ESP8266 so that it can control motors.

NodeMCU Notes
My NodeMCU V0.9 uses a CH340 USB to serial communication chip. To program it, I had to install drivers from the website of a Chinese tech company (these are the same drivers mentioned in my course).
Once the drivers are installed, you must run the following command on newer Macs (I think Mavericks and later):
sudo nvram boot-args="kext-dev-mode=1"
Restart and you should see a new usb device.

Unfortunately, the pins listed on the NodeMCU do not correspond to what you will use when programming with the Arduino IDE. As a consequence, you will need to refer to one of the pin maps below.
To make the NodeMCU boards available within the Arduino IDE, you need to add the Boards Manager link for the esp8266. To completely uninstall the esp8266 boards, first uninstall them using the Boards manager, and then go to /Users/[your user]/ilbrary/ARduino15/ and delete pretty much everything that has esp8266 in the title:

For information on the differences between boards:

Below are links to sites that refer to ways to use the esp8266 via AT commands. NOT RECOMMENDED.