CodeBetter.Com
CodeBetter.Com
RSS 2.0 via Feedburner
           Do you Twitter? Follow us @CodeBetter

Patrick Smacchia [MVP C#]


Some VisualStudio featurettes that could save me 15mn a day

 

Here is a list of minor features I would like to have in VisualStudio to make me and my team slightly more productive. It is certainly too late to expect having them implemented in VisualStudio2008 but who knows, it might be still worth mentioning them. Most of them shouldn’t take more than half a day to be implemented.

 

  • When an exception is raised while debugging, I would like a button in the ‘exception was unhandled’ dialog that discard the exception type (i.e in this case I don’t want being advised anymore of any ParseException raised). Even better, I would like to discard this particular throw. The reason is that while debugging, your environment and inputs might create some well-known error conditions that you don't want to be advised again and again. For example when starting NDepend on a disconnected machine, we got an exception because the program cannot check on the web if a new version is available.

 

 

 

  • Alternatively, when you want to discard a custom exception class, the dialog should at least display the list of custom exception classes in your program, or even have some intellisense support. Now, you to have to type or copy/paste the whole exception class name manually, very boring!

 

 

 

  • I want a ‘smart button’ to attach to process. The underlying plumbing should be smart enough to detect which process I recently start from VisualStudio, and it could also learn from the processes I previously attached to from the current opened solution. It could also detects which processes contains an assembly generated by the current configuration of my solution.

 

 

 

  • When starting a compilation, I want to be advised immediately if the assembly file I’m about to override is not currently used by another program to avoid waiting a few seconds for nothing. I would also like to know immediately which process is currently using which assembly I’m about to override (a la ProcessExplorer) and VisualStudio could propose to close them.


  • Since VisualStudio 4.2, I’m forced to edit my numerous conditional symbols with a ridiculous 275px width textBox. Is it that difficult to code a proper conditional symbols editor? It was already the source of a geek joke we had with some colleagues 5 years ago!


 

 

  • I would like that the textBox ‘Start external program’ accepts some paths relative from the currently opened VisualStudio solution because when you work as a team, you have several machines and installation root paths can be different. Also, the textbox could be smart enough to become a combo box that proposes the list of executable assemblies generated by my solution + the ones recently referenced.

 

  • I would like that the textBox ‘Command line arguments’ remember what I typed previously, and propose a list of previous lists of arguments in a combobox for example. I really don’t want to multiply the number of configurations of my solutions just to avoid retyping some convenient ‘Command line arguments’ for smoke testing.

 

 

 

  • Sometime, you accidently trigger the help update and your VisualStudio 2005 used to freeze for minutes! Things got a bit better with VisualStudio2008 beta2 and the minutes were transformed in seconds. It is still way longer than searching on google in a lightweight browser.

 

 

  • I want some facilities to browse the list of code elements (methods/fields) that I’m currently working with. VisualStudio could infer automatically that I’m currently working with a method if I recently modified it or browse for it. You are often editing multiple methods at the same time and it would be awesome to visualize them intuitively to jump from one to another. Obviously, this facility should be cross-files. I found cross-files bookmarks awkward to do this because I don’t want to spend time managing them.

  • And in my dream, I would like that Reflector decompilation facilities be available natively from VisualStudio. I doubt MS will add this feature as long as it doesn't propose a native obfuscator. Believe me or not, but a lot of .NET developers don't even know about Reflector and decompiling facilities from IL, with metadata. Having Reflector decompilation facilities directly available in VS could lead to high pressure on MS. That's my understanding of the situation and I might be wrong. However, the fact is that today, only educated developers have access to the awesome features of Reflector.

 



Comments

Visual Studio Tools… « ???????? ???????????? ?????????????? said:

Pingback from  Visual Studio Tools… « ???????? ???????????? ??????????????

# October 13, 2007 1:39 PM

Leave a Comment

(required)  
(optional)
(required)  

Enter the numbers above:
Add

About Patrick Smacchia

Patrick Smacchia is a Visual C# MVP involved in software development for over 15 years. After graduating in mathematics and computer science, he has worked on software in a variety of fields including stock exchange, airline ticket reservation system as well as a satellite base station at Alcatel. He's currently a software consultant and trainer on .NET technologies as well as the lead developer of the tool NDepend which provides numerous metrics and caveats on any compiled .NET application. He is the author of Practical .NET2 and C#2, a .NET book conceived from real world experience with 647 compilable code listings. Check out Devlicio.us!