Well, I have had Windows Vista installed on my development machine for about 5 months now and feel it is time to reflect on my experience. As you may infer from my post title, there are many things I don't like. There are, however, many things that I do like so I will start with those.
User Interface Enhancements
I am not going to gush about all the cool little "flashy" things that were added to the Vista UI. In fact, I find most of them pretty useless. But there are a couple of small things which I really like and find that they add value. An obvious one is the ability to search the start menu. I love being able to open up programs without having to ever use my mouse. I do not, however, include the entire searching feature that is built into Vista in my list of good features. In fact, the search seems to be pretty much useless every time I use it so I am slowly learning to avoid it.
I also really like how the file path displayed at the top of Windows Explorer can be used as a clickable bread crumb for navigation. I use this feature all of the time.
The last small UI enhancement that I find a lot of value in is the new menu that pops up when you use Alt+Tab. I was a big fan of TaskSwitchXp as a replacement for the Alt+Tab menu in Xp and I find it even better when useful features like this are just built into the operating system.
IIS7 - Finally Multiple Web Sites
As a web developer using Windows XP, I found it very limiting to be able to only have one web site under IIS. I know that there were ways around this limitation, but I found them to be very cumbersome. So then I moved to Windows Server 2003 as my development machines OS, but this always felt like a step backwards. I was giving up many things I liked in XP just to have multiple web site. Well, this problem is fixed with the inclusion of IIS7 in Windows Vista. Multiple web sites is not the only feature I love about IIS7 - I also love the new management interface and the integration with .Net.
I am sure there are other small things that I have grown used to in Vista that I just can't recall, but I think I have covered the major ones (kind of small list huh?)
Do I Feel More Secure?
I know there is a lot of discussion about how users (even developers) should never run as Administrator just to do every day tasks. I even agree with a lot of the arguments. Developers running as administrators just seems to propagate the problem because they develop software which requires admin access. So am I just a lazy developer who doesn't want to go through the trouble of dealing with less than administrator access? I don't think I am.
Rather than tackle this whole subject at once, I think I will just focus on my development experience using Visual Studio 2005 to develop web applications on Vista. So you want to access we web site in a Visual Studio project via IIS? Well then you better remember to right click on the visual studio short cut when you launch it and choose 'Run as Administrator'. Otherwise, you get this:
So I guess if I want to work with websites I have to remember to always remember to run VS as administrator? This is just one more thing to make my life harder.
Here is another problem I run into all of the time - Drag and drop. For some reason, somebody decided that it would not be secure to drag something from a program that is not running as administrator to one that is. So I remember to open visual studio as Administrator so I can work with web sites but then I want to drag some files onto it to open them, I get this:
I can't even take a bunch of items and drag them onto solution explorer to add them to my project. I have to use the "Add existing item" dialog to add each folder of items separately. So basically I have sacrificed usability for security. But is it more secure? How was dragging and dropping a security hazard for me in the past? It wasn't.
I was going to include a discussion about problems I have debugging web sites using visual studio due to even more security constraints, but then I noticed that Scott Guthrie announced a hot fix for this problem. Hopefully this fixes my problem.
Can I please Move Files?
There is one last usability thing that I want to discuss - the process of moving or copying files. I know many people have already expressed outrage about the speed of copying and moving files. I have more of a problem with the dialog boxes used in copying. Scott Hanselman has expressed grief about the Network Diagnostics dialog box. My problems with the move files dialogs are very much the same. Omar Shahine has also talked about the file dialogs in the past. So here is the scenario - I want to take a bunch of files and folders and move them over to a server while replacing what is there. In Xp, this was just a matter of doing a copy and paste (or a drag drop) and then clicking a "Yes to All" button when you were prompted to replace. In Vista you get two different dialog boxes. First one for folders:
So since I want to replace everything, I have to click the checkbox at the bottom and then click 'Yes'. But then I am prompted with another dialog for files:
Now I have to again, click the checkbox at the bottom, but now the UI is different from the last dialog. Instead of clicking yes, I must choose one of the three huge button choices: "Move and replace", "Don't Move", or "Move, but keep both files". This confuses my brain because it is different than the last dialog. And why does there have to be two separate dialogs? Can't they just warn me once?
I also like Jan Miksovsky's thoughts on the replace file dialog.
Just let me do what I want
So my overall feeling as a developer using vista is I am trapped. I have to walk around with shackles. Am I just a walking security hazard? I think that if the powers that be want me to be running as a regular user, the tools need to support it much better than they do. UAC is not the answer. More warnings and dialogs is never the answer. More restrictions do not really improve security in my opinion - it just alienates users.