Got my first Arduino this evening. A £3 Nano "compatible". Soldering the headers was easy, took all of 5 minutes. Stuck it in a breadboard, powered it and it blinked at me. Out of the box it worked. £3. Where's the fun in that?
Linux ... software installed and ran fine. /dev/ttyACM* ... nothing. Messed about recompiled my kernel a few times and after half an hour I rebooted to windows.
Windows 7... software took ages to download, I eventually caught Steam using all the Internet for whatever it wanted to do, large object over the head of Steam and... The software installed and ran. COM errors. Apparently the software chooses COM1 first even though it's a dummy. COM3 worked.
Uploaded a modification of the blink program to morse code "SOS" and it worked.
Played about with reseting it, running it off breadboard or USB. Resilient little thing. Went to reprogramme it and "device error". Windows would longer recognize it was plugged in, no matter how many times I plugged or unplugged it.
Rebooted. Thing works fine on COM3 again. (I hate windows)
The worry for me right now is... given it's ADC and DAC capabilities.... I can do so much more in software without having to deal with the complicated analogue electronics stuff, so I will run away from the later scared and do everything with an Arduino or a PI and not bother learning analogue electronics.
I gather that would be the appeal of the arduino. Considerably lower level than the PI but as easy to get up and running. PI and Python, high level, big OS, big power, LOTs of processing and LOTs of memory £30. Arduinno, very little memory (Java (or pythong) programmers need not apply), very little power, no OS, but even more capable when it comes to things like ADC, DAC and almost as capable when it comes to interfacing with external sensors and gizmos £3 (or £15 for a branded 'original').
Arduino + Gizmo + Google = instant gratification.
But hey ,it gets people more interested in STEM, electronics, science, technology and engineering, it works for me.
As a software guy I love it. Now I can get values out of circuits and back into circuits from software. The horizon has widened.
Still have to get it working in Linux, but... My linux is a custom job, based on Gentoo, the fact it didn't have ACM drivers didn't help, so I'm maybe missing support for something else, like external/usb TTYs or something that I've never needed before, that normally are there in Ubuntu et. al. and I have never enabled.