So my understanding of the goal of the Arduino people is that they want to make micro-controllers more approachable to non-electrical-engineer type people who have things they want to do. This is an excellent goal, and I agree completely that its a good idea.

Unfortunately, I do not agree with their methods...

The biggest problem I have is their refusal to use the standard nomenclature. For example, they refer to the source-code as a "sketch". When I first heard that, I was extremely confused. Its a drawing program, or some nasty clone of lab-view where you connect boxes with lines? No... they apparently mean sketch as in like sketch comedy.

Then they called their IO boards "shields". That word means something else. The outside conductor of a piece of coax is a shield. Those metal covers for RF shielding are shields. And these people may not need to know about coaxial cable and RF noise yet, but they will eventually. IO boards are IO boards.

Then they wrote yet another IDE, complete with yet another make wrapper. I used it a bit attempting to get a reprap operational. We have an uncountably infinite number of editors already. Lets not poorly reimplement that particular wheel again.

My problem with their non-standard nomenclature is that people getting to micro-controllers don't have any words for those things yet. They could be called anything, and it makes no difference. Until they want to talk to people who have been doing it for a while. Then they start talking about sketches, and I start wondering where the drawing program is... The weird nomenclature doesn't make the first step any easier, but makes the second step much much harder.

Then they didn't use a real JTAG (or whatever atmel uses) programmer. They put a boot loader on the atmel chip, and used a 3.3V serial cable. In terms of obscure hardware, an atmel programmer and a 3.3V serial cable are about the same. You're going to have to order both. But if you bork the boot-loader, you can't put it back without the atmel programmer. You should have gotten the real programmer in the first place, because you're going to need it eventually. And then the boot-loader... emulates the real atmel programmer (making it nigh-trivial to bork the boot-loader. I did several times.).

It could have been so much cooler... Sigh...