Recently some of the MCM SharePoint masters were kicking around different development environments and setups for SharePoint 2010. This was an interesting conversation because of SharePoint 2010’s support for Windows 7 and Windows Vista as an OS for development and test purposes. For more information on how to set this up check out this MSDN article. In some circles SharePoint development on Windows 7 has become the platform of choice due to Microsoft’s lack of an offering for x64 virtualization on Windows 7. For me personally however running Windows 7 as a SharePoint development environment was not ever that compelling for a number of reasons:
- My main computer is a laptop and I travel quite a bit. So I am one of those mobile developer types and I don’t want OWSTimer, SQL Server, IIS, etc running and consuming memory while I am in the airport on battery trying to determine why my flight is late, again. I am too lazy and forgetful to run scripts to toggle services off and one each time I go from battery to full power and back.
- I work with many different customers whom all seem to run different SharePoint SKUs (Foundation, Standard, Enterprise) as well as different patch levels. I like the ability to test a solution on the same software SKU and patch level which my customer is running. I also like the ability to roll back a patch if necessary should something go bad or if I have a private fix which I need to test. Running Windows 7 on my laptop and installing SharePoint 2010 would lock me into one SKU and patching would be a forward only excise without any ability to rollback.
- There are some cases where running on Windows 7 just will not work, for example, User Profile Service (UPS) and Office Web Applications typically do not work without some additional effort.
- When I hit a strange error is it my Windows 7 configuration, a stupid dev anomaly, or is it really something I need to track down? I am sure the testing of SharePoint on Windows 7 was not as rigorous as what was performed on Windows Server 2008/R2. I have been around the product servicing game long enough to know that if I find a “SharePoint on Windows 7” bug I will have a heck of a time justifying the cost and priority to have that bug fixed unless it impacts more than just myself and a small hand of folks. That said, I currently do not know of a single bug which reproduces on Windows 7 but not on Windows 2008/R2 so don’t ask for a list.
- I like being able to hit the reset button on a dev environment to cleanup stuff – I may attach debuggers, turn on logging, make registry settings, etc. My mind slips quite often and it’s just easier to reset to a snapshot rather than trying to back out everything I may have done to the system. If you have ever set a custom route, IP address, DNS setting, host settings, etc. to test something and days later forget and call down to the hotel front desk to complain about their crappy Internet you know what I am talking about. Windows 7 new backup application is really nice and I use it quite often however that is a disaster recovery solution and not a solution I would try to apply to this problem.
- Microsoft, like so many other companies, push down domain policies such as firewall, screensaver, IPSec, Bitlocker, etc and reserve the right to add new policies at any point. I am confident that when IT departments are considering a new domain policy they are not thinking about those folks running SharePoint on Windows 7. Bitlocker, IPSec, Firewall, and strong password policies in a development environment only get in the way which, for me, reduces my already pitiful productivity and therefore increases costs (fortunately I come cheap so “costs” are relative).
- I like running debug logging, performance logs, Netmon sniffs, etc. on a separate machine so I don’t have to filter out all that noise which comes from Office communicator, Outlook and all those other applications I have to run to do my job.
So while Windows 7 as a SharePoint development platform is not for me however I would encourage everyone whom is considering a SharePoint development platform take a look at Windows 7 as my reasons may not be your reasons. I have heard from quite a few folks whom are happy with SharePoint on Windows 7 so you should test and investigate for yourself – besides basing such an important decision on a blog post is never recommended.