First off, congratulations on a very well-polished launch! I wasn’t expecting the packaging, the cloud, IDE, etc to be all at the level they are. These things take time to iron out, so problems are inevitable.
After a week or so of playing around with my two cores, I had some thoughts on improving the development experience. Primarily, the long chain of dependencies between the core, cloud, tinker and the web ide is the root cause of spending way more time than is necessary getting the great piece of hardware doing what I want. The design is good, but at this early stage of development, the multi-color blinking LED on the spark isn’t enough.
So, casting some desired features into prioritized “user stories” (http://en.wikipedia.org/wiki/User_story)
“As a Spark core developer, I want more diagnostic output at the core so I can more quickly determine the cause and solutions to technical issues.”
“As a Spark core developer, I want to develop and download code locally through an established IDE so I don’t have to spend a lot of time struggling with the web IDE on a poor internet connection.”
I’m sure there are many possible implementations to these. Personally, the Arduino IDE with the serial monitor would be great. I’m sure it’s possible and maybe easy to implement, but I’m not a make system guru.
I’m sure there are more than enough things to implement that are more important, but given the existing tech (like the wifi and tcp functionality), I can be implementing lots of cool stuff on these cores, but I’m spending 80+% of my time trying to resolve why I can’t flash from the app or the web IDE or what those blinking lights are really telling me.