- Published on
SDL and using IDEs as a former JavaScript developer
- Authors

- Name
- Fred Luartes
I'm primarily a web developer. Currently, I'm a backend developer using Java and Spring Boot. So no JavaScript for me for now. Because I'm a web developer, I only know the frontend/backend stuff I've learned and use at work. Creating backend APIs to connect to database and display the data using frontend on the browser. Maybe add loggers to check production issues. That kind of stuff. I wanted to learn other kinds of development so I looked into programs that looked fun to create.
Game development looked fun to make with or without a game engine. So I started to learn game develoment. I am currently learning C++ alongside game development, so good luck to me. I know I should learn C++ first and be familiar with the language before tackling gamedev but I want to hit two birds with one stone, so here I am.
Why game development?
I started game development with Godot 4 and the book Godot 4 Game Development Projects by Chris Bradfield. While it is a good introduction to Godot and game development, I wanted to learn gamedev on a lower level. Using libraries and frameworks instead of a game engine. I also dabbled with Raylib but eventually I settled for SDL. I actually decided to use SDL from reddit's gamedev wiki. So I'm doing Lazyfoo's SDL Tutorials.
Why C++ and SDL?
I chose SDL because of reddit's gamedev wiki suggesting Lazyfoo's SDL tutorials. I checked the link and it's just what I wanted in a tutorial. Mostly text and code. I have short attention span so it's hard for me to follow video tutorials. I like code and text (website or book) because I can type the code directly from the tutorial and see if I can make the code work.
C++ is my choice of language for now, following lazyfoo's tutorials. I'm also reading Game Programming in C++ book by Sanjay Madhav. I'm running the code on that book on both Windows and Linux. I use a text editor and terminal to compile the code but I also wanted only one program to run so I started to use IDEs. I use Visual Studio on Windows and KDevelop on Linux.
Why IDEs?
I know what you're thinking. KDevelop on Linux?? IDE on Linux? You already know both vim and emacs. You use vscode for JavaScript. Why would you use IDEs now?? I know I know. I'll get all kinds of flamewars with my program choices. I want to learn how to use a debugger. I'm not a fan of it in JavaScript and I have yet to use it on Java. So I'll be dabbling on IDEs and debuggers on my spare time using C++ and SDL.
Closing
Also, I'm using SDL instead of a game engine? Why? As I've said, I want to learn lower level gamedev. I'll probably dabble again with Godot in the future. Right now I want to improve my coding skills by coding games using SDL and C++. I'm not planning on making the next Minecraft, Doom or The Witness. I just want to make small games I can play a bit during my spare time while improving my overall coding skills.
Other resources I found were Raylib and its tutorials and sample codes. The code are straightforward and easy to learn but I haven't found a comprehensive raylib tutorial to learn gamedev yet. I might come back to raylib in the future. I also found Handmade Hero by Casey Muratori. While I'm tempted to do Handmade Hero on Windows and Linux, I don't want to go too low level like what Casey is doing, that's why I chose SDL instead.
I hope I can finish at least 50% of lazyfoo and the Game Prog C++ book then dabble with copying games like Pong, Asteroids, etc. Good luck to me, really.