Microsoft Ignite Conference: Day 4 Round-Up

Last day of the MS Ignite conference for me. Let’s take it to the bridge:

Another metaphor? You betcha:

– Cloud vs on-premise
– Microsoft as Service Provider vs Shrink Wrapper
– Unified experiences vs Diversified devices
– People-driven Intranets vs Intranet-driven people
– Windows OS as a true personal & biz life and productivity platform vs Windows OS as a 900 pound gorilla

My top picks for Day 4 in the SharePoint/Office 365 realm (with a little .NET 5 in there to maintain my Dev street cred):

My last-day sessions:

JEA: A PowerShell Toolkit to Secure a Post-Snowden World

When asked what to do about corporate hacking, Ex NSA Director Michael Hayden replied, “Man up and defend yourselves.” Edward Snowden then rocked the world by disclosing privileged NSA information. JitJea stands for “Just In Time, Just Enough Admin.” It’s a Windows PowerShell toolkit that admins use to perform functions without giving them admin privileges.

MVP Panel: SharePoint On-Premises, Online and Everything in Between
Imagine five great minds coming together to talk about Microsoft SharePoint across the board, be it within Microsoft Office 365, in Microsoft Azure, on-premises and certainly hybrid. Via a panel Q&A format, these MVP experts expose how online and hybrid improvements increase both deployment scenarios and value. This session is designed to help ITIs and ITDMs find the right cloud formula to deploy based on practical business and technical considerations. This is a must-not-miss session for any IT pro!

How to Decide When to Use SharePoint and Yammer and Office 365 Groups and Outlook and Skype
Your users may struggle with these questions: Should I share a message via Skype for Business instead of Yammer, Office 365 Groups, or Exchange? Should I collaborate on data using an Excel sheet or a SharePoint list? Should I share a file in Outlook, in a meeting, from OneDrive for Business, on Yammer, in a Group, or in a SharePoint site? This session is the ‘How To’ user’s guide What happens when your users can’t decide what technology or feature to use? They use what they know, or what’s easy; even if better options exist. In this session, Richard and Kanwal help you maximize the value of your Office 365 investment by providing the guidance you need to help your users make better, more effective decisions on how they get work done.

Experts Unplugged: Office 365 Security

OneNote for OneLife: From Notes to Productivity and Platform
OneNote is awesome. Really. Knowledge, learning and info on the bleeding edge benefits from structure – but not too much structure. We all need a place to inscribe understanding, without having to go overboard on the word-processing end of things.  I’m always thrilled to hang out with the OneNote crew as I sometimes wonder if they know they have the future of Education and Wikis in their hands.

Microsoft OneNote gives you one place for your notes and other content with you, anywhere now that OneNote is across all platforms and devices. Write by hand, type, record, snap a picture, clip from the web, or use a growing number of other partner apps and devices and OneNote saves it. Organized or not, you can easily find your notes in any form (text, writing, picture, or audio) with OneNote search. This session demonstrates end-user productivity scenarios at work to give you a clear understanding of how OneNote can help drive adoption of Office 365 with cross-platform, real-time collaboration, and extensibility with OneNote API. You’ll walk away wanting to use, evangelize, and build on OneNote personally or for your organization. released to General Availability – Move your Source Control to the Cloud

Visual Studio Online is the fastest and easiest way yet to plan, build, and ship software across a variety of platforms. With Visual Studio Online, you can set up an environment for you or your team that includes everything from hosted Git repositories and project tracking tools, to continuous integration and an IDE, all packaged up in simple monthly plans. Get up and running in minutes on our cloud infrastructure without having to install or configure a single server.

Integrate with the Visual Studio platform to create your perfect development environment that you’ll love as much as your code. You can customize and extend the Visual Studio IDE or TFS using the comprehensive Visual Studio SDK, or connect with Visual Studio Online using our REST APIs.

Visual Studio Online:

Various TFS & Visual Studio Posts on my Blog:
CloudShare Explorer for Visual Studio 2012
Bing Code Search for C# – Visual Studio Extension
Visual Studio 2013 now available to MSDN Subscribers
Visual Studio 2012 or 2010 for SharePoint 2010 Development?
Visual Guide for Building Team Foundation Server 2012 Environments
PowerPoint Storyboarding with Visual Studio 2012
Rename Team Foundation Server 2010 Team Project
TFS Power Tools for Visual Studio
Cloud SharePoint for Developers : Office 365, Azure, Amazon AWS & CloudShare
Web Essentials 2012 – Visual Studio Extension
Microsoft All-In-One Code Framework new update is out
Syntax Formatting for PowerShell in Visual Studio 2010

