Per rispondere alla domanda del topic vorrei darvi una prospettiva sullo stato attuale dell'IDE di Arduino e di come personalmente vedo l'evoluzione degli strumenti di sviluppo.
L'IDE di Arduino è progettato per coprire le necessità del suo pubblico principale: il principiante che vuole qualcosa che non lo intimidisca al primo approccio. La semplicità del menu e della toolbar sono progettati per non sopraffare l'utente con un'infinità di opzioni che non servono quando stai partendo.
L'altra necessità è di mantenere una continuità tra processing e arduino. Processing è un ottimo modo per insegnare a programmare ad un principiante e poi permettergli di passare ai microcontrollori mantenendo quasi tutte le conoscenze acquisite. Questo è il prodotto di alcuni anni di lavoro fatti dai nostri due gruppi dal 2001 in poi all'MIT Media Lab, IDII Ivrea, K3 Malmo, ITP New York, CIID Copenaghen, Domus e centinaia di workshop.
Il nostro IDE probabilmente non è adatto a un professionista che svolge progetti molto complicati in cui ci sono Interrupt complessi o gestioni molto intricate di timers e cose simili.
Molta gente ha chiesto un IDE più potente e secondo me il percorso da fare è la creazione di un plugin Arduino per Eclipse.
Questa strada è stata seguita già da processing e gli sviluppatori pro dopo un po di tempo sull'IDE di base passano a Eclipse.
Eclipse è potente, cross platform ed ha tutta l'infrastruttura necessaria a supportare un debugger. Nel momento in cui possiamo far parlare Eclipse con GDB e avere un'interfaccia simile a OpenOCD (che si usa per il JTAG) sarà possibile fare il debug linea per linea, monitorare le variabili etc.
Stiamo lavorando con ATMEL per convincerli ad aprire un po' i loro protocolli di debug. Ce la possiamo fare (mi sono anche fatto un viaggio in norvegia tre settimane fa per andare a trovarli)
Se qualcuno è interessato alla creazione di questo plugin ce lo dica e cerchiamo di lavorarci sopra.
Un'altra area che vorremmo esplorare sono gli IDE visuali. Quando si scende di età verso i bambini, uno strumento cosi può funzionare. A barcellona hanno modificato Scratch per parlare con Arduino e lo usano con i bambini per programmare i robot. CI piace l'esperimento e lo seguiamo.
Avevo anche pensato alla riscrittura dell'IDE in QT ma alla fine ci siamo accorti che l'IDE corrente è il prodotto di una quantità immensa di ore/uomo di lavoro fatto da processing e noi. Se non c'è una ragione molto importante per cambiare meglio tenersi un programma che funziona.
Il discorso è lungo ed è un'argomento su cui lavoro da 8 anni perciò se non sto attento scrivo un libro
m