You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
(I don't know if this is the correct place to begin this discussion, but if wrong please move it.)
Specifically I believe the current Arduino development environment is hurting beginners by hiding the inclusion of critical header files, which actually define the API's which programming relies upon, and who's inspection should be encouraged to aid beginners more easily understand why ideally well documented functions must be called with certain argument orders and types for example. Please consider reorganizing and refining Arduino's core library/environment header / implementation specification to allow it to more easily serve as a coherent reference to aid in its use; as also further supported by the following proposed changes:
change default new project stationary to include "#include <arduino.h>", which need not be equivalent to "Arduino.h", although will likely include it among other base library headers, defining the base Arduinio API.
initially continuing to support their magical inclusion behind the scenes, and thereby not breaking anything for existing projects, but beginning the transition to a requirement for its explicit top-level inclusion.
add a feature to the IDE to make it easy to open and view included baseline headers, and those from optionally supported libraries (but possibly kept read-only by default, so beginners don't mistakenly modify them).
in turn the source code can then be parsed to determine the code's corresponding library dependency required for compilation and linking, etc.
All visible to the user, as hiding such critical information typically hurts more than helps even, if not especially, beginners understand what's going on and why, in practice.
The text was updated successfully, but these errors were encountered:
(I don't know if this is the correct place to begin this discussion, but if wrong please move it.)
Specifically I believe the current Arduino development environment is hurting beginners by hiding the inclusion of critical header files, which actually define the API's which programming relies upon, and who's inspection should be encouraged to aid beginners more easily understand why ideally well documented functions must be called with certain argument orders and types for example. Please consider reorganizing and refining Arduino's core library/environment header / implementation specification to allow it to more easily serve as a coherent reference to aid in its use; as also further supported by the following proposed changes:
change default new project stationary to include "#include <arduino.h>", which need not be equivalent to "Arduino.h", although will likely include it among other base library headers, defining the base Arduinio API.
initially continuing to support their magical inclusion behind the scenes, and thereby not breaking anything for existing projects, but beginning the transition to a requirement for its explicit top-level inclusion.
add a feature to the IDE to make it easy to open and view included baseline headers, and those from optionally supported libraries (but possibly kept read-only by default, so beginners don't mistakenly modify them).
in turn the source code can then be parsed to determine the code's corresponding library dependency required for compilation and linking, etc.
All visible to the user, as hiding such critical information typically hurts more than helps even, if not especially, beginners understand what's going on and why, in practice.
The text was updated successfully, but these errors were encountered: