It surely "comes close" ;)
It surely "comes close" ;)
The code analysis/improvements/suggestions is definitely great though, at least for a while.
- No substring completion (e.g., like emacs's ido-mode), no fuzzy completion (e.g., like various JS-based editors), no acronym completion (e.g., like emacs)
- Navigation bar searches are shit. You have to select namespace, then class, then symbol, and there seems to be no keyboard shortcut for any of this stuff. It should present a list of entities in the file, display fully-qualified name of each, and let one search that list using the search mechanisms
- Class view searches aren't great. They solve many of the above two problems (the full list of entity names is searched, and it finds by substring), but the results don't update in real time
- Very hard to find files. Say you have a massive project with loads of solution folders and you need to find that file that's got the name "ProductScreen" in it - well, good luck! There's something I've seen some people do with the toolbar-based Find in Files widget, but that only searches by prefix, which is useless, because so many projects have a mandatory prefix on their file names
When I was a regular Visual Studio user - less Windows work of late means I've mostly been using emacs - I used to use Visual Assist (http://www.wholetomato.com/), an addin that improves the above functionality a bit. Visual Assist's code completion is a bit intrusive, but it does the acronym completion thing; for navigation, its navigation bar replacement lets you search fully-qualified names by substrings, its class view-style functionality updates the symbol list (searched by substring) in real time, and you have something similar for finding files as well.
All of this stuff is great for finding your way quickly around an unfamiliar project - i.e., any project with more than 15 programmers, even after you've been working on it for 2 years. And even when you know exactly what you want, at least you don't have to keep typing in that stupid project-specific prefix everywhere.
(I'm happy for the Visual Assist people that MS hasn't just copied their functionality exactly and totally put them out of business in one go, but it does make me a bit mistrustful of the Visual Studio UI team's judgement.)
It does all the searching you want for filenames and symbols, substring searches, matching, you name it. It's fantastic, and they should highlight it way, way more.
As for your file finding problem, I don't know why you didn't start typing in the search field on top of the solution explorer. It filters everything in the solution explorer, and also does substring matching.
I'm not sure if I'm understanding all of your items exactly, but I just tried to do everything on your list. It seemed like each (except for acronym completion) was available right out of the box (I am using VS2013).
For example, both the class view search and find files are handled by searching solution explorer. It updates in real time and the keyboard shortcut is Ctrl + ;
Vs2015 somewhat improved on its predecessors on this front, but it still has plenty of ways where it drags.
In college, I assumed everyone loved Visual Studios just because everyone was told to use it and there were, in reality, no other options. I hope that in the next few years, with the open sourcing of some Microsoft software, that we can see better IDEs for the ecosystem being created.
- GUI editors
- Parallel code debugging
- GPU debugging
- Enterprise code navigation
- Edit-and-continue
- Debugging native code generated for .NET applications
- Mixed language debugging
- GUI Profiler
- Code Profiler
Just a few items on the top of my head.
Can you please clarify which part? The linked tweet talks about Roslyn. I'd expect that to be loaded because ... it's not third-party.
In general, anything that tries to pop-open a GUI and just drags makes me roll my eyes. EDMX files, I'm looking in your direction.
I do think it maxes out 1 CPU, it's just single-threaded.
People use Visual Studios because they are used to it.
For performance: If you ask me what is more expensive computationally: Crysis or an IDE; I say an IDE can at least as performance hungry. Nothing strange with that. Try writing code to perform syntax check and autocompletion on broken/incomplete syntax, for a few thousand files, then you'll see what I mean.
I'm very happy to use a monster gaming machine for coding (professionally) if it increases my productivity even just a little.
Isn't that functionally the same as being bloated?
So it's different from "feature bloat" in the regular sense, that is just tons of buttons for things you don't use.
I don't feel that is an appropriate reaction. Just because software is poorly optimized does not mean we should subject ourselves it.
For instance, eclipse does similar (in my opinion better) auto-completion than Visual Studios and it does not take the same resources, by a long shot.
Sure, I'd use an IDE that does what I need but does it faster than VS, in a heartbeat. Obviously. Also, a lot is happening and very few are working professionally in several environments, so compare what they do every day, with what they do occasionally or maybe a long time ago. When I say I think Eclipse is a dog, that probably because the last Eclipse I used was Ganymede (2008) on java 1.5, hitting "run" and getting coffee before my jboss monster had started. I suppose a lot has happened there too.
Most IDE's have much better navigation and autocomplete than VS does out of the box. When I say "VS" I really mean "VS+Resharper" as VS more or less useless without ReSharper. With ReSharper however, it's definitely one of the best IDE's there is, and almost surely the best one for C#, at least until this comes out.
If you look at something like Atom with the Omnisharp plugin, it achieves everything I need from VisualStudio with a tiny fraction of the resources. Then again, if you're one of these programmers who write more code by dragging & dropping around a UI than actually typing (Microsoft has created a whole generation of these coders), then you probably need a lot of the VisualStudio bloat.
"But bloat!" is never an argument. Point to what it actually does to harm your experience if you want to formulate an argument; "it exists" is a nonsensical kvetch.