Visual Studio 2022
devblogs.microsoft.com
devblogs.microsoft.com
I feel like a lot of these are at best _different_. The entire bottom row of icons in their comparison seem FAR FAR less legible, especially the X, Check and i icons
And I wonder why they turned the floppy icon upside down. Maybe to make it consistent with their floppy emoji? ;)
HaikuOS' icon format was designed specifically for vector icons and has support for "LODs" to hide/show elements based on the zoom level but i think (though not 100% sure) that other vector formats can do that too.
> With a 64-bit Visual Studio on Windows, you can open, edit, run, and debug even the biggest and most complex solutions without running out of memory.
> I find it really satisfying to watch this video of Visual Studio scaling up to use the additional memory that’s available to a 64-bit process as it opens a solution with 1,600 projects and ~300k files.
I guess the popularity of Node.js finally broke them.
Yes, they did.
I remember very well multiple MS employees who were present at a conference I attended, explaining the counter-intuitive 'notion' that VS would be worse off in 64-bit.
At the time it seemed it ridiculous to me.
These days, I spend most of my time in VS Code, I frankly don't know if it's less overhead than VS, but it's definitely more responsive. I can't stand working on web projects in VS proper. The plugin model for Code just seems to work so much better in practice. Definitely learned from the past, even if it's a web app, it still works really well compared to alternatives. Integrated terminal and unobtrusive directory tree are godsends.
They eventually relented on this and started moving color back into the development environment. Now they're just tweaking the icon appearance and leaving the colors intact.
The first thing I did was track down a registry tweak to make the menu bar not be in all capital letters.
https://devblogs.microsoft.com/visualstudio/a-design-with-al...
Is there any decent alternative to a good C++ IDE for Mac besides Clion (which costs money).
But if you need CMake support within your IDE, CLion's worth it, just get the JetBrains subscription (student or professional) and don't look back. Oddly enough when I last used it, CLion didn't work with Clang-based projects quite as nicely as Xcode (it preferred GCC) but that might have changed since then.
Finally, if you want to support open source, you can try VS Code. It mostly works, but it's not an IDE.
Eclipse CDT also exists, but ... I think the last time I tried eclipse was back in the mid-2000s before RubyMine when there was a Ruby-on-Rails plugin for Eclipse. I haven't looked back since...
While I sort of liked the AI-predictions, they introduced a serious lag in typing and every couple of seconds typing would nearly freeze. After I turned those off, typing became smoother but still slightly laggy (sort of like typing on a remote terminal on the other side of the world), and the predictions would pop up much slower than VS2017.
Lots of other perf issues like "Find in files" being 3x slower than in VS2017. Or adding a new class to a file wastes several seconds looking up templates somewhere. I saw dozens of bugs filed for these issues over the past few months and most were resolved as "Fixed" (allegedly) or "No repro" but in practice the IDE perf is still IMO unacceptable.
I really hope they fixed that stuff with VS2022.
Eventually I was forced to switch over to jet brains rider and I haven't looked back since, which is a shame because I really enjoyed using the previous versions (2010, 2012, 2015, and 2017).
1) Pressing tab inserts a tab 2) Pressing space inserts a space 3) Pressing enter inserts a newline, with the new line starting with the same whitespace as the previous line 4) Pressing shift-tab removes the leading tab from the start of the current line, or N(=4) spaces from the start of the current line
No surprises, no auto-formatting, no having to go and reconfigure your text editor behaviour when you find random files with different conventions, no modelines etc. I see the huge depth of preferences in VS, and think it must be possible, but every time I come away less confident.
However, if you can tell me how to get visual studio to do this, then I would be incredibly grateful.
In my opinion mixing spaces and tabs is completely fine because they are for different things. Tabs for indentation, and spaces for alignment.
Why no auto indent? Because the editor doesn't have enough information to do it correctly (e.g. perhaps you are about to paste some code which is already indented as you want it). I am not saying you should have the same preferences as me, but I am pretty happy with this behaviour, and perfectly ok with pressing tab after enter (or even pressing space 4 times - again, this is just my personal preference and I know that there was a time in my life when I would have looked at this with disgust).
So - how do I configure VS to do what I want?
https://stackoverflow.com/questions/737222/turn-off-auto-for...
You won't get much more help unless you describe what you've tried and why it didn't work for you. As far as I can tell the settings you're looking for aren't very hidden.
- Pressing enter results in just adding a newline, without copying the whitespace from the previous line OR - Pressing enter results in addine a newline, copying the whitespace, but replacing spaces with tabs on the new line
I guess if someone could once show how to make it so adding a newline to:
<tab><space><space><space><space>foo
(when configured with 4 space tabs) I get: <tab><space><space><space><space>foo
<tab><space><space><space><space>
Instead of: <tab><space><space><space><space>foo
<tab><tab>Generally speaking, I have VS Code configured how I want it and will use that over 95% of the time... even for C# projects.
I’m not sure if the GP is asking for what you seem to be referring to. I thought of that request as the keys should insert the characters they stand for. Are you thinking only about multiple spaces used instead of a tab? Spaces are routinely used to increase readability in code. Even something as simple as comparisons in loops are more readable with spaces around the symbols. There are many other cases where spaces are used as spaces.
{
<tab>foo(arg1
<tab> ,arg2
<tab> );
}
Though I think this example is less likely to be controversial: {
<tab>bar(); /* Some comment
<tab> * across two lines */
}
But it is all fine, because I don't really feel like I need to defend my preferences - that is the nice thing about them.https://web.archive.org/web/20160309232651/http://blogs.msdn...
Performance in Visual Studio has become such a problem that I've renounced it entirely in favor of Rider.
Between that and my preference for Macs for my personal laptops -- and I've been very excited at how good .NET Core has gotten on non-Windows platforms -- as well as a ~3 year sojourn working with Java 8/11 in IntelliJ, I've gotten very comfortable working with JetBrains IDEs and generally prefer them when I have the option. Structure View is great, the search is nice and snappy.
The only thing that frustrates me with Rider is I don't think you can apply fixes from Roslyn analyzers at the file/project/solution level like you can in VS. We enforce our team's coding standards using those, so it's a minor pain point, but not enough to get me to stop using Rider given how much faster it is.
VS Code isn't quite as good on C# projects, I will admit, but still so much better (less blocking) in general.
Not familiar with Rider though.
What a horrible thing to say to your customers.
My advice to people is to consolidate projects wherever possible, although you wouldn't know it seeing some project layouts you can still have separate namespaces and folders inside projects. I think many do this in the hope it will help build times but it does the opposite, msbuild is the slow part and csc (the c# compiler) is lightning fast, so make it do the heavy lifting.
Another bit, I would generally have the Interfaces project include the client... so one DLL for other solutions to import from, and it doesn't really add much of anything to the Server implementation. That's just one example.
Another is separating API controllers, DAL, BLL into separate Projects... there's rarely a practical reason for this, and in practice just adds indirection and complexity for very little real world value. But hey, "Enterprise" patterns and all.
Meanwhile, are there any examples of modern applications being written in 32 bit for performance reasons? Not that I can think of, or at least nothing that is meant to run on a 64 bit PC.
There’s a lot you can do with extra memory headroom, especially when developers usually have 16 or 32 GB to work with.
That being said, I really wish the X32 ABI in linux had garnered more interest. The concept is that it's 64-bit code that runs with a 32-bit memory space. All your pointers can still be 32 bits but you also get all the architectural advantages of 64-bit mode too. In theory you should get the perf benefits of 64-bit without the perf costs.
The ABI wasn't really used much, so it got removed. But it was a bit self fullfilling. We never wanted to switch to it because it had poor surport from distributions, but distributions didn't bother supporting it because nobody used it!
As mentioned elsewhere, the switch does increase pointer sizes, but I’d be very surprised if that is significant compared to the amount of memory used by strings and other data.
Like the sln mess that makes switching build configs a 15 minute wait on a large solution.
They might have fixed perf issues also but I’m not optimistic.
The chance for this being a general perf win is if there was overhead involved in the separation into devenv and supporting processes that can now be cut by making it all one process again.
Here’s to hoping they have also done some big changes under the hood, perhaps enabled by the switch to x64.
https://www.joelonsoftware.com/2001/03/23/strategy-letter-iv...
"80% of the people use 20% of the features... Unfortunately, it’s never the same 20%."
> legacy technology like WYSIWYG form builders
Kind of a weird statement to make -- who doesn't use WYSIWYG when working in XAML? Nothing legacy about that.
Even ASP.NET Core which was specifically designed to allow development exclusively from the terminal, still offers a better experience in the full VS Than VSCode (even if JavaScript/CSS/TS/etc part is arguably better in VSCode, the C#/.Net side is better in VS).
But long term: I anticipate VS being a life-support product for that legacy tech and VSCode being the only IDE they move forward with. We just aren't quite there yet.
I remember VS was a real well integrated IDE back when I used it. Something in the same league as IntelliJ, etc. VSCode wasn't in the same league at least for me.
I really loved the remote execution feature of VSCode. But in the end it resulted in me programming in IntelliJ and then copy and pasting the code over to VSCode...
For me it feels like the modern Eclipse. The one IDE/Editor which is basically a container for thousands of plugins. And it's great. Everyone uses it. There are a lot of plugins that cover every imaginable use case. Even more than e.g. IntelliJ or Visual Studio could cover (ok maybe not). But in the end it's just not as great as an IDE with most core features already build in and tuned against each other.
But then there are also people using unmodified vim installations for programming. So the expectations and ways of working really seem to differ a lot.
The page says you need to install a compiler. The debugging page says GDB. It doesn't ship with these does it? That's all I'm saying.
A lot of the tooling options with VS are getting better month over month even. There's a reason why a fair number of developers for Go, Rust, TypeScript and other languages are absolutely preferring VS Code over other options...
(You do still have to separately install Docker. I guess this is because Docker puts a lot of global state on the machine, so having VSCode try to manage a separate copy of it would cause too many problems.)
The terminal used with VS Code (and Hyper) needs a bit of work though... it gets wonky now and then, good enough most of the time, until it isn't.
I use it often. It doesn't do profiling but building and debugging works fine (though I still prefer VS proper).
I use VS on Windows, VS Code on Mac for the same code base. I have for decades in the former and years in the latter (finally ditching XCode might have been one of the best decisions I've ever made with regard to my tooling).
I would also say that VS Code's plugins don't block the world. Web projects in VS are absolutely painful in general.
You can't compare - VS is way ahead of VSC in terms of code completion and IDE<->engine integration