I want to learn programming in Lua, but I struggle as soon as I move beyond basic variables. Functions, loops, and working with data feel confusing, and I often find myself wondering what the language is actually doing underneath the surface. It feels like I'm trying to decode an ancient script, even though I genuinely want to learn. I've been reading documentation, asking focused questions, and watching tutorials, but some resources are padded with filler or are difficult to follow. Am I approaching this the wrong way, and what helped others build a better understanding of programming fundamentals?
4 Answers
Use very small experiments to answer specific questions. For example, write a tiny loop that prints one value, then change one part and observe the result. For functions, start with a function that takes one input and returns one output. Build up gradually rather than trying to understand an entire tutorial or language at once.
You can learn with Lua, but another beginner-oriented language may have more introductory material and exercises available. Regardless of the language, practice matters more than watching lots of videos: make tiny projects, get them working, and add one feature at a time. Expect confusion, revisit concepts repeatedly, and avoid judging your ability based on how quickly you understand them.
A beginner-friendly visual tool can be useful because it lets you see control flow without worrying about syntax immediately. After that, try a structured course with short lessons and exercises. Don’t feel obligated to read every page of the documentation; use it mainly as a reference when you already have a focused question.
It may help to step back and learn the “why” behind programming before focusing heavily on syntax. Understanding what computers, memory, instructions, and programming languages are doing can make higher-level ideas feel much less arbitrary. Introductory computer science material or visual explanations can provide that missing foundation.
That makes sense. I often get stuck asking what something actually is and why it works that way, so I’ll try learning more about the foundations instead of just memorizing Lua examples.

I recently started breaking things down this way and finally got a basic understanding of Lua loops. The smaller experiments seem much easier to process than long explanations.