Most Arduino tutorials take the IDE as a given. This makes sense for ease of use, but what is really behind those "Verify" and "Upload" buttons? Instead of building complex software on top of an IDE, this project goes in the opposite direction: how does the simplest possible Arduino program work on a deeper level?
Using 4 languages as examples:
Just the builitn Basic Examples. Not included here, there's nothing to change.
Adaption of builtin example, build steps come directrly from building in Arduino IDE with verbose output.