News for hackers. Stuff that matters.
Re:Project Rider – A C# IDE by FatalBaboon on Wednesday January 13, 2016 @07:21AM (#10893771)
Visual Studio is one of the best IDE out there, and it is likely to remain better than Rider for at least a while.

It surely "comes close" ;)

Re:Project Rider – A C# IDE by alkonaut on Wednesday January 13, 2016 @07:30AM (#10893815)
VS is nice and powerful, but ironically it needs Resharper to match a JetBrains IDE like IntelliJ for autocompletion/tooltips/navigation, which is severly lacking in Visual Studio. That's one objection. The other problem with Visual Studio is that it's a beast. It takes multiple gigs of drive space (which of course suddenly became a problem when everyone's disks shrunk from 1TB to 128GB over night a couple of years ago, at the same time VS grew to around 15GB...). This is being worked on, but it will be a few more versions until the installer is good, and it will never be as small as an IDE that isn't carrying years of Windows legacy stuff. In short: VS is one of the best IDE's out there, but it would be a lot better (At C#) if it contained ReSharper's features and weighed in at 1/10 of its size. And that is exactly what this looks like.
Re:Project Rider – A C# IDE by robwilliams on Wednesday January 13, 2016 @10:21AM (#10894914)
I've never used Resharper but Visual Studio's Intellisense is incredibly powerful. What's lacking in its autocomplete support?
Re:Project Rider – A C# IDE by to3m on Wednesday January 13, 2016 @12:13PM (#10895828)
I'm not the same guy, but what I've found:

- 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.)

Re:Project Rider – A C# IDE by ruraljuror on Wednesday January 13, 2016 @01:55PM (#10896567)
This was the point I was making below, but it seems like all of the features I look for are already in Visual Studio.

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 + ;

Re:Project Rider – A C# IDE by henrikschroder on Wednesday January 13, 2016 @01:49PM (#10896505)
ctrl-comma, ctrl-comma, CTRL-COMMA!

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.

Re:Project Rider – A C# IDE by to3m on Wednesday January 13, 2016 @05:15PM (#10898030)
Thanks, interesting. These both look helpful. Wonder if I've missed anything else important.
Re:Project Rider – A C# IDE by robwilliams on Wednesday January 13, 2016 @03:44PM (#10897340)
All but the first bullet point deal with something other than autocomplete, and (as another user mentioned) CTRL+, takes care of many of your other points.
Re:Project Rider – A C# IDE by to3m on Wednesday January 13, 2016 @04:45PM (#10897789)
The original point was about the whole thing, so I thought I'd sort of reply to both ;)
Re:Project Rider – A C# IDE by VSTeam on Thursday January 14, 2016 @12:14PM (#10902708)
Hi to3m, Thanks for your suggestions! We have forwarded them to our Visual Studio team. FYI, your suggestions are always welcome at visual studio.uservoice.com
Re:Project Rider – A C# IDE by ruraljuror on Wednesday January 13, 2016 @09:52AM (#10894655)
I like Resharper a lot, but I do found that a lot of the features I use in Resharper are baked right into VS. For example, in Resharper Ctrl + T navigates to a symbol by name. That is Ctrl + , in VS.

The code analysis/improvements/suggestions is definitely great though, at least for a while.

Re:Project Rider – A C# IDE by alkonaut on Wednesday January 13, 2016 @03:12PM (#10897109)
I haven't used a "naked" VS for a few versions, how long has it had proper giro type/file/symbol navigation?
Re:Project Rider – A C# IDE by ruraljuror on Wednesday January 13, 2016 @03:51PM (#10897397)
2010 (improved in 2013) according to this blog post. https://blogs.msdn.microsoft.com/mvpawardprogram/2013/10/22/...
Re:Project Rider – A C# IDE by pjmlp on Wednesday January 13, 2016 @08:32AM (#10894103)
On the other hand, the debugging tools are great!
Re:Project Rider – A C# IDE by Pxtl on Wednesday January 13, 2016 @07:27AM (#10893800)
I dev on C# full time and also use Eclipse for java, and while vs is more professional-looking and featureful, the darn thing feels disgustingly single-threaded. The amount of ways to cause a stop-the-world lock-up is impressive.