Visual Studio 2012 or 2010 for SharePoint 2010 Development?

A recurring question that has come up is regarding which version & flavour of Visual Studio can and should be used for SharePoint- we are at a point where SP 2013 is coming on strong but many, many clients are going to be locked into SP 2010 for a while yet. Obviously an investment in software like Visual Studio should be made with the best balance of future-proofing and low cost possible. This post seeks to offer some advice on that.

The quick answer is:
-you can develop for SP 2010 using VS 2012, there project templates etc. that are geared for both version in VS 2012.
-you can develop for SP 2013 using VS 2010, however there’s going to be loose ends. Upgrading your existing VS 2010 solutions to VS 2012 is however not that hard.

The next question you will likely have is, which flavour of Visual Studio to get – Ultimate with MSDN, Premium with MSDN, Test Professional, Professional with MSDN, or Professional.

Version compare here: I would see Visual Studio Professional 2012 being a good fit for most common scenarios, but whether you use Pro or move up to Premium would depend on if you need the following Premium features:

–          PowerPoint Storyboarding
–          Team Foundation Service

In general, the big upsell when going up the feature matrix ladder is when you are working on hardcore software development in big teams, using Agile development processes, complex unit testing etc.

The hard requirement of having Visual Studio installed on a non-production SharePoint server install is pretty much standard, until you go to a SharePoint 2013 development model which is based on more open standards and Apps. Depending on your licensing provisions available (e.g. you’re in Government or Education), you may have SharePoint CAL’s covered to create such an environment – or, and for a variety of other reasons, you might want to consider an MSDN subscription. An MSDN subscription also would enable the aforementioned Team Foundation Service hosted source code option.

A fleshed-out dev environment is a must, custom code should never see the light of day on a production server until tested, there is always potential for irreparable damage to production systems when it comes to custom dev. Here are four great options for setting up a SharePoint development environment in the cloud.

SharePoint dev is sometimes maddeningly complex as the already complex front-end side of SP is just the tip of iceberg. The plumbing underneath is massive. Although there is quite a bit of flexibility with how you approach it, you definitely need to get your shop tooled up in a specific pattern, and Visual Studio is just one component. Evaluating whether or not it even makes practical sense to do such work in-house or to contract out is a big jigsaw puzzle too.  Fortunately there is a good degree

CKS Dev for Visual Studio 2012 is here

The Community Kit for SharePoint: Development Tools Edition extends the Visual Studio 2012 SharePoint project system with advanced templates and tools. Using these extensions you will be able to find relevant information from your SharePoint environments without leaving Visual Studio. You will have greater productivity while developing SharePoint components and you will have greater deployment capabilities on your local SharePoint installation.


This version is targeted for users running SharePoint 2010 or SharePoint 2013. You only need this version regardless of SharePoint edition or version.

Previous Visual Studio 2010 versions can be found CKS – Development Tools Edition (Foundation) and CKS – Development Tools Edition (Server)


This project provides extensions to four core areas; Environment, Exploration, Content and Deployment.

Exploration extends the new SharePoint Explorer with advanced information about SharePoint sites such as the installed Web Parts and Master Pages or the Feature dependencies and elements. Also included in the Explorer are a variety of import functions to bring existing SharePoint items into your active solution.

The Content area includes advanced templates such as Linq to SharePoint, Custom Action or Delegate Control. Become extra productive while developing sandboxed solutions using the SharePoint Full Trust Proxy. Utilise the SharePoint Console Application project template to quickly build SharePoint code.

Our enhanced Deployment functions give you the ability to utilise quick deployment and almost a dozen other productivity enhancing deployment steps, including automated deployment (per file on change deployment).

Find the complete overview of all the CKS Development Tools Edition features on the documentation tab of the project site.

Microsoft All-In-One Code Framework new update is out

New (Oct.25 2012) release of the Microsoft All-In-One Code Framework is out.

Lots of new Windows Phone 8 samples, an Enterprise Sales Dashboard for Windows 8, SharePoint 2013 Custom Geolocation field type with Client side rendering, a Microsoft Surface Sample screen saver, and more..


Developers love code samples. Samples often serve as the starting point for many developers to learn a new technology. They also provide straightforward solutions and helpful references when we as developers need to solve tough programming tasks. Some developers even live by code samples.

