MaxiTB

The real MaxiTB since 1986. Personal account. Definitely not a German. Software architect, overpaid consultant and former game dev. In stats we trust.

pronunciation
/mäk′sē/ /tē/ /bē/
nationality
Not-a-german
countries visited non-professional for at least 7 days
90+
MaxiTBmaxitb
2026-01-30

@AliveDevil Interesting. Never ever happened to me before. I only had once an issue with a managed C++ assembly, but not a single .net assembly of mine was ever flag. Except for McAffee, but that one has been crap for decades, so that's, as they say, a you problem not a me problem.

MaxiTBmaxitb
2026-01-30

@AliveDevil Ah, snakeoil - I see. I was confused at first because outside of the Windows Driver cert process I have never heard of signing any code for over a decade now and afaik .net assembly are only still signed because of some weird legacy thing. Didn't know that it actually effects anti virus software cause beside WD I have only used Clam in over a decade. Well, good luck, no experience with this one.

MaxiTBmaxitb
2026-01-30

@AliveDevil Oh driver signing, nvm, I saw signtool and in my mind read sn hence my confusion.

MaxiTBmaxitb
2026-01-30

@AliveDevil I'm confused - are you talking about ClickOnce certificates or assembly name signing?

MaxiTBmaxitb
2026-01-29

@devleader You should try stack arrays with spans with your tiny collections, and you will be amazed lol

MaxiTBmaxitb
2026-01-29

Well, looks like the AI bubble is bursting a bit faster than expected and takes the lead 🙂

MaxiTBmaxitb
2026-01-27

@JGraber They are called collection expressions... list pattern was the old working title of the feature.

learn.microsoft.com/en-us/dotn

MaxiTBmaxitb
2026-01-24

@mihamarkic Then it's perfect for self-hosting because you don't need a ton of infrastructure from the start. If you rent, buy or just run your on-premise server on a Pi, you have all ways of easily migrating to other scenarios when you project grows. When it comes to CI frameworks/solutions, there are tons out, both commercial, mixed or completely free.

MaxiTBmaxitb
2026-01-24

@mihamarkic Why not host one on your own server? Way cheaper in the long run and you have all options and don't need to switch again in a few months when the next one goes down in enshitification hell lol

MaxiTBmaxitb
2026-01-23

@khalidabuhakmeh @dazfuller They are perfectly fine in replacing stuff that doesn't matter and where the result end up in a cabin anyway and nobody cares about it to begin with. Or in other words, they are perfect to replace basically every line manager. Now that's where LLMs shine as a cost saving and productivity tool. You get rid of the liability job while boosting productivity because the actually value generating jobs are not slowed down by pointless requests.

MaxiTBmaxitb
2026-01-23

@khalidabuhakmeh @dazfuller Nah, they are a pain in the butt if you are a senior and have to review the nonsense. At that point you can use a RNG to generate stuff, it's at least not so misleading and actively hiding mistakes. Reviewing LLM nonsense usually takes about three times the effort to correctly review and then you have to coach the junior that had no clue to begin with what to do. They are just a big waste of money all way around.

MaxiTBmaxitb
2026-01-23

@dazfuller @khalidabuhakmeh Yeah, that's the issue. Why are LLMs even allowed in your company?

MaxiTBmaxitb
2026-01-17

@nietras Thanks to the hashtag it was now stolen by GenAI and is no longer yours. I'm sorry. MS will soon send you a bill or they will demand access to all your linux machines 🙂

MaxiTBmaxitb
2026-01-16

@khalidabuhakmeh Always thought .net is a horrible name. But eh, MS sucks when it comes to naming things, it's not really a secret 🙂

MaxiTBmaxitb
2026-01-14

@bradwilson Microslop is really going down the drain. I personally don't like Rider, but honestly the way MS is going it's questionable if the company still exists in a year for them putting all their eggs in a bubble and messing up everything else that will soften the fall. At least .net is open source and I regularly backup locally the REPOs cause who knows what happens to github when MS goes under.

MaxiTBmaxitb
2026-01-13

@AliveDevil Well, bad practice means that you shouldn't do something EVEN if it is (partially) supported. Otherwise it would be impossible in the first place.

The reason why it's a really bad idea to begin with is that it is quite common that spaces in file names are not supported by 3rd party tools. It's basically asking for trouble for no good reason. After all, dots have been the way to separate parts of file names in .net since the beta.

MaxiTBmaxitb
2026-01-13

@AliveDevil Why would you ever use spaces in project names? That's been bad practice for a like forever...

MaxiTBmaxitb
2026-01-08

@mortoray Well, it's right there in the doc you linked... have you even read it?

Quote:
"If a.x or a[x] is of a non-nullable value type T, a?.x or a?[x] is of the corresponding nullable value type T?"

And I already showed you in the code snippet that the compiler does correctly short circuits in it's implementation. I don't see a confusion.

I think you are just confused with you JavaScript background over how strongly typed languages work and that there are not multiple possible return types.

MaxiTBmaxitb
2026-01-08

@mortoray Here you can see how it works:

sharplab.io/#v2:EYLgxg9gTgpgtA===

The first two methods are the individual operations, the third is the optimized combination with early returns (automatically done by the compiler). As you can see, Ranks is not marked by attributes as non-nullable because it can't, it could be null in both cases do to how propagation works logically.

MaxiTBmaxitb
2026-01-08

@mortoray Ofc it can. If colorChips is null the null is propagated to ranks. Hence the name null propagation operator for ?. ;-)

With propagation T turns into T? and if the null condition is not met it will again return default(T?) and so on. It's just an if that returns null when the source is null and otherwise does the operation but returning obviously a nullable type, because C# is strictly typed. You can't have two different return types, only the best minimum compromise, which is T?.

Client Info

Server: https://mastodon.social
Version: 2025.07
Repository: https://github.com/cyevgeniy/lmst