<aside> ⚠️

I’m not a native English speaker nor writer that’s why I can’t guaranty a perfect text without any errors. Thanks for your comprehension.

</aside>

Introduction

I’m currently trying new languages and to do so, I create mini projects around game development that are small enough to be done in few days but rich enough to explore almost every relevant parts of the language and in the process acquire a good understanding of it.

I have already created a mini project with the Zig language and you can read my concise opinion on it in this Bluesky post (Top top player character with collision detection on grid + A* path finding).

https://bsky.app/profile/stagram.bsky.social/post/3lk3okzbqdc2d

It was great to pick up this language and dive into it even if it was not the easiest on boarding I had with a new language. In fact, there is strong concepts in Zig dictated by its “No hidden control glow and memory allocation” policy that require a bit of fail and retry to fully understand how it works.

<aside> ✏️

TLDR; I do not recommend Zig as a Game Development language and it’s my personal opinion.

</aside>

After this mini project that took only two days of work, I decided to continue this exercise using Odin. This post isn’t structured as a tutorial or a classic learning resource but is more a list of Odin’s feature that I appreciate.

Simplicity is the key

Do you remember writing your first few lines of C, compile them and finally see your terminal tell you Hello, World! ? The most important for me in this memory is that the language was feeling simple, and I think that I have lose this feeling year after year, language after language to bury myself in a complex world with more and more programming concepts.

Odin give me this feeling of simplicity again, and yeah it feels good!

To describe it in few points :