Usare il #define con gli array

Da questo punto di vista, prendi una scheda di sviluppo con un micro che consente il debug hardware come ad esempio una Nucleo con STM32.
La programmi sempre con framework C++ "Arduino like", ma hai il programmatore/debugger hardware incluso con cui puoi fare debug in real time (anche se NON con l'IDE Arduino).

La possibilità di avere esecuzione passo-passo, breakpoint, watch list etc etc dal punto di vista "educativo", oltre che per il debug vero e proprio, è enormemente più efficace del piazzare dei Serial.println() qua e la per vedere cosa succede durante l'esecuzione.