Arduino is an open source hardware platform intended to make it easier to build interactive hardware.
An Arduino board contains a microcontroller and other components for interconnection with other modules and external devices.
The board communicates with the external world using analog I/O, digital I/O, I2C serial bus and USB bus.
The Arduino software development environment helps users to write code to control the behavior of the Arduino board. You can write sketches in a C-like language to control the Arduino board. A sketch is based on two main functions:
The software development environment is available in Arduino Software web site.
Shields are boards that can be plugged on top of the Arduino board extending its capabilities.
There are shields that provide connectivity, e.g. ethernet, bluetooth, wifi.
Other shields provide advanced functionalities, like motor drive, touch screen or robot control. There are even shields to assemble, without a specific functionality built-in.
It is possible to build useful things with Arduino, shields and similar stuff.
Some example are available in this web site: