First of all, Arduino is open source computer hardware and software company and user community that designs and manufactures single-board micro-controllers and controllers kits also called Development board for building digital devices.
In simple, It is a company which makes both hardware and software (IDE – Integrated Development Environment) for their hardware.
Note: If you already know about all this theory, you can switch to (1) sample programming model (2) preference settings and basic about IDE software (3) Installation process or (4) Direct programming with the first program Light up LED using Arduino
Hardware is development boards like Arduino Uno, Mega, Due, Nano, LilyPad etc.
Software is the Arduino IDE (Integrated Development Environment). This software helps to write the programming code and to upload the code into Uno board (or other) , after uploading done, message shows upload done or you can say saves in microcontroller (ATMEGA328) which is in use in UNO board.
What Arduino community provides…
Community’s aim is just to make aware the world towards the electronics which can give us many solutions relating to our daily lives.
Students or electronic hobbyist who want to do something in electronics but wouldn’t able to do many projects because of less knowledge and difficult structure of electronic circuits.
Community make products for them, not to lose interest in electronics.
Arduino based on which programming language?
Programming language used for Arduino is C and C++ concepts, as it follows C concept and OPPS (object oriented programming system) concept as well.
Earlier techies used different micro-controllers which have difficult/complex programming (assembly language) to write programming code in micro-controller and we need a separate burner to burn code in micro-controller.
To overcome this, complex programming replaced by high level programming language and all the essential devices or component like burner and different IC’s, power supply of 3.3V and 5V as well by different voltage regulator IC’s is now built on board called as Development board like Uno, Mega etc.
Community uploads its boot to the microcontroller so that the microcontroller can be program through Arduino IDE software (we can also upload this boot program).
Software gives us flexibility in programming by providing inbuilt library to user for many interfaces.
Read Next: SPECIFICATION OF ARDUINO BOARDS