Microsoft's Visual Studio team posts product announcements covering releases, previews, UI changes, and platform support such as Arm64 and Mac.
HN links it for release news; commenters cite it for Visual Studio for Mac on M1 and extensions, and praise Edit and Continue.
Visual Studio for Mac has run natively on M1 (without Rosetta) since the May 22 release of Visual Studio 2022 for Mac v17.0 - https://devblogs.microsoft.com/visualstudio/visual-studio-2022-for-mac-is-now-available/
The installer is a separate binary and currently still requires Rosetta. There's an update due out very soon (a few weeks) that will remove the Rosetta requirement. The team prioritized getting the application fully native before the installer since you spend a lot more time running the app than the installer.
Also it's important to know that Visual Studio for Mac isn't the exact same application as Visual Studio (Windows). Visual Studio is 25 years old and has some Windows specific features that don't make sense on macOS. Also, Visual Studio for Mac is optimized to integrate with macOS features (e.g. accessibility and themeing). There's a lot of code shared between the editor, project system, debuggers, etc., and we try to balance making them as similar as possible while following the macOS app guidelines and conventions.
Disclaimer: I'm on the .NET team at Microsoft, and work with the Visual Studio for Mac team a lot.
Sometimes, the devs can sneak in a hidden fix. For example, remember back when VS 2012 made menus ALL CAPS? Officially, that was the brave new world everybody was supposed to live in (https://devblogs.microsoft.com/visualstudio/a-design-with-all-caps/). Users hated it with a passion.
And then it turned out that there's an undocumented registry key to re-enable the old behavior, that was leaked without much fanfare (https://www.richard-banks.org/2012/06/how-to-prevent-visual-studio-2012-all.html). It was never mentioned in any official documentation, but word of mouth spread it far and wide, and its existence probably spared the worst in terms of angry user rants.
Ironically, the outcry over the caps was big enough that this setting eventually got an official checkbox in a major release sometime later, and then became the default behavior again.
A real shame. To me, VS for Mac seemed to be converging on the level of product functionality/quality I associate with VS on Windows, only for me to find that its going away.
Seems like VS Code + C# Dev Kit is going to be the future [1]. I've been using VS/Mac for some MAUI and Xamarin development and, while I can probably continue to Maui in VS Code with C# Dev Kit and another extension, there doesn't appear to be a way forward for Xamarin.
And for some reason I find VS Code, with all its extensions, about as friendly as Eclipse (which is to say, not much). I much prefer the kind of integrated, native experience that Visual Studio provides (and without the Electron bloat).
[1] https://devblogs.microsoft.com/visualstudio/visual-studio-for-mac-retirement-announcement/
Why must this be a mutually-exclusive situation?
You can have the source code debugger log messages to the output window without having to add logging statements and recompile the affected code.
This is the 21st century.
see visual studio's tracepoint functionality - works in native and .Net languages, https://devblogs.microsoft.com/visualstudio/tracepoints/
sure, if you want the logging messages available for perusal when deployed in production, then this won't help.
Even better - use Hot Reload and tweak your code in the debugger - https://learn.microsoft.com/en-us/visualstudio/debugger/hot-reload?view=vs-2022
[edit] GDB's equivalent to tracepoint is mentioned elsewhere in this thread - https://news.ycombinator.com/item?id=42147372
There's a rule that if something is easy to invent, a bunch of people will whip up their own versions independently, sometimes even within the same organisation.
So for there's...
C# scripting (CSI.exe): https://learn.microsoft.com/en-us/archive/msdn-magazine/2016/january/essential-net-csharp-scripting
PowerShell Add-Type that allows one-file inline C# scripting: https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.utility/add-type?view=powershell-7.5#example-1-add-a-net-type-to-a-session
The Roslyn .CSX script files (RCSI.exe): https://devblogs.microsoft.com/visualstudio/introducing-the-microsoft-roslyn-ctp/
.NET Interactive: https://github.com/dotnet/interactive
... and now this.
> it's a great implementation of the traditional stop-and-inspect debugger feature set, but that's all
It provides more than that - the "Edit and Continue" feature is invaluable, allowing you to pause execution at a breakpoint and change the code, such that the new code runs when execution resumes.
As an aside, Rider also has this feature, and I find it to be much faster and more reliable than VS.
Visual Studio also recently got "Time Travel Debugging"[0], which lets you record execution then replay in the debugger. I haven't actually tried this yet.
[0] https://devblogs.microsoft.com/visualstudio/introducing-time-travel-debugging-for-visual-studio-enterprise-2019/