Is it pissible for programmers to encounter a silly little meme without taking it serious and going into a frenzy explaining that actually its premise is wrong
I immediately angrility opened the comments to respond. I think it’s just a side effect of working in this field. I have to be completely literal to the computer so in communication I prefer the same style. I will argue with people on the use of ambiguous language. More so if they are analysts. I can understand the business doesn’t always fully grasp the concept but if you give me a functional analysis it best be 100% clear. And yes, I’ve been tested for autism, it certainly flagged up as a possible trait, but it’s hard to know if this hasn’t just become an ingrained preference. Sure does help me when communicating with neurodivergent people, and I’ve heard from several neurotypical people as well that they actually appreciate the clarity!
Because the only possible thing to do in c# is unity stuff…
.
.
.
…
I mean why else would you want to use C# when there’s Rust 🦀 and all the awesome tooling and libraries around it…
Yea, there are 50 game engines written in rust - or so I heard.
Rust really isn’t all that. Plus C# is used for all kinds of corporate stuff where Rust levels of performance aren’t needed. It’s also used in several other game engines
Security, performance and most importantly, security. .net updates every week to address security vulnerabilities, stability and enhancements. While the language is lower you just can’t overstate poorly c# lasts. C# Deprecation and dated code make for a pretty high maintenance and frustrating ecosystem at the best of time.
I’m not speaking for Rust level performance. I’m using Rust nowadays, because it’s generally doing a lot right, that other popular languages struggle with IMO.
Think about error handling. I think even Java is better here than C#. I think it’s quite a mistake, not being required to add all possible exception types that a function can throw to the function signature.
Then the next thing, I really hate about almost every popular language is implicit null
. To be really safe, you have to check every (non-primitive) variable for null
before using it, otherwise you have a potential NullPointerException
.
Then take pattern matching, this is a baked in feature of Rust from the beginning and it does this really well (exhaustive matching etc.). There’s “basic” pattern matching in C#, but it just doesn’t really feel right in the language, and is not even close in capability compared to Rusts.
All of this (and more) makes Rust the less error-prone language, which I can say with confidence after long experience with both of these languages (both > 5 years).
I’m honestly not sure why exactly C
was chosen for most of the games, but it’s probably because it’s relatively good to embed, is relatively strong-typed, while being somewhat performant (compared to something like python or other scripting languages).
How does she look like a different person in every pane?
Thinking that C# is just Unity is a MASSIVE disservice to C# and dotnet imo. Unity’s usage of C# is really crummy, basically relegating a very powerful language to working as a weird scripting language.
I mean you’re right, but I’ve never met anyone who thinks that way. C++ is everywhere (although C++ itself is just a hot mess of a language imo).
Absolutely. C# in Unity always seemed to me like a square peg in a round hole.
From my perspective (teaching game programming classes), it’s incredibly clunky for beginners when compared to others. Unity needed a tightly integrated, noob-proof scripting language. Despite C# being the primary language, it’s integration and setup with the rest of Unity seems surprisingly lacking, and, like you’re referencing, you don’t even get convenient use of the broader C# / Mono / .net ecosystem, which makes skills more portable. Even the “bad old days” of Flash/ActionScript were much easier for students, and results in more portable coding skills (e.g. at least transitioning to Web / JavaScript from Flash / ActionScript is easier)
It’s much easier to teach same lessons / concepts using Godot, though sadly Unity is much better known. Hopefully the present pricing chaos might shift the needle a bit on this!
Unity used to also have UnityScript, but it’s deprecated. It was like JS, but it wasn’t really used by many people compared to C#.
Agreed, I feel like if someone starts their C# journey exclusively in Unity, they won’t have a solid foundation in the actual language, just that specific implementation of it as a scripting language.
C# is massive, .NET one of the biggest platforms for code is C#. Plus Godot, Unity’s closest comparable competitor, also allows C#.