Microsoft Ignites Exchange
Exchange gets hacked; Microsoft .NET Foundation is opening up (hhehehe) about its "assignment model" change.
Last Week in .NET - Microsoft Ignites Exchange - Week Ending 6 March 2021
Microsoft Ignite happened last week. Its releases were all about Azure, azure, azure, and at least for the moment tangential to the work we do here. There's a playlist if that's your thing, but the first video on the list, and I am not shitting you here, is a video is titled "Faster Management Performance – Inventory and Financial Management learnings in Azure". ...and I'm already asleep.
🚨🚨🚨 Microsoft Exchange is currently being hacked. Yes. That's currently as in right now. If your organization hasn't patched your Exchange server, please stop reading this and do that now. Even cisa.gov is getting into the act.
🕵️♀️ The .NET Foundation snuck in a change last November that removed the "Contribution" model for Open Source projects that want to join the .NET Foundation. They just as quietly removed it, but their verbiage and their few comments on the matter push the "Assignment" model rather heavily. The Assignment model will assign the copyright of your project to the .NET Foundation. And in case you weren't aware, the .NET Foundation is controlled by Microsoft. Its paid employees are paid by Microsoft, it has a non-revocable and single-seat veto power on the Board of Directors, and now it would like you to pretty-please assign the copyright of your open source project to this 'independent' organization.
The latest is that the Executive Director says it's not the only model, it's just the preferred model. Yes, I too would prefer other people gave me their stuff instead of having to share it. Keep your eyes on this space; as I know more, you'll know more.
🔊 Want to know more about how the .NET Foundation is set up and how it works? I covered that on a previous podcast episode of Last Week in .NET.
🗃 Adam Sitnik wants to hear from you if you use FileStream in a performance related scenario. If you use it and you have a need for speed, reach out to Adam and let him know how you're using it. "On a computer" probably isn't a good answer.
🆘 Microsoft has realized leaving Nuget to die probably isn't a good idea, and so they're finally paying attention to it. Nearly every .NET team in existence relies on Nuget, and yet it's received less love than a 12 year old dog at a pound. There are signs that Microsoft wants to change this; and that's a wonderful thing. We'll see what comes of it.
🎉 Windows Terminal Preview 1.7 has been released Speaking of showing some love, the Windows Command Prompt is the bane of sys-admins and developers everywhere; and Microsoft recognizes how lackluster its been, and to asuage us into wanting to use Windows as a Development platform, they're showing some love by replacing it with something that doesn't outright suck. Thank you, Microsoft. I mean it.
🎉 SecureString was officially deprecated in .NET 5,and some Azure libraries are catching up to this new reality. SecureString was a literal black box labeled "secure" when in reality you just needed to open the lid to peek in. It was never meant to be 'secure' and deprecating its usage helps remind any yahoos that it isn't.
🎉 Microsoft releases the .NET Upgrade Assistant Preview That's its name. Preview is just sitting on the end like that friend that comes along to dinner even though they weren't invited. I guess we're just lucky they didn't tack on "Azure" or "365" to the name. As it says on the tin, it helps you upgrade your .NET Framework projects to .NET 5 (and beyond, one assumes).
🎉 Visual Studio 16.10 Preview 1 has been released You see Microsoft? You can put a version number on a "Preview". Since the New York Times "Jetbrains" debacle (where they basically published an opinion as fact), some enterprises are moving away from Jetbrains Resharper. This is of course bad for the developer community since even in the year 2021, Microsoft's refactoring tools pale in comparison to ReSharper. In an effort to gain some ground, Microsoft has released new Refactorings in this preview. These same refactorings (with the possible exception of the "find all references for Source Generators") have been in Resharper since... well.. forever?
Remove Unused References
Smart Break Line
Simplify LINQ expression refactoring
IntelliSense completion for Enum values
IntelliSense completion mode setting
Code style preference for new lines
Find All References support for Source Generators
🎉Microsoft released a new "low code" language called "PowerFX" and no it's not on the .NET platform because a cohesive brand vision is not a thing Microsoft does.
🎉Windows Server 2022 is in preview and includes changes to make Windows Containers Smaller. They currently clock in up to 5GB; which is an order of magnitude larger than debian based images, and two orders of magnitude larger than alpine based images. Let that fact marinate.
☑ The .NET Foundation has published their "January/February 2021" newsletter. There are lots of little release goodies in here as well as another exhortation to fill out their survey. Please, take the survey.
🐦🦃 What's the difference between .NET and .NET Core? Mahesh Chand spells out the differences. In a fit of irony, the article itself is out of date, having only been released in July of 2020.
🎉Visual Studio 2019 for Mac Version 8.9 has been released and it now supports .NET 6 Preview 1 (not so hard, is it Microsoft) and debugging and running tests in Unity.
🐷Windows 10 Insider Preview Build 21327 is released and Microsoft is touting a re-designed "News and interest" section as a feature. I don't want lipstick on the pig. I don't want the pig sitting there, in my taskbar, pretending to be relevant. It's an operating system, folks. Focus on that, please.
🎉S4M for .NET It's a state machine library for .NET, and I'm a big fan of Event Driven Architectures, and when you combine them with State Machines, a whole large swath of both reasoning issues and bugs just go out the window (to be replaced with abusing the state machine; but we can't have everything). I'm going to give this a try and see how it fares. In a "It better do what it says on the tin" moment, S4M stands for "Short, Simple, and Straightforward State Machine Library".
🗣There are murmurings towards total "Notebook" support in Visual Studio. I love Visual Studio -- I believe it to be the second best product Microsoft has ever produced (Excel is pretty amazing), and it getting actual interactive support for C# notebooks would be a nice addition. Maybe they could just do us a favor and acquire the LinqPad folks?
And that's it for what happened last week in .NET. Patch your systems and stay frosty.