What Is This? Who Am I?

I’d like to explain what this blog is about and who I am exactly. But first, I want to explain what got me here. I want to explain what got me to make this blog.

Context

Why C?

Over the past few weeks I have learned the C language. I am a game developer and I wanted to explore the lower level areas of game development and programming. So I decided to learn C with the intentions of making a simple 2d game and engine from scratch so I could learn what goes into building an engine. I had tried doing this previously, once with C#, which wasn’t low level enough for me, and next with Rust, which was too hard for me. I guess you could call it a skill issue. C in comparison is a very simple language with only 32 total keywords in the language and it meant instead of spending time banging my head against the wall, fighting with the Rust compiler, I was spending time banging my head against the wall trying to figure out why my program kept crashing. In this way, I found it easier to get started in C.

What I Worked On

Two weeks into learning I created my first project, a simple snake clone that I made using Raylib a popular games library. My next project was a habit tracker app using C and Raylib as I was just getting into meditation and wanted to keep myself accountable (meditation is great btw). I ended up making a simple version of the app, but at that point the codebase was already too hard to work with and I needed some sort of abstraction for parsing saved habits. And so I sidetracked and made a CSV parser that I could bring into an updated version of the habit tracker. At this point I was enjoying C very much and was having a great time besides the occasional segfault and crash.

Reflection and Realization

After creating the CSV parser, I started a new project to rebuild the habit tracker, but just a few days in I took a moment to think about what exactly I was doing. I realized that I was no longer working on games, I was making an app which wasn’t teaching me the skills I intended to learn in the first place. There was no system of entities, z layers, physics, and whatnot in the habit tracker. I decided to abandon the project. I didn’t want to go back to game engines just yet, but I still didn’t find the value I was seeking in the little habit tracker I was making, so I decided that I would create a simple 2d game. I still haven’t decided what exactly I want to create, but I am looking to just make something simple that forces me to implement physics, some system of entities, and some data structures here and there.

Why A Blog?

You’re probably asking what this blog has to do with any of that. I am starting blog to keep track of my progress and history while building this 2d game using C and Raylib. By doing this, my goal is to keep myself accountable with weekly blog posts, and also reflect every week on what I accomplished and learned through the project. It’s sort of just a text devlog, because personally I find video devlogs to take too much time for me to make.

About Me

This should probably be in the About page, but I’ll put this stuff here for now and maybe I’ll add it there later. Hi I’m Nick, a game developer and programmer since I was in 6th grade. I initially started making games in Unity, but I moved to Godot a couple years ago. I also worked as a coding instructor and tutor during the previous two summers, where I got to teach kids coding. That was super and I learned a lot from it! I also wrote my own game dev course from scratch. It’s not the best, but it’s better than nothing. I am currently a senior in highschool and I am graduating in just a couple months. I am looking forward to life on my own and the entire future ahead of me.

Now for my socials. I release my games on itch.io where you can play and view them. You can also view my GitHub where I do my version control stuff. There’s source code for some of games there. I also release the occasional video on my YouTube channel. You can contact me through email at nvatanshenas55@gmail.com or send me a message on discord at 0megq.

Conclusion

That was a long post. It probably got a little rambly. Oh well. If you are reading this when it comes out (I don’t see how anyone would randomly discover this website at the moment though), then look out for a post in the coming days. Thanks for reading! Leave a comment below of what you liked, disliked, found interesting, etc..

Categories:

Introduction   Reflection

Comments can be edited and deleted on GitHub