Back in upper secondary school, I attended a course in creative technology. Together with a classmate, we designed a robot that autonomously searches for a source of heat, approaches it, and then shoots a Nerf dart. After firing, it executes evasive maneuvers to rally away from the target.
Building this robot taught me a lot about coding. The entire system runs on an Arduino UNO, and all the code was written by hand from scratch.