In partnership with Visual Studio Product Team and MSDN Samples Gallery Team, Microsoft All-In-One Code Framework releases Sample Browser Visual Studio Extension for Visual Studio 2012 and Visual Studio 2010 – an effort to evolve the code sample use experience. You can search and download 3500+ Microsoft official code samples and community samples, including over 700 Windows 8 samples and more than 1000 All-In-One Code Framework customer-driven code samples. With its integrated sample search, flexible sample download and more than ten useful features designed for easier access and management of code samples, we hope to put the power of tens of thousands of code samples at developers’ fingertips.


Features & Benefits

  • Integrated and Rich Sample Search Experience

Sample Browser Visual Studio Extension is integrated with Visual Studio Quick Launch Bar, Toolbar, Code Editor and File Menu. It gives you quicker access to samples when you are writing code in Visual Studio. A rich set of sample search conditions allows you to filter search results by language, owner, technology and the targeting Visual Studio version.

  • Integrated and Flexible Sample Download Experience

The Sample Browser Visual Studio Extension is integrated with the built-in support of downloading online samples in Visual Studio 2012. Code samples downloaded in Sample Browser Visual Studio Extension are visible to the built-in code sample feature in Visual Studio 2012. Vice versa.

Beyond that, Sample Browser Visual Studio Extension provides additional benefits to developers. Developers can enjoy theflexibility in downloading and managing code samples. By multi-selecting sample search results, and clicking a simple download button, you get your wanted code samples.

  • Integrated Look and Feel

Sample Browser Visual Studio Extension is integrated with the Visual Studio theme colors. It supports both light and dark themes.

Windows Internet Explorer Testing Center – IE10 FTW

For developers and consumers alike, successful W3C and Ecma International web standards are important for making the web better. A comprehensive test suite is an important part of a healthy standard, along with a clear specification and great implementations of the standard. Without thorough tests that assess the normative statements in a specification, a proposed standard is just a document on a website.

Any browser can claim to support some or all of a specification. The test results from a comprehensive test suite are the best way to determine which browsers will render the same markup consistently. Web developers have told us that seeing the test results, chapter-by-chapter, spec-by-spec, enables them to spend their valuable time building rich, interoperable web experiences for their customers.

We developed 75 new test cases and updated 168 test cases in conjunction with development of Internet Explorer 10 Release Preview. The IE Testing Center now offers a total of 7573 test cases. We continue to work closely with these two web standards organizations by submitting these test cases officially within each working group’s official process.

We welcome your continued feedback on the test cases using the appropriate W3C mailing list for each working group. For ES5 test cases please open bugs in the test262 bug database.

The first table below summarizes the test results by specification with Internet Explorer 10 Release Preview along with each of the major shipping browsers running on the Windows Release Preview. The second table at the bottom of this page provides links to each of the test cases we submitted to each appropriate working group to help the web become more interoperable.

Cross-browser Test Results Summary:

Web Standards Number of Submitted Tests Internet Explorer 10 Release Preview Mozilla Firefox 12 Opera 11.64 Apple Safari 5.1.7 Google Chrome 19.0.1084.46 Internet Explorer 9
HTML5 326 99% 74% 64% 74% 89% 36%
SVG 1.1 2nd edition 74 100% 93% 93% 88% 97% 95%
CSS 236 100% 70% 59% 63% 66% 62%
DOM 127 100% 89% 85% 90% 94% 100%
Web Performance 28 96% 89% 0% 0% 89% 39%
Web Applications 464 99% 78% 42% 32% 54% 21%
JavaScript 6,318 100% 97% 99% 91% 100% 91%
Last updated: 5/31/2012

View Source Chart for IE

Thought i’d share that there’s an IE port of a valuable plugin i’ve used in Firefox for a while, View Source Chart:

Steps to get beautiful, visually sensible HTML source viewing in IE9:
1. Copy the script below and paste it into a new browser bookmark.
2. Click the bookmark from any page to view its source chart.

For other browsers, check the first code block on this page.

About View Source Chart

Cross-browser bookmarklet now available at

Eyesight is the most efficient way for the human brain to process information. By placing visual boundaries where they already exist invisibly, Source Charting enables you to take in DOM structure and hierarchy as fast as your brain possibly can.

When mentally building tag boundaries by reading a tag name, then using manual actions like clicking, finding and scrolling, we experience forced breaks in cognitive processing. As the DOM becomes more complex, more productivity is lost. It doesn’t take long before mentally navigating the DOM becomes impossible.

