I'm diving into programming for the first time and I'd love some guidance on where to start. My interest is primarily in creating games for older systems like the Atari 2600, Atari 7800, Commodore Vic-20, Commodore 64, Plus/4, and NES, particularly in 6502 Assembly Language. Do you think I should begin with something simpler, like BASIC, or is there a better path for me? I'm not in a rush to become an expert, I just want to stop procrastinating and begin learning.
6 Answers
I believe older programming languages, like Assembly, can be quite challenging since they don't abstract things as much. My suggestion is to start with something more ergonomic that allows you to grasp the fundamentals easily. Try BASIC or even C, as they often give you a solid programming foundation.
I’d say jump into C right away. It’s useful for learning the concepts you need for game development and has a lot of beginner resources available.
Starting with a Minecraft mod could be fun, or you might want to try languages like Python or Lua first. They’re more beginner-friendly and can help you get into scripting before tackling compiled languages like C# or Java later on.
Identify your goals with programming and choose a language that excites you! Reliable resources can be found online. Remember to stick with it through the tough parts. Doing something you're passionate about makes a huge difference in your learning journey!
Thanks for the encouragement! I’m definitely more motivated when I think about creating my own games.
Keep in mind that developing for retro systems isn't just about programming—it can involve some hardware manipulation too. You might want to factor that into your learning journey if you're serious about game development for those platforms.
No need to rush into Assembly; focus on languages like Java or C#. They’ll give you a better experience for game development, plus understanding the basics will help you get a grip on what’s happening under the hood.

That makes sense! Getting the basics down first will definitely help when I move to more complex languages.