239 points

For those wondering, it’s most likely a jab at unity with it’s new license model, as you could code in C# in it.

permalink
report
reply
33 points

Is c# mainly just used in this engine?

permalink
report
parent
reply
90 points

It’s probably a tiny fraction of the C#/dotnet ecosystem. But hobbyist meme creators mostly care about games, I guess.

permalink
report
parent
reply
3 points
*
Deleted by creator
permalink
report
parent
reply
54 points

No, as other’s have pointed out it’s not. There are plenty of other areas to use it, even in other game engines. OP is just trying to make it seem funny by making the exaggerated narrative that it’s the only use case for C#. If Boo was still around in Unity this joke would been accurate with that, don’t think that was used anywhere else

permalink
report
parent
reply
50 points

It is also the language of DotNet framework so hardly.

permalink
report
parent
reply
18 points

I mean Windows is also undergoing enshitification it could still be true?

permalink
report
parent
reply
47 points

No, C# is a general purpose language that Unity has a botched, outdated version of.

permalink
report
parent
reply
6 points

Not at all. Unity’s use of C# is pretty unconventional even. Not representative at all.

permalink
report
parent
reply
5 points

Absolutely not. It’s used everywhere on the web and other places.

permalink
report
parent
reply
2 points

WTF I didn’t understand, thanks for the explanation. The fact that it’s used all around the world in big companies doesn’t matter I guess.

permalink
report
parent
reply
120 points

You think C# is a Unity thing?

permalink
report
reply
78 points

I doubt the number of C# developers would drop even 1% due to Unity fucking itself.

permalink
report
parent
reply
18 points

Me writing my silly little forms apps in silly little VS Pretty drop-down fields :)

permalink
report
parent
reply
11 points

Oh, VS is not “little”, it’s one of the bloatiest pieces of software on earth.

Also, Forms? How dare you. :p

permalink
report
parent
reply
5 points

Once upon a time, a content management system for microsoft.com was a plug in for VS. And also a plug in for Word. And these two plugins had different feature sets, so you had to use both to manage content on microsoft.com. Don’t ask how I know.

permalink
report
parent
reply
3 points

It’s not so bad in the newer version. The switch x64 and put of process architecture helps a decent amount.

I always have a pretty beefy dev machine though.

permalink
report
parent
reply
3 points

Can confirm. Have had to download the full VS 2022 Pro over a shit wifi connection at work 55GB. It took half a day then failed. Re run the command to recheck every package and get the missing / broken ones and it is a single threaded app so it takes forever computing file hashes on one thread.

In the end it took around 7.5 hours.

permalink
report
parent
reply
1 point

My boss: add this field to this old form.

Me: open the form, add my field. Now VS crashes. I have to open the form code in a different editor and delete all the code VS added to the form when I opened it in the form editor.

permalink
report
parent
reply
1 point

Oh, so it hasn’t changed since I used VS6 back in the early 2000s (bought at the auto parts market from Russians on an almost transparent CD)

permalink
report
parent
reply
109 points

Ok. What am I in the dark about this time?

permalink
report
reply
95 points

Guessing it’s about Unity changing their royalty structure.

permalink
report
parent
reply
91 points

Which is kind of weird because most C# devs aren’t doing games.

permalink
report
parent
reply
13 points

Yeah. Maybe c# game developers will drop. But they’re actually a drop in the ocean.

permalink
report
parent
reply
43 points

Surely other engines use it? I know godot supports it. Not to mention half the business software of the world (pre cloud) seemingly built with it. etc

permalink
report
parent
reply
49 points

Unreal, Unity’s primary competitor, doesn’t. Mainstream gamers seem to only know about the two. Anyway, it’s a meme. I use C# for exclusively boring corporate stuff, and will continue.

permalink
report
parent
reply
9 points

It’s a joke built in hyperbole for sure. A lot of my friends are C# devs they’re not going anywhere.

permalink
report
parent
reply
8 points

A whole lot more than game engines uses C#.

permalink
report
parent
reply
5 points
*
Deleted by creator
permalink
report
parent
reply
1 point

Doesn’t Excel mainly use C#?

permalink
report
parent
reply
78 points

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.

permalink
report
reply
16 points
*

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!

permalink
report
parent
reply
4 points

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#.

permalink
report
parent
reply
1 point

I am curious, what exactly is missing in the latest LTS version from .Net what makes it so clunky to use for students? Afaik it is pretty solidly close to actual .Net 4.7 nowadays.

permalink
report
parent
reply
10 points

I’d say the same with Unreal and C++

permalink
report
parent
reply
7 points

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).

permalink
report
parent
reply
2 points
*

C++ is pretty good by itself but I end up using mostly C for actual functions, QT, wxwidgets and a few others utilise C++ to a degree but my god does it get messy without the help of a visual aid (blueprints, formbuilder etc)

permalink
report
parent
reply
9 points

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.

permalink
report
parent
reply
6 points

Can confirm as someone who did exactly that before starting over with c++

permalink
report
parent
reply
3 points

It is pretty damn close to actual C# nowadays. Some version, I think it was 2019, really upped up the scripting backend.

permalink
report
parent
reply
8 points

Not to mention C# is also the best way to write a Godot project.

permalink
report
parent
reply
75 points

Look at all these C# dev who don’t know the witch hunts are starting in 2024.

permalink
report
reply
18 points

Time to become a Visual Basic .Net developer

permalink
report
parent
reply
7 points

Jokes on you, I am already one! (yes my company chosen dev language is really vbnet)

permalink
report
parent
reply
7 points
*

My old boss loved VB.Net. I still remember a time when I helped him out by solving mysterious bug for him.

He used to have this class he copied about to do database stuff. Not the worst thing of itself, but it was oddly specific in some ways for reused code. E.g. It had a function that took an enum value and returned connection string. And of course what options were in the enum varied.

So I come in one day and two other devs are already peering over his shoulder trying to help. The program is crashing when it tries to connect to the database and they can see for some reason the connection string is a single letter. I ask to see the function that is getting the connection string and see he’s removed the parameter, but the compiler didn’t pick up on it because:

  • VB.net lets you call functions that have no parameters without parentheses
  • VB.net is type lax, so an enum can be treated as an integer without casting
  • VB.net uses parentheses for array indexation as well as method invokation
  • .Net strings can be indexed like an array of characters
  • VB has no character type so VB.net treat characters as 1-length strings

So instead of passing an enum to a function, it was calling the function with no parameter, then using the enum value to index the returned string into a single character, which was then treated as a string and passed to the SqlClient constructor.

permalink
report
parent
reply
6 points

I’m so sorry.

permalink
report
parent
reply
6 points

All I’m saying is “AndAlso”

permalink
report
parent
reply
5 points
*

I remember when I turned up to a new C# role, when all the interviews had been about C#, but the system was all VB.Net. Fckmylife.

permalink
report
parent
reply
3 points

The next Slay the Spire to be developed on Microsoft Access

permalink
report
parent
reply

Programmer Humor

!programmer_humor@programming.dev

Create post

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

  • Keep content in english
  • No advertisements
  • Posts must be related to programming or programmer topics

Community stats

  • 7.2K

    Monthly active users

  • 955

    Posts

  • 37K

    Comments