Visual Studio 2010: now taking feature requests
-
Judah Himango wrote:
static analysis engine was built into the IDE or compiler
Don't you get that in Team System (PreFast for C++, I know...)? Or is it not very intelligent?
Don't know, haven't tried it and wasn't aware of it.
-
Tom Archer's post asking what tools could be added to the SDK[^] got me thinking... What would you add to the IDE if you could add any feature? Here's my list: 1) Debugging backwards in time[^] (not totally fantasy at Google) 2) Error results that actually help solve the error. This is not easy by any means, but much of the logic would overlap the existing intellisense and compiler (i.e. the NCB logic) Example 1:
error C2065: 'CSomeClass' is not a class or namespace name
the compiler should be able to figure out that if 'CSomeClass' is defined in another part of the project (especially if it has already compiled), then it should be able to suggest an #include statement, and I just hit "OK". Example 2:error 2601: local function definitions are illegal.
99 times out of 100 this means there is a missing bracket, and if your code follows a standard indenting style (e.g.Function() { }
the compiler should be able to figure out (and suggest) the line (or range of lines) where it should be placed. It could also hilight each bracket in a different colour (depending on scope) like in Excel. 2) Smart background building. If I step away from my computer to get a coffee, the compiler should realize it's idle, and do a "background build". Then it could keep an eye on what I change when I come back. When I hit build, it would be like some of the build was "instantaneous", instead of having to sit watching the compiler results scroll by. 4) Instantaneous help with great search. It should not be preferable to tab over to Google in my browser, type something in and hit "I'm feeling lucky" (which generally brings up an MSDN page) than search my local copy of MSDN (which takes a second or two to search, and then I have to manually sort through the search results because the search results aren't great) That's my list, what would you add? (and remember someone else would get stuck with writiA key combo that hides and shows your set of panels/tabs/buttons/toolbars/etc. Photoshop and Fireworks has this. You are working on your main image in full-screen mode. No menus, toolbars, panels or anything else is showing. You hit tab and everything you had setup as you wanted it appears. Hit tab again and it disapears. I'd like that but for the code-window. Often you have your head down coding away and you don't use the panels, menus etc. for ages. During that time I'd like them gone. Then when I want them, a key combo and they appear. No fading in or scrolling in either, just on and off. regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
do -
A key combo that hides and shows your set of panels/tabs/buttons/toolbars/etc. Photoshop and Fireworks has this. You are working on your main image in full-screen mode. No menus, toolbars, panels or anything else is showing. You hit tab and everything you had setup as you wanted it appears. Hit tab again and it disapears. I'd like that but for the code-window. Often you have your head down coding away and you don't use the panels, menus etc. for ages. During that time I'd like them gone. Then when I want them, a key combo and they appear. No fading in or scrolling in either, just on and off. regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
doI use (shift + alt + enter) a fair bit, and I like that. or were you thinking everything gone? That would certainly be the ultimate! Come to think of it, maybe someone can write an add-in that would do this ??? Warren
-
Tom Archer's post asking what tools could be added to the SDK[^] got me thinking... What would you add to the IDE if you could add any feature? Here's my list: 1) Debugging backwards in time[^] (not totally fantasy at Google) 2) Error results that actually help solve the error. This is not easy by any means, but much of the logic would overlap the existing intellisense and compiler (i.e. the NCB logic) Example 1:
error C2065: 'CSomeClass' is not a class or namespace name
the compiler should be able to figure out that if 'CSomeClass' is defined in another part of the project (especially if it has already compiled), then it should be able to suggest an #include statement, and I just hit "OK". Example 2:error 2601: local function definitions are illegal.
99 times out of 100 this means there is a missing bracket, and if your code follows a standard indenting style (e.g.Function() { }
the compiler should be able to figure out (and suggest) the line (or range of lines) where it should be placed. It could also hilight each bracket in a different colour (depending on scope) like in Excel. 2) Smart background building. If I step away from my computer to get a coffee, the compiler should realize it's idle, and do a "background build". Then it could keep an eye on what I change when I come back. When I hit build, it would be like some of the build was "instantaneous", instead of having to sit watching the compiler results scroll by. 4) Instantaneous help with great search. It should not be preferable to tab over to Google in my browser, type something in and hit "I'm feeling lucky" (which generally brings up an MSDN page) than search my local copy of MSDN (which takes a second or two to search, and then I have to manually sort through the search results because the search results aren't great) That's my list, what would you add? (and remember someone else would get stuck with writiRemember Star Trek:The Next Generation? Wesley or Data reprogramming the software by poking buttons on a touch screen with nary a keyboard in sight. We've already gone beyond the imagination of the original Star Trek series (data stored on little square things that we now recognize as floppy disks). So, Microsoft, buy a set of ST:TNG DVD's and see what the future of software development should look like! Ah, well, I can dream can't I? :cool:
-
Tom Archer's post asking what tools could be added to the SDK[^] got me thinking... What would you add to the IDE if you could add any feature? Here's my list: 1) Debugging backwards in time[^] (not totally fantasy at Google) 2) Error results that actually help solve the error. This is not easy by any means, but much of the logic would overlap the existing intellisense and compiler (i.e. the NCB logic) Example 1:
error C2065: 'CSomeClass' is not a class or namespace name
the compiler should be able to figure out that if 'CSomeClass' is defined in another part of the project (especially if it has already compiled), then it should be able to suggest an #include statement, and I just hit "OK". Example 2:error 2601: local function definitions are illegal.
99 times out of 100 this means there is a missing bracket, and if your code follows a standard indenting style (e.g.Function() { }
the compiler should be able to figure out (and suggest) the line (or range of lines) where it should be placed. It could also hilight each bracket in a different colour (depending on scope) like in Excel. 2) Smart background building. If I step away from my computer to get a coffee, the compiler should realize it's idle, and do a "background build". Then it could keep an eye on what I change when I come back. When I hit build, it would be like some of the build was "instantaneous", instead of having to sit watching the compiler results scroll by. 4) Instantaneous help with great search. It should not be preferable to tab over to Google in my browser, type something in and hit "I'm feeling lucky" (which generally brings up an MSDN page) than search my local copy of MSDN (which takes a second or two to search, and then I have to manually sort through the search results because the search results aren't great) That's my list, what would you add? (and remember someone else would get stuck with writiI'd like a real observer pattern on the event handling. I don't want to:
if (myEvent != null) myEvent(this, EventArgs.Empty);
And I definitely don't want to:MyEventHandler me = myEvent; if (me != null) me(this, EventArgs.Empty);
Why should I event care if there are any listeners? I just want to:myEvent(this, EventArgs.Empty);
-
True. Next people will start asking for a programming software that will create software for them automagically :) Edbert
-
I use (shift + alt + enter) a fair bit, and I like that. or were you thinking everything gone? That would certainly be the ultimate! Come to think of it, maybe someone can write an add-in that would do this ??? Warren
Actually, that is pretty darned good, that shift + alt + enter. Thanks Warren. regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
do -
Actually, that is pretty darned good, that shift + alt + enter. Thanks Warren. regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
doYou're welcome. I'm a total keyboard junkie. If you're not using the code templates in Visual Assist, you've got to try them. I haven't typed "for" or "switch" in months, thanks to Visual Assist. I just type the variable I want to use for my loop (e.g. "i", select it, and insert my "for loop" code template). Somedays I feel like I've been reduced to filling in wizards and inserting code templates (I guess that beats typing, so maybe that's not such a bad thing). Warren
-
You're welcome. I'm a total keyboard junkie. If you're not using the code templates in Visual Assist, you've got to try them. I haven't typed "for" or "switch" in months, thanks to Visual Assist. I just type the variable I want to use for my loop (e.g. "i", select it, and insert my "for loop" code template). Somedays I feel like I've been reduced to filling in wizards and inserting code templates (I guess that beats typing, so maybe that's not such a bad thing). Warren
I don't use VA but the snippets and code-completion in VS2005 has improved a lot. It also has that "for loop" type of completion at the press of a key. It is a lot better than fiddling with the mouse indeed. regards, Paul Watson Ireland Feed Henry! K(arl) wrote: oh, and BTW, CHRISTIAN ISN'T A PARADOX, HE IS A TASMANIAN!
adapted from toxcct:
while (!enough)
sprintf 0 || 1
do -
Tom Archer's post asking what tools could be added to the SDK[^] got me thinking... What would you add to the IDE if you could add any feature? Here's my list: 1) Debugging backwards in time[^] (not totally fantasy at Google) 2) Error results that actually help solve the error. This is not easy by any means, but much of the logic would overlap the existing intellisense and compiler (i.e. the NCB logic) Example 1:
error C2065: 'CSomeClass' is not a class or namespace name
the compiler should be able to figure out that if 'CSomeClass' is defined in another part of the project (especially if it has already compiled), then it should be able to suggest an #include statement, and I just hit "OK". Example 2:error 2601: local function definitions are illegal.
99 times out of 100 this means there is a missing bracket, and if your code follows a standard indenting style (e.g.Function() { }
the compiler should be able to figure out (and suggest) the line (or range of lines) where it should be placed. It could also hilight each bracket in a different colour (depending on scope) like in Excel. 2) Smart background building. If I step away from my computer to get a coffee, the compiler should realize it's idle, and do a "background build". Then it could keep an eye on what I change when I come back. When I hit build, it would be like some of the build was "instantaneous", instead of having to sit watching the compiler results scroll by. 4) Instantaneous help with great search. It should not be preferable to tab over to Google in my browser, type something in and hit "I'm feeling lucky" (which generally brings up an MSDN page) than search my local copy of MSDN (which takes a second or two to search, and then I have to manually sort through the search results because the search results aren't great) That's my list, what would you add? (and remember someone else would get stuck with writiHow about a compile option that allowed the program to run on windows or any other major operating system, or asp.net without any changes to code or objects. Also included is a no hassle installation tool that auto updates any changes throughout the program life cycle. And one of my biggest pet peeves is the continuous relearning of major concepts, like data access, object classes etc. Find something good and stay with it, we don't need to change every year and half. A tool that automatically updates all the custom libraries in a project from the appropriate vender's A auto detect configuration problems on end users machines. Programming is very rewarding, it just seems like a hassle at times dealing with all the side issues to keep a program and yourself updated and running.
-
How about a compile option that allowed the program to run on windows or any other major operating system, or asp.net without any changes to code or objects. Also included is a no hassle installation tool that auto updates any changes throughout the program life cycle. And one of my biggest pet peeves is the continuous relearning of major concepts, like data access, object classes etc. Find something good and stay with it, we don't need to change every year and half. A tool that automatically updates all the custom libraries in a project from the appropriate vender's A auto detect configuration problems on end users machines. Programming is very rewarding, it just seems like a hassle at times dealing with all the side issues to keep a program and yourself updated and running.
SD SteveG wrote:
llowed the program to run on windows or any other major operating system,
I was looking for fantasy requests, not something that would defy the laws of physics! Microsoft actively supporting Linux sounds like something out of a parallel Universe! :laugh:
SD SteveG wrote:
And one of my biggest pet peeves is the continuous relearning of major concepts, like data access, object classes etc. Find something good and stay with it, we don't need to change every year and half.
I couldn't agree more. I intentionally never learned COM programming even though Microsoft was pushing it for years. I bought one book, read enough to get the basic idea and then decided that it was too difficult and too much work for the average programmer to pick up. Microsoft eventually agreed, and the end result of the COM re-write was .NET. You have to pick which technologies to learn very wisely. It takes a LOT of work to learn something new, and market forces or technology changes can make your hard-won skills (e.g. C++ COM programming) close to worthless. I'm also choosing to skip Windows Forms programming. Microsoft has already announced XAML which will kill Windows Forms in no time flat. Good luck to all those poor suckers who moved over to Windows Forms right off the bat. :sigh: Warren
-
Tom Archer's post asking what tools could be added to the SDK[^] got me thinking... What would you add to the IDE if you could add any feature? Here's my list: 1) Debugging backwards in time[^] (not totally fantasy at Google) 2) Error results that actually help solve the error. This is not easy by any means, but much of the logic would overlap the existing intellisense and compiler (i.e. the NCB logic) Example 1:
error C2065: 'CSomeClass' is not a class or namespace name
the compiler should be able to figure out that if 'CSomeClass' is defined in another part of the project (especially if it has already compiled), then it should be able to suggest an #include statement, and I just hit "OK". Example 2:error 2601: local function definitions are illegal.
99 times out of 100 this means there is a missing bracket, and if your code follows a standard indenting style (e.g.Function() { }
the compiler should be able to figure out (and suggest) the line (or range of lines) where it should be placed. It could also hilight each bracket in a different colour (depending on scope) like in Excel. 2) Smart background building. If I step away from my computer to get a coffee, the compiler should realize it's idle, and do a "background build". Then it could keep an eye on what I change when I come back. When I hit build, it would be like some of the build was "instantaneous", instead of having to sit watching the compiler results scroll by. 4) Instantaneous help with great search. It should not be preferable to tab over to Google in my browser, type something in and hit "I'm feeling lucky" (which generally brings up an MSDN page) than search my local copy of MSDN (which takes a second or two to search, and then I have to manually sort through the search results because the search results aren't great) That's my list, what would you add? (and remember someone else would get stuck with writiExample #2 is pretty well done in Orcas - when you make one of the "common" mistakes a little UI thing appears and one of the options is to fix the error. Works for things like missed imports etc.
'--8<------------------------ Ex Datis: Duncan Jones Merrion Computing Ltd