Vs2015 somewhat improved on its predecessors on this front, but it still has plenty of ways where it drags.

Re:Project Rider – A C# IDE by taspeotis on Wednesday January 13, 2016 @07:51AM (#10893901)
If you launch Visual Studio with `devenv.exe /safemode` which "prevents all third-party VSPackages from loading when Visual Studio starts" [1] you will find Visual Studio runs extremely quickly. It's stuff like ReSharper that slows it down.

[1] https://msdn.microsoft.com/en-us/library/ms241278.aspx

Re:Project Rider – A C# IDE by Pxtl on Wednesday January 13, 2016 @10:14AM (#10894846)
Actually, the most monstrous pig in Visual Studio for me is SSDT (Microsoft's SQL-code development environment within VS). That's a bit offtopic since it's for SQL development and not C#, and they made a little bit of improvement in 2015, but still: it's a pathetic monster.

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.

Re:Project Rider – A C# IDE by redcalx on Wednesday January 13, 2016 @11:02AM (#10895245)
SSDT is insanely slow rebuilding our database model in the 'background'. And it's clearly tripping over itself somewhere because system CPU and IO is typically near zero while these rebuilds are running. Very annoying.
Re:Project Rider – A C# IDE by Pxtl on Wednesday January 13, 2016 @11:21AM (#10895403)
VS2015 improved SSDT builds, I think. Build times were cut in half, but memory usage skyrocketed. I'm supporting a legacy system that used to be north of an hour to build under SSDT. Now it seems closer to 20 minutes, if it doesn't get "Out of Memory".

I do think it maxes out 1 CPU, it's just single-threaded.

Re:Project Rider – A C# IDE by gorohoroh on Wednesday January 13, 2016 @08:24AM (#10894053)
This is not necessarily true, especially with VS2015 RTM (Update 1 is a bit better): https://twitter.com/hmemcpy/status/687257223081377792
Re:Project Rider – A C# IDE by taspeotis on Wednesday January 13, 2016 @08:29AM (#10894077)
> This is not necessarily true

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.

Re:Project Rider – A C# IDE by gorohoroh on Wednesday January 13, 2016 @09:14AM (#10894346)
Yes Roslyn is first party and it naturally does load, and it's very memory-intensive. You can see it happening without any extensions installed.
Re:Project Rider – A C# IDE by ygra on Wednesday January 13, 2016 @09:20AM (#10894389)
Memory usage and performance are two things, though. ReSharper may not add much to the memory load, but the IDE still feels sluggish.
Re:Project Rider – A C# IDE by gravypod on Wednesday January 13, 2016 @07:32AM (#10893822)
I think the reason most people don't notice this is because developers on average have better computer hardware. Anyone who uses a laptop for on-the-go development on the other hand gets hit with these problems front-on.

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.

Re:Project Rider – A C# IDE by pjmlp on Wednesday January 13, 2016 @08:36AM (#10894120)
Any IDE that wants to challenge VS has an uphill battle in what concerns:

- 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.

Re:Project Rider – A C# IDE by alkonaut on Wednesday January 13, 2016 @10:27AM (#10894945)
I made a raytracer the other day (A necessary rite of passage for any developer) and happened to add a Wavefront (.obj) 3D mesh file file to my solution. Then clicked it. VS just shat out what was essentially a mesh viewer with some pretty advanced capabilities. No wonder it's huge :D
Re:Project Rider – A C# IDE by Pxtl on Wednesday January 13, 2016 @10:51AM (#10895150)
And all that stuff would be fine if opening up the file didn't lock up the whole IDE. Lock the tab with a loading anim and let the developer work elsewhere.
Re:Project Rider – A C# IDE by mikewilliams on Wednesday January 13, 2016 @10:03AM (#10894760)
Don't forget the image editor.
Re:Project Rider – A C# IDE by gravypod on Wednesday January 13, 2016 @07:29AM (#10893811)
I don't agree. If an IDE takes better hardware to run than Crysis and is so bloated with features that it makes a Epson HX-20 look like a Macbook Air there is a problem.

People use Visual Studios because they are used to it.

Re:Project Rider – A C# IDE by toddan on Wednesday January 13, 2016 @02:53PM (#10896991)
I use it because i love it and i have not found a better alternative.
Re:Project Rider – A C# IDE by alkonaut on Wednesday January 13, 2016 @07:38AM (#10893852)
The problem isn't feature bloat (lots of people need feature X, some others need feature Y). The problem is that you can't properly uncheck/select features you don't want yet in the instealler, so you end up with a lot of stuff you don't need.

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.

Re:Project Rider – A C# IDE by gravypod on Wednesday January 13, 2016 @07:52AM (#10893902)
>I'm very happy to use a monster gaming machine for coding (professionally) if it increases my productivity even just a little.

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.

Re:Project Rider – A C# IDE by alkonaut on Wednesday January 13, 2016 @07:58AM (#10893932)
> just because software is poorly optimized does not mean we should subject ourselves it.

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.

Re:Project Rider – A C# IDE by SuddsMcDuff on Wednesday January 13, 2016 @10:54AM (#10895184)
I couldn't disagree more, VisualStudio is a glorified text editor - there is absolutely no reason for its monumental system requirements. Microsoft have completely forgotten about the core functionality of the product - programmers writing code. Instead they've bloated the thing down with many, many 'features' which only detract from that core functionality.

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.

Re:Project Rider – A C# IDE by eropple on Wednesday January 13, 2016 @04:53PM (#10897853)
As said elsewhere in this thread, every feature you describe as "bloat" doesn't actually run until you tell it to. The features that make Visual Studio feel slow are things like IntelliSense, which is pretty goddamn core to the actual writing of code, not the fact that there's a visual designer for a few things. And code analysis is--wait for it--a pretty hard problem that perturbs a lot of electrons to do correctly, regardless of language or what particular program is kicking it off.

"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.

Re:Project Rider – A C# IDE by gravypod on Wednesday January 13, 2016 @03:16PM (#10897144)
I could not have said it better myself.
Re:Project Rider – A C# IDE by lsaferite on Wednesday January 13, 2016 @07:48AM (#10893883)
> The problem is that you can't properly uncheck/select features you don't want yet in the instealler, so you end up with a lot of stuff you don't need.

Isn't that functionally the same as being bloated?

Re:Project Rider – A C# IDE by alkonaut on Wednesday January 13, 2016 @08:00AM (#10893936)
It is in a way yes. However a of the bloat I feel is mainly hard drive bloat in the sense that not only do I not use it, It's never even loaded or visible in the application.

So it's different from "feature bloat" in the regular sense, that is just tons of buttons for things you don't use.

Re:Project Rider – A C# IDE by realharo on Wednesday January 13, 2016 @07:43AM (#10893866)
Last time I used VS, I was surprised by the lack of some pretty basic features, such as Ctrl+click navigation (there is a plugin for that though), or a quick way to show formatted function documentation in a popup.
Re:Project Rider – A C# IDE by rhodysurf on Wednesday January 13, 2016 @09:58AM (#10894707)
To show the documentation you literally just hover over a symbol
Re:Project Rider – A C# IDE by realharo on Wednesday January 13, 2016 @10:10AM (#10894818)
That only shows the summary though, not the documentation for the function parameters and other parts of the doc comment.
Re:Project Rider – A C# IDE by ghrifter on Wednesday January 13, 2016 @11:20AM (#10895388)
Press F12 to go to the function/method/class/variable definition
Re:Project Rider – A C# IDE by rhodysurf on Wednesday January 13, 2016 @11:00AM (#10895236)
Ahh idk then.. Mine shows the entire comment block above the symbol definition
Re:Project Rider – A C# IDE by moron4hire on Wednesday January 13, 2016 @09:07AM (#10894300)
Is shift+click just too hard?
Re:Project Rider – A C# IDE by jasonkostempski on Wednesday January 13, 2016 @09:31AM (#10894486)
Unless you've got some wacky key bindings, that selects text between the caret and the mouse cursor. F12 is the shortcut I've got. Alt+F12 for "Peek".
Re:Project Rider – A C# IDE by ZebraCakes on Thursday January 14, 2016 @01:10PM (#10903145)
They might have meant Ctrl+Click