Fati Iseni

Fati Iseni

@fiseni.com

Software Engineer | Microsoft MVP | .NET https://fiseni.com

1.1K followers448 following226 posts

I was holding a demo on structs. No surprise new devs are confused with all the concepts. readonly, ref, in, record struct.. 🤯 Btw, using the `ref` keyword to mark that struct can't live in the heap is the most counterintuitive term ever.

I quickly created this converter now. Not optimized, but just as POC. Is there an easier way? Or custom converter is the way?

Ok, this covers it better. Actually, no need to correlate Customer.Id with Address.CustomerId. It's enough to have unique strings per scope.

I'm playing with extension properties, and I'm curious why overloading is not allowed. It works just fine for methods. #csharp #dotnet

This was heavily downvoted on reddit :)

Fati Iseni@fiseni.com

Published v0.4.0 There are breaking changes. The base infrastructure is updated, and the workflow is streamlined. I don't expect some drastic changes anymore. I think this one will be a good candidate for a stable release. #dotnet #csharp github.com/fiseni/NuSeal

Fati Iseni reposted

Published v0.4.0 There are breaking changes. The base infrastructure is updated, and the workflow is streamlined. I don't expect some drastic changes anymore. I think this one will be a good candidate for a stable release. #dotnet #csharp github.com/fiseni/NuSeal

github.comGitHub - fiseni/NuSeal: A .NET library that helps you protect your NuGet packages with commercial licenses.A .NET library that helps you protect your NuGet packages with commercial licenses. - fiseni/NuSeal

Just a reminder. Now, I'm seeing this issue everywhere :)

Fati Iseni@fiseni.com

Here is even more simple example. In case of min = negative number, how much do you think the Run would allocate? You'd expect no allocation, but it will allocate for the closure (the DisplayClass).

For #msbuild folks. Is there a way to use arbitrary task name in UsingTask, and specify FQDN of implementation by other means? Ideally, I wouldn't want to use RoslynCodeTaskFactory and load/instantiate the impl manually. That approach seems flaky. #dotnet #csharp

The library is taking shape. Released v0.3 Now there is support for validation mode (error/warning), scope (direct/transitive), and other improvements. Check it out. I'm keen to hear from library authors and their requirements. #dotnet #csharp

Fati Iseni@fiseni.com

📦 Announcing NuSeal A library to protect your NuGet packages with custom licensing! NuSeal provides the infrastructure for creating and validating licenses. It validates the licenses during build time. #dotnet #csharp github.com/fiseni/NuSeal

Ok now it makes sense. It seems System.Text.Json is included in the MSBuild runtime that VS uses. Example location c:\Program Files\Microsoft Visual Studio\{Version}\{Edition}\MSBuild\Current\Bin. It contains also System.Buffers, System.Memory, etc.

Auth libraries in .NET are a mess. It seems JwtSecurityToken is considered legacy and we should use JsonWebToken. The new one doesn't accept claims. Now we have to pass JSON? There are 10 ways how to create, read, validate JWT. I mean... ah nevermind #dotnet

Ok, this caught me off guard. In our benchmarks, this section is dead code but adds allocations. If I comment out that section, I have 0 allocs. How does this unreachable section affect that? #dotnet #csharp

Fati Iseni reposted

Who can shed some light here? What's the rationale for allowing internal methods in the interfaces? Once you have an internal method, consumers can no longer implement that interface. If they do not include it in their impl, it's a compiler error. But they can't include it either. #dotnet #csharp

To try out the experience, for the whole week, I've been requesting PR reviews from Copilot on GitHub. While it can find some stupid and easy mistakes, for more complex code just spits out nonsense.

I'm not sure what your overall experience is, but I get little to no engagement here. Same on Mastodon, even worse. Also, I see no technical discussions going on at all. I guess this "short format" of social networking is dead.

Same here! Also, I struggled so much on my i386 to install mouse drivers. It was such a joy when it suddenly worked on DOS apps. And now you have to be embarrassed if you use one?

Frans Bouma@fransbouma.com

No idea where that revival comes from tbh... back when I started in 88, there was only CLI, terminals (real ones even), but once we were freed from that limit, things were so much easier. I hate the CLI. Never understood why typing a long command is preferred over a click of a button->