Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

VS for Mac was junk. Better off trashing it and pushing people the VS Code route.

I use VS Code daily for .NET development. It's probably 70% of what VS on Windows is, but it works well and I don't need to run a VM for it (if I need some of the in-depth tracing and profiling stuff, I can still fire up the gold standard). VS on Mac was maybe 30%



> VS for Mac was junk. Better off trashing it and pushing people the VS Code route.

Sure but VS Code for C# is trash as well. All those years, both Microsoft products, and this the experience is subpar, especially in comparison to the real Visual Studio.


> both Microsoft products

With 200K+ employees, at this point it is better to think of Microsoft as a city and different teams in it as independent companies in that city with employees that sometimes go out for coffee together :-P


I thought this org diagram was supposed to be an accurate portrayal of how different teams in MS relate to each other:

https://i.extremetech.com/imagery/content-types/01b4upAMl7t9...


Not enough weapons, and some of them should be pointed at the user for the most accurate portrayal. Particularly around any team working on Copilot.


> With 200K+ employees, at this point it is better to think of Microsoft as a city and different teams in it as independent companies in that city with employees that sometimes go out for coffee together :-P

As a former v dash, it was always amusing to see the proclamations come down from the mountain that basically said something like if you are using version x.y.z or below of so and so dependency you must correct it within n days. The people enforcing this seemingly didn't care what the application did or where you were in your software lifecycle, all they cared about was this dependency is raising a flag and we must fix it. :crylaugh:


Dealing with random compliance issues is literally 50% of the job for most SWEs at msft. Another 40% is spent fingering a yubikey and closing browser login tabs. Occasionally you can get some real work done on a slow Wednesday afternoon.


100% which is why I use rider :)


Tried vs code recently, remembering old vs.

Yeah not even in the same room of competence imo. Just a cranked up notepad++ in electron and with add-ons imo.


The extensions are how you make it a proper IDE. I use cca 60, makes it better than VS ever was.


Might as well use emacs at that point. :)


Actually you should take a look at Rider in that case. It’s about 120% of what VS on Windows is! I use it as my daily IDE for a production .NET back end. You won’t look back I promise.


It is embarrassing (for Microsoft) how much better Rider is for C# than Visual Studio.


To this day there is now Visual C++ developer experience that is comparable to C++ Builder for GUI development, there was C++/CX for a while (C++/CLI depends on C# for the GUI part), but then it was killed by an internal riot that pushed for the ways of ATL and IDL in the form of C++/WinRT.

C++/CX was deprecated and replaced by C++/WinRT in 2016.

To this day, to develop WinUI C++ applications, there is no built-in tooling in VS, you need to manually generate and merge C++ code out of IDL files, which have zero support on Visual Studio for syntax highlighting and code completion, unless you reach out to some third party plugins.

To top that, given the way things turned out, C++/WinRT is now in maintenance, no goals to ever move it past C++17, or improve Visual Studio developer experience.

I doubt that they feel embarassed by this outcome.


I haven't touched C++ Builder since mid 2000's. Does it still rely on the VCL? That was always the criticism I heard at the time. The VCL was written in Pascal and no C++ developer liked that it was not C++. It constantly got flack for it. The VCL was good at the time, but Pascal is more akin to C# in the way it does inheritance, so no multiple inheritance was able to be done with VCL components IIRC.


Yes and no, VCL is around, although it has been replaced by FireMonkey.

Multiple inheritance in C++ is a can of worms, unless you're prepared to deal with the related issues of virtual base classes, and diamond inheritance.

That is why after C++ all the languages that support multiple inheritance do so only at the interface level and not implementation code, or rather go with a mix-ins approach.

And in regards to Microsoft world, well the same developers that weren't happy with VCL and Pascal, and in for a treat given that the only modern way to do native Windows UIs in Microsoft world is via .NET consuming DLLs/COM/WinRT, unless they want to either stick with MFC, or the outdated tooling in C++/WinRT.


Yeah, the VCL was the first UI framework I used.

With regards to multiple inheritance, this was the C++ Builder criticism, not mine. That and the extra macros needed to support the VCL. I was a Delphi guy, so I appreciated that the Object Pascal version of using the VCL was cleaner to use than the C++ interface.

We no longer use C++ for UI. Any native code is wrapped up in to P/Invokes. I think all of our MFC apps are EOL now. Everything is WPF or Maui for cross platform.


Can it open VS solution and project files?


The latest version can now even open SLNX files, which are the newest format that removes a lot of the stuff that makes VS Solution files painful to maintain in source control.


Yes, it can pretty much do everything you’d get in Visual Studio.


Of course it can, that's the baseline for a VS competitor lol


Well VS Code can’t open sone of VS project types, more specifically it couldn’t open the one based on JS and JS build tools. I’ll check with Rider.


It depends on the platform. For example, Rider on Mac will not open vscproj/vcxproj files, because it doesn't support C++ really on non Windows. But I think that is mostly because it would need to use a different C++ compiler and that is non trivial. I would imagine it would also struggle with project types that are not normal (VS extensions, installer projects etc) and C++/CLI as that is not supported outside of Windows too (and I think uses the standard vsc[x]proj file format anyway...)


I mean, yes, VS Code certainly is great and all, but…

> It's probably 70% of what VS on Windows is

no. From my perspective, it doesn’t even have 50% of VS features, and that’s probably a generous estimation. VS has lots and lots of features. Granted, many of them are irrelevant for most users most of the time.

Even Rider is lacking in comparison. It is very limited regarding debugging targets for example.


As a regulär Jetbrains products user, I was shocked when I first has to use VS. Until today, I haven't figured out how to open a class by name (from any assembly), other than writing they name in code ans strl-clicking it.


Ctrl-T (or depending on your mappings, maybe Ctrl-P). Honestly, you can't blame the IDE for you not spending time working out how to do the basic stuff.

Visual Studio has come a long way (I've been using it since the .net 1.1 days). Out of the box, it gives you most of what you got from Resharper 2 years ago.

All that said, I switched to Rider a year or so ago and haven't looked back. I used to use VS for C# and VSCode for html/typescript/css, but Rider happily handles both. It's really nice to have one IDE for everything. And unsurprisingly, it seems to perform better than Resharper + VS.


> Honestly, you can't blame the IDE for you not spending time working out how to do the basic stuff.

Wasn’t the whole premise of JetBrains making different IDEs for different stacks that you don’t need to learn how to do the basic stuff and can transfer your knowledge from <insert dominant IDE for said stack at the moment>?


With my key-bindings it's ctrl+comma. I'm genuinely curious though. How did you figure out how to do it in Rider?


FWIW, one of the cool parts about the JetBrains ecosystem is that, almost regardless of the language/IDE you're in, the keybondings are highly similar. When I have to work in VSCode, I happily use the JetBrains bindings.


you have the dev kit installed and put your enterprise license in? whats missing?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: