Sign In

Communications of the ACM

ACM TechNews

The A-Z of Programming Languages: Arduino's Tom Igoe

View as: Print Mobile App Share:
Arduino developer Tom Igoe

"A large number of people coming to code and microcontrollers nowadays . . . don't actually want to be programmers, they just want to use programming and circuits to get things done," says Tom Igoe, associate arts professor at NYU's ITP and developer of A

Credit: NYU ITP

Tom Igoe is a co-developer of the Arduino programming language, which he says was created out of a desire to provide a tool for teaching physical computing to artists and designers, with a specific focus on microcontroller programming. "The assumptions of those coming at it from a background other than computer science or electrical engineering are quite different, and we wanted tools that matched those assumptions," he says. Igoe points out that many people currently being introduced to code and microcontrollers went by the assumption that the computer's graphical user interface was its core interface, and that learning is a matter of copying and tweaking code. Arduino was thus designed to dovetail with that mindset, he says.

Igoe calls Arduino the embodiment of "glass box encapsulation," in that it removes the need to look at the lower level code that constitutes the libraries, but still leaves it as an option. In addition, Arduino's hardware designs are completely open source, and the software has been cross-platform from the outset.

"The open source nature of [Arduino] has had a huge impact on its spread, I think," Igoe says. "There are tons of clones out there. Many of them aren't even looking for a customer base beyond their friends, students, etc. But there is great learning value in making your own version of a tool you use."

From Computerworld Australia
View Full Article


Abstracts Copyright © 2009 Information Inc., Bethesda, Maryland, USA


No entries found

Sign In for Full Access
» Forgot Password? » Create an ACM Web Account