I have coded in C# more than in all other programming languages combined, and now I write TS everyday for my job. I can assure you, this man is one of the greatest minds of our time.
Anders makes me so proud to be Danish. Despite being a rather small country which normaly is easily overlooked, there are quite a few scientific accomplishments which has been achieved by Danish scientists and enigneers, one of the more notable ones are Niels Bohrs foundational contribution to the atomic structure and quantum theory. But being a software engineer, i like to consider Anders Helsbjerg and Bjarne Stroustrup (Creator of C++, and still one of the lead devs on it i believe), to be up there in terms of scientific accomplishments.
Nullable reference types is a joy to work with, I know this sounds stupid but it actually forces me to develop the habit of null checking and I've been using asserts more often to make sure something isn't null when I'm absolutely sure it's not supposed to be null in that situation (like in linked list and trees stuff). Still, I wish there were a project-wide #nullable enable instead of having to write that in every source file.
I have been some time out of C#... now, I am looking for something in my next project and considering also GO, because of even higher simplicity (and disruptive effort force against objects everywere at any cost - please, hate me in comments where I am wrong, I am probably, I know...)... sure, there are issues between desktop/server coding (solved by JS/TS things using node, but, you know... weird, may be Ryan Dahl does something new on TS (but tending to marriage it with quite ugly RUST), I touched it in research journey too, well...), although code generation of web UI could help me. But I also discoverred the Span things and all the more close to metal optimizaitons as ValueTask etc... What I would really want to see is comprehensive comparison of modern C# with current state of GO ... and, of course, what Anders thinks about them :-)) ...for sure he could be also be the one who can help them to fight generics on the next level, maintaining simplicity they seek ... in matured C# there are not anymore many degrees of freedom :-) cheers
The problem with C# is .Net runtime. Takes a bug man to admit. With .core this problem seems solved. But there are other problems with core: Security and patches.
in fact, I have now four stickers in front of me ... C#8, TypeScript/ES6, Go, Python3; and I need browser extension UI, linked to desktop app/service with UI; everything as simple as possible. I definitelly want to have decoupled UI (may be it ends with pure ES6, may be generated - here I dont like the huge node-based frontend toolchain, really) from hardcore worker service (it may be any of the languages, talking to the DB and FS, ready to try all of them to feel the "feeling") ...has anybody some tips?