Roy's Competition: Some Suggested Add-Ins for Visual Studio.Net
Why suggest add-ins rather than write them? because as Ratbert says: "I'm more of an ideas rat."
The suggestions fall into two categories:
- 'Producitivity' Enhancements
- Embedded mini-apps
There's about thirty suggestions. I make no guarantee that these things have not already been implemented.(continues...)
[* I put quote marks around the word Productivity because, as you'll see, it's a fair stretch of the imagination to think that any of them would actually increase your productivity.]
- Highlight a keyword, press a key, and a google search is performed.
- Pretty much any idea from Roedy Green's *classic* SCID page
- Windows Form designer improvements:
- Ability to zoom in/zoom out on forms
- Able to 'draw' onto a form much like in Photoshop/Paintshop Pro/Photodraw et al, and have your actions rendered into GDI+ underneath (and later, XAML)(i wrote a pascal version of this in my youth)
- Spell checking of comments, and embedded strings. With custom dictionaries and Multi-language of course.
- Mixed fonts (font-sizes, font-face etc.) for different situations, e.g. Class Declaration different size and font-face to comments etc.)
- In-line calculator (ie. highlight an expression, hit a key and the answer is spat out on the next line)
- In-line expression evaluator (ie. highlight an expression, hit a key and the return value is spat out on the next line)
- Ability to have persisted bookmarks, and embedded links within comments.
- Some more 'wysiwyg' way of displaying code, or displaying asp.net
- Language conversion macros (e.g. C# <--> Vb.net)
- Annotation/Journaling system that keeps parallel notes associated with code, e.g. date that code was written/modified, other notes you wish to add: notes that are not recorded in comments. Can use this for code reviews etc.
- Of course you should be able to walk through your code as a virtual reality 3-dimensional (or 4-dimensional?) landscape. This is just an absolute must have. All code you've ever written could be in the landscape, or better yet -- all code anyone has ever written. It could be rendered by topic, reliability, preference, readability, all kinds of soft and fuzzy categories, as well as things like purpose, inputs, outputs, assumptions. It's a Piece a piss.
- Zoom in/out on your code -- view the whole project on the screen at once -- calls between sections shown as links etc. You hover over a part and it can inflate up to a readable size.
- Code view: Replace variables with custom icons, shaped according to their type, colored according to their scope and with more specific image attributes based on their meaning (ie, based on their name) (Note: When I first heard the term 'Visual Basic' I imagined that this was what it did!)
- Have "tool tip text" appear in a dedicated little side panel, rather than where you're typing. A history of all tool tip texts is maintained in a listbox. That way they're easier to cut and past for google searches, etc.
- A chess timer for developing: i hit you can start it/stop it -- see how long you're coding for. Track this against tasks etc.
- Refactor "if/else" to "case" statements.
- Ability to embed images/diagrams into the comments/annotation.
- Asp.net: A way to have Buttons for "HTML view | Code View | Code behind" right next to each other where they should have been all along (!!)
- Screenshare: for pair-programming/Xtreme Programming - to allow multiple developers to **really** be on the same screen/workspace at once (more than one mousepointer/keyboard entry/monitor...)
- Wallpaper. 'nuff said.
- Pinvoke auto wrapping.You navigate to the win32 call you wanna make -- it puts a pinvoke call in a wrapper classs (if the wrapper class doesn't exist yet, it creates it).
- When you cut or copy code, it copies as richtext (i think). A nice option (for bloggers) would be 'Copy as HTML'.
- Enable 'block select'
- Undo/Redo List
Most of these are fairly obvious and I'd guess that most have been done before. I'm not gonna provide links though.
- Project Management integration
- email and or FTP client
- A 'reverse-boss-key' so that if you're coding when you should be gaming, the screen can instantly convert to some plausible looking shoot-em up game
- Mp3 player
- Icon editing
- A plug-in that lets you run X-box games inside a tab within Vis Studio.
- Blog publishing and or reading
- (better) versioning/control integration
- Excel Lite Plug-in
The more I think about these add-ins, the more I realise 'less is more.'
While I love so many of the enhancements in Visual Studio .Net to date, I think that
most of all it could benefit with being a lot more performant.
This might be achieved only by moving to a Longhorn model where GUI rendering is handled via the graphics card rather than bitmap rendering in regular memory.
Maybe the best 'add-in' would be: