Archive for the ‘Visual Studio’ Category

Failure of Search TFS

Well over a year ago I set up a landing page to start gathering emails for interest in Search TFS. A dynamic integrated TFS work item search experience. Today I am calling an end to the project. Although the project didn’t go anywhere, by the process I followed I wasted little time and could fully justify the position the product was to take. The main reason to kill it is that Visual Studio 11 is shipping with integrated TFS work item searching. Finally.

Team Explorer VS11 Search

I think this helps justify that there is a need for what I wanted to do. The existing Search Work Items for TFS 2010 had 7,076 downloads on the 1st January 2011 when I was starting this and now has, 23,093. That’s not a bad niche. How many would be willing to pay for something better is another question. On my landing page, I got 12 emails. Considering that there was absolutely no push, SEO, linking (apart from this blog) or advertising I’m happy there was something and I have a baseline.

Soon after I launched the landing page I got wind the Microsoft was finally going to do something. So I waited to see. Now that I’ve been playing with Visual Studio 11, I’m happy with the new Team Explorer for the most part, but I was quite disappointed with the search. It’s no better that the current available plug-in. That means it’s slow and query based. I wanted more like OneNote, where you see results as you start typing:

OneNote Search

The market though, even for something substantially better I feel is drastically reduced now that it is first party. I’m disappointed Microsoft didn’t do better since search is one of the most important features of work item tracking. The way that UserVoice does it to help prevent duplicates is brilliant. I’m hoping the search works better with TFS 11 but  since running it against Team Foundation Services (fantastic btw, especially the just announce build service) I have little hope for that.

All is not lost. TFS Working On has improved in its download rate. ClickOnce deployment having less friction may have helped that. It’s long overdue for an overhaul. I’ve had plans for nice Windows 7 integration for a long time, now I should be looking at Windows 8 perhaps. Search TFS will still fit nicely into TFS Working On, especially for those that don’t live in Visual Studio.

Visual Studio Minimalist Toolbar

Although for most functions in Visual Studio, I use shortcut keys, a couple of buttons for when you are already on the mouse is very handy. Visual Studio however has multiple toolbars and a load of buttons that, for the most part, just take up valuable screen real estate. Even on my new triple 22” wide screen setup.

The question of using the Ribbon in Visual Studio was raised on the new Visual Studio UserVoice feedback forums. I personally gave this three votes, but I am also in favour of as little toolbars as possible. So I added the comment:

The Ribbon done right would have a customizable quick access toolbar which would include the Debug button and your other frequent ones there. And as with the Office Ribbons you can collapse it to just the tabs, so in effect, you can have more screen real estate all the time while still accessing any functions you want with, at most, two clicks. Much better than continually showing and hiding the relevant toolbars. However, Visual Studio currently lets you put toolbar buttons right up in the menu row, which is where I have my common buttons and can remove any other toolbar.

That would give you something like this, as I have in Windows Live Writer:

Windows Live Writer Ribbon - Customizable and Collapsed

However, I just want to elaborate what I meant by buttons in the menu bar, as my colleagues didn’t know you could do it either.

  1. Right-click any where on the toolbars and click Customize…
  2. Select the Commands tab
    Commands Tab
  3. Menu Bar is already selected, so click, Add Command…
    Add Command...
  4. Select the command you want
    Add Command Dialog
  5. Position and Customize it’s details
    Customize Item

And here is the result:

Visual Studio Minimal toolbar

Debug Lambda Expressions

Although I think the Ribbon would clean things up nicely and allow everyone easy minimal toolbars with the quick access, better function and shortcut key discovery, as seen above, it is already quite customizable. With that in mind I think the time would be much better spent getting the debugger able to evaluate Lambda expressions. Time and time again, I am stopped because I cannot evaluate a simple .Select(x =>x == y). Whether this is in the code you have written, or just something you want to write in the quick watch or immediate window to determine the contents of something quickly. I raised this suggestion:

Debug Lambda expressions

Allow Quick Watch and other Debug functions to work with Lambda expressions.

"Expression cannot contain lambda expressions" makes this powerful language feature second-class within the IDE.

Especially for data intensive applications being able to write Lambda expressions in the Quick Watch, Watch, Immediate Windows and debug evaluation is a must have.

Which I am pleased to say has got to the top 3 on the Hottest Ideas. So please vote on it.

Debug Lambda expressions - 3rd Hottest Idea

Technorati Tags:

Visual Studio ASP.NET Development Server – “Internet Explorer cannot display the webpage”

I like to work at home, and my set up at home is almost at good as work, but due to less distractions it can be better. When I created a TFS workspace for my home computer (was Vista, now Windows 7), I got the latest source, built it, and all was good… almost. It did not run. We are building an ASP.NET application and when running under the ASP.NET Development Server (WebDev.WebServer.exe) I would get sent to this error page, which told me nothing useful about why it was failing.

This was irritating, but didn’t really bother me because I could work around it quite quickly. I opened the Web properties of the ASP.NET Web Application project (right click the project, select Properties and then the Web tab on the left) and set it to run from the Local IIS (Internet Information Services) Web server. The only issue this had was I must run Visual Studio as an Administrator since I have User Account Control (UAC) enabled, and I don’t get Edit and Continue.

 

