Arms in the Clouds
Recently I was lamenting about how hard it is to roll your own ARM development toolchain. Of course, a recent trend in consumer applications is to have things "in the cloud" — like Gmail, for example. That would be one answer: Have your development tool hosted by someone else and access it from the Internet.
White PapersMore >>
This isn't an original idea. I've written about MBed before. It has an online-style IDE. There are quite a few general IDEs like Cloud9 and several others. I was recently impressed, however, with Arrow's Cloud Connect.
Cloud Connect is an ARM Cortex M0 IDE on the Web. It specifically targets a development board from Freescale known as "Freedom". This is a nice little board running at 48MHz, with 128K of flash and 16K of RAM. Like many of these inexpensive boards it has a few I/O devices (an accelerometer, a capacitive input device, and a three-color LED).
Cloud Connect gives you an IDE that can generate code for the board. It also has example code libraries and can interface with iDigi to put your connected device data on a graphical dashboard in a web browser.
I may pick up a Freedom board and try it. If I do, I'll write about it in a future update. But meanwhile, this brings up an interesting question. If I'm just fooling around, a web IDE is very attractive. It also would help me when I'm working with students who probably aren't going to spend a day installing software (nor are they going to buy an expensive development environment). But for commercial use — employers or clients — I'm not convinced I could make the case that letting someone else host my development environment was the right move.
Of course, even the biggest companies get hacked. But it is really more than just security concerns. If I am up against a deadline and my computer goes down, I like to have someone working to fix it that has some skin in the game. There are other concerns too, like working offline.
On the other hand, for some quick non-critical prototyping, these kinds of IDEs are handy. Code Connect appears to be aimed at one particular board, but it isn't hard to imagine a vendor providing such a tool general enough for any target in their CPU family.
Would you use a cloud-based IDE? Or do you? Leave a comment and tell your story.