An Arduino is a general purpose micro controller programming and prototyping platform that you can easily program to react to things going on in the real world. You can also link between the real world and the virtual world by connecting up your Arduino to the Internet, either sending data to the Internet or responding to data on the Internet, or both.
The Arduino is and open-source computer project and developed by a company of the same name. The company, along with a large user community, develops both the computer hardware and the Arduino software IDE. As all the designs of the Arduino are open-source, anyone is free to produce their own boards.
You can use it to sense almost anything you can find an electronic sensor for, including light, temperature, pressure, sound, even smell — if you consider environmental pollution to be a smell. You can even build your own sensors. How your Arduino reacts depends on how you program it. You can use its output capabilities to sound alarms, open doors and windows, activate lights or motors — the possibilities are almost endless.
Arduino is used for prototyping ideas — getting them half built and then trying out what works. Prototyping means testing alternatives to come up with creative solutions to problems. You try out part of a project to see how your sensors respond and then change how your Arduino program functions, depending on what works best for you.
Arduino Software
The Arduino project provides the Arduino integrated development environment (IDE), which is a cross-platform application written in Java. It is designed to introduce programming to newcomers unfamiliar with software development. It includes a code editor with features such as syntax highlighting, brace matching, and automatic indentation, and provides simple one-click mechanism for compiling and loading programs to an Arduino board. A program written with the IDE for Arduino is called a “sketch”.