Today however, this won’t do. Today I want to create a new workspace on my home machine to work on multiple unrelated things at the same time. Multiple workspaces is a great productivity boost, from reproducing issues locally in an unchanged environment, to running units tests or other long running processes and working on something else while they are chugging away. I do not want to create multiple virtual directories in IIS, although I could. One of the things I like about the environments I have set up, is that they allow virtually no configuration on any PC you want to use, as long as you have Visual Studio with Team Explorer, you are ready to develop. And our rich wiki requires OneNote and that is all. Both enable also enable working offline and starting new developers or changing PCs is very easy. I thought it might be related to UAC or the firewall, but after a quick look around and I found ASP.NET Developer server not working which lead to IE won’t connect to asp.net server which had the solution. Opening up Notepad as Administrator (since I have UAC on) loading the C:\Windows\System32\drivers\etc\hosts file and commenting out the line ::1 localhost, restart only the browser instance that failed and all is working.

Now Visual Studio does not need to run as Administrator, I do not need to configure IIS, I can have Edit and Continue and multiple workspaces all running completely independently.

 

Must have for any Visual Studio 2008 developer

PowerCommands for Visual Studio 2008. Install it. Nothing else really needs to be said, but I want to highlight a few things.

This is a free Microsoft built VSX (Visual Studio Extensibility) extension. It adds extremely useful yet simple menu commands that are integrated as if Visual Studio shipped with them already there. I will not go into the detail of the commands there is a comprehensive yet brief document here for that. It is definitely worth the installation and Visual Studio just does not feel the same without it anymore.

I have been using version 1 for a couple of months now and have just found version 1.1 was released a month ago which adds a host of new handy features. It gets better, the source code is available. This provides a great example on how to code seamless add-ins to Visual Studio. Before you can build the source you need to install the Visual Studio SDK. I have a list of simple refactoring commands that I intend to write as a learning exercise that will also make common coding tasks easier.

If PowerCommands has convinced you that free first party VSX extensions are a good thing, be sure to check out other releases from Microsoft on the Visual Studio Gallery. The Resource Refactoring Tool is another very good must have.

Technorati Tags: ,

WiX project type in Visual Studio “Rosario”

I am very much looking forward to the release of Visual Studio Rosario. The list of major features is available here. On the list is the integration of WiX. Rob Mensching posted about this back in November. This really validates the work that Rob and his team have done (congratulations to them), and enforces the position many adopted when we took the risk to develop our commercial products’ installers with the toolset.

Rob mentioned that code changes made by the Visual Studio team would be checked back into the WiX trunk. I was curious about the progress on WiX in Rosario so I downloaded the November CTP VPC. I was a bit disappointed when I saw that at the moment, it is just Votive installed as in Visual Studio 2008, but it is very early days.

I am hoping that the Visual Studio team would take WiX in a similar way that they did with FxCop and Code Analysis. I still think it should be called WiX in Visual Studio, but I would like it to be a first grade component, rather than a latecomer tack on. The difference between the integrated version and the sourceforge hosted version should be very simple, WiX project types should be within Other Project Types > Setup and Deployment and different product/upgrade GUID’s.

Christopher Painter said there is a huge gap in the authoring/designer/editing tools for WiX, which is completely correct. I think Microsoft considering to purchase a current tool and integrate that might be a good way to go, but I think Microsoft already has code, mostly from the current Visual Studio Setup projects, for the critical features that are required.

1. Enabling automatic file references generation based on project outputs.

Microsoft already has the ability to add project output for the current Setup Project. Adding XML output of these files outputs should be a comparably small task with a huge gain. With web projects, manually maintaining the file list is the largest complaint I get about WiX from the development team. I know automating this has issues with component rules, but there was talk a while ago that there is a solution that could be implemented using a component catalog database. This should also include the automatic Detected Dependencies.

2. Forms designer

The current WPF forms designer is a live dual view, form and XML. Add to the toolbox the Windows Installer form components and modify the XML generation engine.

3. Bootstrapper integration

This is already available via the GenerateBootstrapper MSBuild task. Add the interface as in a Setup Project or ClickOnce for configuration and Prerequisite selection. It would be a nice addition to both WiX and VS Setup projects if selections for the bootstrapper prerequisites, also sets the launch conditions on the MSI.

4. File System, Registry, File Types, User Interface Sequence, Custom Actions and Launch Conditions Editors

All these editors currently existing could be made to support WiX generation. This would be a huge step forward for WiX becoming mainstream. Since developers are not afraid to modify XML like WiX, it still comes down to the understanding of Windows Installer to do advanced things correctly, whether or not you have nice designers and authoring tools. However, this current set of editors has allowed many developers to author satisfactory installers without needing to know what is going on.

As a developer, I understand it is easy for someone of the outside to look in and say, "it should be quick and easy", but that is not often the reality. This is just my wish list. I do realise this is very early stages, and only more good will come of WiX with some full time developers on it. Exciting times ahead, other installation tool companies better watch out!

Technorati Tags: ,
Follow

Get every new post delivered to your Inbox.