Welcome to Incremental Social! Learn more about this project here!
Check out lemmyverse to find more communities to join from here!

porgamrer

@porgamrer@programming.dev

This profile is from a federated server and may be incomplete. Browse more on the original instance.

porgamrer ,

Damn, this is a really good write-up.

I came to most of the same conclusions. I really like Rust, I'm glad it exists, I'm amazed by the people who designed it. It is not very good for creative work at all.

Honestly the "rewrite it in rust" meme is actually the use case where it shines: when all the requirements are 100% clear up front, and you just need to make a new version of some software that is much faster and more reliable. That is not what game development is like.

Is there any demand left for 'game systems developers'? As in, people knowledgeable on Win32 or POSIX API, PE/ELF, Compilers and Interpreters, etc, when it concerns games exclusively? (+UNIX engine?)

I don't think my knowledge is complete about Windows side of things (PE and Win32 API, MASM, VC++ etc) so I never dared apply for such jobs. But I have never seen one either. I think it theoretically should exist. The systems side of gaming, especially developing a portable framework, developing retargetable, optimizing...

porgamrer ,

You are right that having a shiny education gives people a huge advantage. It's not everything though.

For example, I have a friend who makes 6 figures in europe doing performance-oriented C++ work, with no degree. Once you get the first job it becomes far easier.

Getting the first job is tough, but having personal projects really helps. Don't undersell yourself. You need to give people the impression that you dropped out due to pure happenstance (e.g. health or family issues that are now resolved). Make them think that you are a lucky find; if you had finished the degree you'd already be at a bigger company with a bigger salary.

porgamrer ,

To be honest I have no frame of reference to understand what it's like to try and find a job while navigating the American economic sanctions. It sounds awful. Is there no prospect of finding remote work in the other BRICS nations? I was under the impression that they try to avoid relying on american-controlled software, so I thought this would create some employment opportunities.

porgamrer ,

Honestly this is usually bad advice nowadays, for a bunch of reasons:

  1. Modern allocators do the same thing as object pooling internally, usually faster. They rarely interact with the OS.

  2. A GC will do things like zero old memory on another thread, unlike a custom clearing function in a scripting language.

  3. Object pooling breaks the generational hypothesis that most modern garbage collectors are designed around; it can actually make performance much worse. Most GCs love short-lived objects.

  4. Object pools increase code complexity and are very error prone; when you add a new field you have to remember to clear it in the pool.

  5. If you are in a non-GC language you probably want something "data-oriented" like a slotmap, not a pool of object allocations.

Having said all that, it still all depends on the language/VM you're targeting. The guy in the video clearly benchmarked his use case.

porgamrer ,

This is not a recommendation, but just a couple of days ago someone linked to this project, claiming similar goals to lua, great performance, and gradual typing:

https://cyberscript.dev/

I can't tell you what it's actually like though.

A more established, proven option is Haxe. Haxe has a lot of libraries but I think it's specifically designed to be batteries-optional. This Haxe VM in particular looks pretty impressive:

https://hashlink.haxe.org/

Haxe has the distinction of having been used to ship loads of successful games made by small teams with custom engines.

Another option designed for simplicity, low-complexity and easy embedding is wren:

https://wren.io/

Implementation is apparently only 4000 lines.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • incremental_games
  • meta
  • All magazines