A really good starting point for beginners, is to find someone you trust and respect as a collaborator on your early project & discovery.
You’ll learn, and also end up with your first complete working system.
(( Please don’t nitpick this guide, it is intended as a starting point for beginners.))
Developing systems requires a sequence of things to happen...
-> Requirements
—- functionality and interoperation
—- (experiment with specific functions before committing!)
-> Specification
—- program flow/ logic
—- block diagram followed by schematic
-> Assemble your Hardware platform
-> Software development
PROTOTYPE #1 -> Review & Rework
Only a confident developer would work out of sequence - with expectations of revisions and rework as the other elements come together.
DOCUMENTATION starts on day one, and ends about a week after the finished product is complete!
Most hobbyists don’t realise they’re processing all these steps, either because the project is too small, or it’s become habituated in their work.
Unfortunately, no two projects are the same, even if they use the same hardware to achieve the same outcome.
There are no rules HOW to write ‘sketches’, or code - but there are plenty of rules how NOT to write code. The compiler often catches these!
- Footnote
Your project is a ‘system’ of varied parts that need to operate together.
Not just an Arduino and power supply, not just a sensor and a relay... but a critically tuned combination of all - that you may need to expand or repair in the future.