Source Charting eliminates the need for processing any other way but the fastest: visually. It provides an instant and complete visualization of hierarchical nesting of any tag in the view port.

Source Charting…
* Defines HTML Tag Boundaries (so you don’t have to)
* Defines DOM Structure and Hierarchy (so you don’t have to)

Case In Point: The Misapplication of Flowchart-style UI for DOM Inspectors
DOM inspectors and Folder Viewers have historically (and mistakenly) used flowchart-style GUIs to help users navigate hierarchies. The problem is that this type of GUI is intended to convey sequential movement or flow, not structure.

Because sequence and flow is measured one step at a time, the lines connecting elements in a flowchart-like GUI span only one generation (parent-child). When used to depict complex hierarchical structures like the DOM, the user is forced to inefficiently and inaccurately measure hierarchical nesting levels using white space indentation. (See image #3 above)

It is precisely this subtle but monumental mistake that View Source Chart overcomes.

The only way to visualize structure accurately is to measure hierarchical nesting. This is done simply by pictorially delineating element boundaries, which results in a manifestation of document structure.

For a full de-bugging How-To, visit

Cross-browser bookmarklet available at

Telerik acquires Fiddler

Great news, the greatest little open source web debugger, Fiddler, has now been aquired by the great vendor of .NET controls, Telerik. Expect some nice upgrades to Fiddler soon, and yes, it will remain free.

Full story:

“We have some very exciting news to share with the Telerik community. Telerik has just acquired Fiddler! Even more exciting is that Fiddler’s brilliant creator Eric Lawrence will come over from Microsoft to join the team fulltime. For those of you who don’t know, Fiddler is a web debugging proxy which logs all HTTP(S) traffic between your computer or device and the Internet. In other words, it is an essential tool for any web, desktop or mobile developer. The popularity and sophistication of Fiddler is hugely impressive considering this has been Eric’s informal side project for more than 8 years. With Eric joining the team he will be able to deliver on his vision for Fiddler with the full financial and resource backing of Telerik.

It might be apparent why Eric would jump at an opportunity to turn his side passion project into a full time position, but what might not be readily obvious is why Telerik would need a product like Fiddler in our portfolio.

Our strategy has always been to acquire when it makes sense and to use the new technology to improve our core products for the benefit of our customers. In the case of Fiddler, this was a natural extension because Fiddler is already in use as the core technology behind Test Studio’s load and performance features. Additionally, we gain a formidable competitive edge over other tools as both Eric and Fiddler join the Test Studio product family. The collaboration for enhancing Fiddler is already underway as well as discussions to further expand our portfolio and extend support for our customers.

The Fiddler community is very important to us. We have learned from the mistakes of others who have acquired free tools only to turn the tables on the community and monetize them at a later date. We admire what Fiddler has delivered to the community and want to expand that value by investing in things like expanded platform support, user interface improvements and a first class website with extensive community and support features.

That is why, as part of our commitment to keeping Fiddler free and making further investments into the tool, we have launched a poll on the Fiddler website asking the community to vote on the first improvements we will target. Whether you are an avid or occasional Fiddler user we would love to get your opinions on what you would like to see happen first.

To give you some insight into how popular Fiddler really is here are some stats, year to date. On average Fiddler receives over 9,000 installations EVERY DAY, and when I say average that is including weekends. That number jumps to over 10,000 for weekdays. The website has received more than 5 million unique visitors this year alone with over 80% of them being first time visits. Needless to say that the Fiddler community is not just big, it’s HUGE.

So please help me in welcoming Eric and the Fiddler community into the Telerik family. Great things are ahead for Fiddler as we continue to invest in and build an even better tool and community. To see how Fiddler is already powering Test Studio’s load and performance features download a trial today.”

AutoSPInstaller – Auto-create local profiles for SharePoint Service Accounts

SharePoint is a big product and there’s a lot of people in the world working on it.. so it’s funny to be working on a specific issue, then coming full circle and either Bing’ing upon your own old blog post, or, as today, seeing that someone has adopted what the guy sitting next to you blogged a while ago into the current code you are looking at.


While running SharePoint 2010 you may notice the following error Event ID 1511 messages in your Application event log each time you restart the IIS Worker process and made a request:

Log Name: Application
Source: Microsoft-Windows-User Profiles Service
Date: 5/3/2010 10:05:07 AM
Event ID: 1511
Task Category: None
Level: Error
User: CONTOSOAppPoolAccount
Windows cannot find the local profile and is logging you on with a temporary profile. Changes you make to this profile will be lost when you log off.

So What

If your SharePoint services accounts are being run under the Application Pools then you are not going to see this message. If you are however using a separate account to run your Application Pools you are probably going to see this error in your event logs.

You need to get those accounts to fire up a local profile – this could in the simplest sense be accomplished by logging on as each of those accounts once. Nasty!

The better approach- well, I was looking at scripting a PowerShell to run the following en masse for all of an installs service accounts:

runas /u:CONTOSOAppPoolAccount /profile cmd

..however, knowing that we have had some joy with the AutoSPInstaller recently, I thought I’d poke around that and see if we couldn’t just wire in the creation of the local profiles into that solution, so it would be taken care of in the same go as batch account creation.

Well, poking around the AutoSPInstaller file AutoSPInstallerFunctions1.ps1 is discovered the following magical discovery – look’s like my homeboy Sean (on his Brainlitter blog post) has already inspired this fix (change 72193) to be added to the AutoSPInstaller codebase! :

The suggestion from matein78 got added in as a patch:
– AddManagedAccounts function now creates local Windows profiles for each account, to avoid ‘1511’ type event log errors (thanks to user matein78’s suggestion from!)

NOTE: I created a stripped down version of this functionality that doesn’t require the main AutoSPInstaller script, i.e. you can run it manually on a hand-deployed SharePoint install. Read about it here.

..which is implemented as:

ForEach ($account in $xmlinput.Configuration.Farm.ManagedAccounts.ManagedAccount)
            $username = $account.username
            $password = $account.Password
            $password = ConvertTo-SecureString "$password" -AsPlaintext -Force 
			# The following was suggested by Matthias Einig (
			# And inspired by &
				Write-Host -ForegroundColor White " - Creating local profile for $username..." -NoNewline
				$credAccount = New-Object System.Management.Automation.PsCredential $username,$password
				$ManagedAccountDomain,$ManagedAccountUser = $username -Split ""
				# Add managed account to local admins (very) temporarily so it can log in and create its profile
	    		If (!($LocalAdmins -contains $ManagedAccountUser))
					$builtinAdminGroup = Get-AdministratorsGroup
					$AlreadyAdmin = $true
				# Spawn a command window using the managed account's credentials, create the profile, and exit immediately
				Start-Process -WorkingDirectory "$env:SYSTEMROOTSystem32" -FilePath "cmd.exe" -ArgumentList "/C" -LoadUserProfile -NoNewWindow -Credential $credAccount
				# Remove managed account from local admins unless it was already there
                $builtinAdminGroup = Get-AdministratorsGroup
	    		If (-not $AlreadyAdmin) {([ADSI]"WinNT://$env:COMPUTERNAME/$builtinAdminGroup,group").Remove("WinNT://$ManagedAccountDomain/$ManagedAccountUser")}
				Write-Host -BackgroundColor Blue -ForegroundColor Black "Done."

Now What

Now I sit back and relax as the circle of life has been completed and this is one less bit of code to write today. Thanks to Sean, Todd Carter, matein78 and of course brianlala for writing AutoSPInstaller and adding this patch!

Sean Wallbridge (my boss):


Todd Carter:

Visual Studio 2010 – The project type is not supported by this installation.

I came back to a VS 2010 C# SharePoint project after a while and found it wouldn’t open the project.

The error: The project type is not supported by this installation.

This error generally means that the project type you are trying to open is not supported in that Visual Studio Installation. 🙂 Reasons this situation could come about is an improper sequence of Visual Studio add-on installs/patching, or simply having built the project on one VS install and opening it on another.


1. Check whether the VS2010 product you installed supports web development

Please see:
For VS2010 Express products:

For VS1010 retail products:
(Expand the node of “Product Feature”)

2. If you’re running VS2010 retail products Professional edition, Premium Edition, check Help Menu > About Microsoft Visual Studio > Installed products? Please check whether “Microsoft Visual Web Developer 2010” has been installed properly.

3. Delete the
If those 2 steps fail to yield a result, do what I did – open the Visual Studio project file .csproj for example in notepad, remove the values in the node, save and open again.

So, (in my project), I deleted the GUID values from the following node:


so it became:

<ProjectTypeGuids></ProjectTypeGuids> the file and open project again in Visual Studio. Project subsequently works.