This post really resonates with me. I have always been interested in programming. I don't work professionally as a developer, but I am always playing and tinkering with programming projects.

Recently, I started developing simple games. Initially, I used a game engine to make my first simple game. The process went fine and I can't say I had any issues with the engine I used. At least, not technical issues.

The main issue I had was that I didn't enjoy the process of developing the game because everything was abstracted away from me by the game engine.

As a person, I just don't enjoy taking things at face value. When I am interested in something, I really like to understand and get to the depth of it. A game engine doesn't give me that. Of course, I could have checked the engine's code which was available, but I didn't think that this alone will give me the satisfaction that I would get from starting from scratch.

So, I decided to go one step lower. Instead of using an engine, I decided that, for my next simple game, I will only use a simple library that gives me access to the hardware (keyboard, mouse, etc.) but write everything else on my own.

Later, the plan is to even strip that away and try to implement my own platform layers for accessing the hardware, so I can understand that part of the process a lot better.

Am I going to come up with something that can match engines like Unity or Unreal beat by beat? Most likely, no. Especially, as a beginner game developer. Maybe in the future.

But even if that doesn't happen in the future, I will definitely learn a lot and whatever I come up with will be tailored to my own personal needs, rather than an engine that is trying to satisfy the needs of different developers.

And lastly, I will have a lot of fun building my own tools.

Expand full comment

There's this guys called Bret Victor who dedicated his life to this goal. I really suggest you to see his blog and talks.

Expand full comment

Most games shouldn’t reinvent the wheel, there are those who this article will inspire, and that’s good, people who bring new ideas to the table should do so, but inventing new tooling for every little thing is time consuming and is focusing only on the tools instead of the end piece (I say piece because games are and should be treating like making an art form). Most games will need the same few things, some include: gravity, input control, drawing pixels to the screen, handling text. So for most people using a tool that does this for them so they can focus on the actual design of the game is exponentially more important.

There is custom tooling written all the time, it’s just usually in the form of addons for engines to make custom projects. Some great games have been made using custom tooling and we’re only possible due to the from scratch nature of it (Minecraft comes to mind), but it’s not in most peoples best interests to do so.

Simply stating something then saying anyone who disagrees with you lacks imagination without anything else to back up your claim is lame and simply lacks imagination or any kind of research or foresight and makes you look ignorant (source: read the article)

While I do agree with you that self reliance is important and people are too reliant on tools that exist outside of their hands, the section on artists confounds me. Some engines are designed with the different groups in mind, but I fail to see, and I believe you failed to explain how making your own tooling fixes that instead of exasperates it, your only solution reads like “engines bad for artists, use engine (me flavored) that’s good (somehow)”

This is more an observation of how it’s written and not a critique of the views itself: The whole article reads like some kind of manifesto or a get rich quick scam trying to get me to buy a course on making and selling NFTs, there is no talking or refuting counter arguments, just attacks on any who’d disagree with you. Like some long winded Reddit rant.

Are you a communist?

Expand full comment