Tried to avoid some of the pain of developing hardware and software by using a couple of these kits from LittleBits.
Arduino Coding Kit from LittleBits
Korg Analog Synth kit from LittleBits
Thought this would be a good starting point for a high-school 'engineer'. Take some of the learning curve off as compared to using protoboard, wires and an Ardweeny.
Got a LittleBits synth and a LittleBits Arduino kit. We'd made some progress using the analog out from the Arduino to control one of the oscillators of the synth. We'd progressed to programming the Arduino to play a tune, when all of a sudden the Arduino stopped responding to IDE. The PC popped up a dialog saying "Unknown USB device".
Several attempts to reboot and trying the LittleBits Arduino on another PC, we had to finally deduce that we'd "bricked" the Arduino.
I suppose it's also important to learn how to use Google find fixes to your problems, but really this was something I was trying to avoid by going with a kit that's designed for novices trying to get into programming and electronics.
Fortunately a bit of Googling and a straightened out paper clip was all that was needed to fix it, but I imagine plenty of people (the ones who don't do this shit for a living) would have given up on the whole Arduino development experiment.
I think somehow the Arduino bootloader got messed up during the software upload. We were running off a 9V battery all day, I'm wondering if that was the problem. As a consequence, I switched to the LittleBits "USB Power" bit.
The trick to recovering was to short together the RESET/GND pins while powering up the Arduino, then preforming another update. See the linked LittleBits forum post for more details.
1) Short the pins in the attached picture (i.e. directly connect them to each other):
2) Connect the USB to the Arduino and turn the power on to the Arduino.
3) Press 'upload' in the Arduino IDE with a code that is known to not cause issues.
4) When the status bar changes from "compiling sketch" to "uploading..." remove whatever you are using to short the two pins.
5) Your sketch should now successfully upload."
--- ICSP PINOUT ---
GND --> O O <-- RESET
D16 / MOSI --> O O <-- D15 / SCK
VCC --> O O <-- D14 / MISO