Lua is a high level managed programming system and in a way it favors productivity, I've been trying to make a game for a long time, it's the excuse to learn to program always something new.
For me the system that most favors me in Lua, is to simulate OOP programming (Object Oriented Programming), I do this through tables and files. What I do is to take a big problem and divide it into smaller parts. And to do this I had to start from scratch from main, and manage my own structure. With time you develop skills, I don't really consider myself a programmer, but I think that with time I have improved somewhat, because I am no longer trying to learn how to do things, but I am already doing them.
Translated with www.DeepL.com/Translator (free version)