You are here

Feed aggregator

AzureCon 2015 sessions – Journey to the intelligent cloud and Azure for developers

MSDN Blogs - Tue, 09/29/2015 - 18:40
As I promised earlier that I will get the sessions that I attended – sharing them for your view – btw, you can see sessions @ our Channel 9 site: Journey to the intelligent cloud : In this session Scott Guthrie talked about the “Journey to the intelligent cloud” – as we know that cloud is helping business and technical leaders worldwide turn the digital disruption into their advantage. How can you do the same? Gain insights from organizations successfully transforming using cloud, hear best practices...(read more)

Experiencing Data Latency for Customer Event Data Type - 9/30 - Investigating

MSDN Blogs - Tue, 09/29/2015 - 18:09
Initial Update: Wednesday, 9/30/2015 01:08 UTC

We are aware of issues within Application Insights and are actively investigating. Some customers may experience Data Latency. The following data types are affected: Customer Event.

• Next Update: Before 02:30 UTC

We are working hard to resolve this issue and apologize for any inconvenience.

-Application Insights Service Delivery Team

Learn how to do Single Sign On with Office 365, and more: Office DevCamps in Australia

MSDN Blogs - Tue, 09/29/2015 - 17:09

Developers: We've got a series of (free!) DevCamps coming up in the next few weeks, for software developers who want to develop apps that integrate to Office 365 (for web, Windows, iOS or Android) and/or that want to integrate to the Office 365 identity using Azure Active Directory. This course is relevant for both commercial developers, working for ISVs, as well as developers within schools, TAFEs and universities, who are developing services for their users.

If you're developing apps or web services for education then there are three critical reasons why you should sign up:

  • By adding the 'Sign in with Office 365' to your service, you create a really simple Single-Sign-On experience for students and staff that connects with their existing identity through the school/TAFE/university’s Azure Active Directory (not just for Australian students - there are over 140m users of Office 365 Education globally)
  • Integrating to OneDrive allows users to work with their own documents easily, whilst saving you money through having user documents\videos\photos etc stored on OneDrive, not your servers
  • You can get your app listed in the global Office Store, as well as the Educational App catalogue, opening a much wider market for you
  Build Productivity Apps

Learn how to build apps using standard web technologies that extend the familiar Office and Office 365 experience and potentially sell them to over 1 billion Office users in 147 international markets. 

At this DevCamp, you will learn the concepts of the new Office 365 API model and go deep into building out an end-to-end example on the Office 365 environment. Microsoft Office 365 DevCamps are free and fun events for developers, by developers.  You do not want to miss this unique event presented by Microsoft technical expert – Andrew Coates.

Gear up and get building!

This is a jam-packed 1-day training course where you will get deep into the code after we gear you up with the tools and environment. There 6 session topics, and all the coding ones are paired with a hands-on lab to put the theory into practice:

  • Intro to day (40 mins)
  • Standing up the environment (40 mins)
    Hands on lab (40 mins)
  • Hooking into Apps for SharePoint (40 mins)
    Hands on lab (40mins)
  • Hook into Office 365 APIs via Standalone web application (40 mins)
    Hands on lab (40 mins)
  • Hooking into Apps for Office (40 mins)
    Hands on lab (40 mind)
  • Building native Android App (40 mins)
    Hands on lab (40mins)
  Dates and Venues

The DevCamps are free - you just need to bring your dev skills and your laptop. They are in our offices in:
Sydney - 9th October
Perth - 12th October
Adelaide - 14th October
Brisbane - 16th October
Melbourne - 30th October

How To: Use the Azure CLI with Azure Government

MSDN Blogs - Tue, 09/29/2015 - 15:34

The Azure CLI provides a cross platform command line interface for working with Azure. If you are on Windows you might want to take a look at PowerShell, see Ryan’s post here on how to configure that.

  • Install the CLI
    • Follow the instructions here
  • Add the Azure Gov Environment
    • Execute this command
  • Download the publish settings file for your Azure Government Subscription
  • Connect it to your subscription
    • Execute this command (replacing the path you downloaded publish settings file to and the name it was given)

You should now have access to all the classic (Service Management) CLI commands.

PowerPoint and Excel: Perfect Partners to Bring the Heat to Your Presentations

MSDN Blogs - Tue, 09/29/2015 - 14:14

Editor’s note: The following post was written by PowerPoint MVP Glenna Shaw as part of our Technical Tuesday series.
Tables are a powerful tool for visually organizing data, but a table takes time for an audience to absorb. When you’re giving a presentation you want your audience to listen to what you have to say, not looking at a table trying to decipher the patterns in the data.

So how can you make a table that your audience can absorb at a glance? The answer is turn it into a heat map. A heat map uses color to indicate values or ranges in value, making it easier for the viewer to see the patterns in the data.

The difference is easily seen in this example:
Data Table 
vs. Heat Map 
Without the heat map it’s nearly impossible to see that the Post-Bachelor’s degree is as effective for earning potential as the Post-Doctorate.

Match Formatting in PowerPoint and Excel
Unless you want to color the PowerPoint table manually, your best option for creating a heat map is to do it in Excel. Since you’ll be copying the heat map into PowerPoint the first thing you want to do is make sure you’re using the same theme for both PowerPoint and Excel. If you don’t know how, follow these instructions for PowerPoint: and these instructions for Excel: This ensures you’re using the same colors, fonts and effects for your heat map and your presentation.

Using Excel to Create the Heat Map from a Table
Excel’s conditional formatting feature makes creating a heat map very easy. To create a heat map like the one in the example all you have to do is highlight all the values in your table, click on Conditional Formatting in the Home tab, click Color Scales and choose the one you want. I choose the Green – White Color Scale and then modified it by clicking on Conditional Formatting, Manage Rules, and Edit Rule and changed the white to light blue and the green to dark blue. 

To hide the values in the table, simply highlight all the values in your table and click Format in the Home tab, click Format Cells and apply a custom format of three semi-colons (;;;) as the type. 

Creating a Custom Heat Map
If the standard conditional formatting options don’t meet your needs, it’s pretty easy to create your own. In the example below, I applied conditional formatting to the same table to show the values that fall within the ranges for income classes in the United States. 

In order to get this type of formatting, I created a conditional formatting rule for each level of income class; from lower class to upper class. To do this, I selected all the values in my table and clicked on Conditional Formatting, Highlight Cell Rules, Between…, set the values for lower class annual salary range (between 1 and 16000) and formatted the cell with a very light blue fill. I then repeated these steps for each of the remaining income class ranges choosing a slightly darker blue fill as I progressed through the income class levels. This gave me 5 conditional formatting rules applied to the same cells, but, as you can see in the example, the values in my table meet the criteria of only three of the rules. Without conditional formatting, I would’ve had to figure this out manually. 


The Legend Controversy
No matter what type of heat map you chose to make, you’re going to have to offer some type of explanation to help your audience recognize the pattern. Current trends prefer direct labeling of values like I’ve shown in the heat map for the income classes by using text boxes. This works great when you only have a few colors to label. For a heat map that shows a large variety of colors you have a number of options:
1. You can simply tell the audience that the darker the color the higher the value and vice versa.
2. You can add a shape formatted with a gradient using your two colors and label it.
3. You can format the cells for the highest and lowest values to show the values in the cell.
4. If you want to provide more detailed information you can include a legend like I’ve shown in the first example. To create this legend, I first used a formula to create equal increments of the values between the highest and lowest value and then applied the same conditional formatting to it as the table. It’s important to note that using this type of legend will be more of a distraction for your audience, so I might save it for a hand out instead of a presentation.

Adding Your Heat Maps to a Presentation

The best option to getting your heat maps into a PowerPoint presentation is to copy and paste them while retaining the original formatting. Make sure you’ve done all your formatting in Excel before you copy the heat map. This includes any labels. Then select Copy from the Home tab. Your selected area will now be bounded by a dashed line.

Go to your presentation and click on the border of your placeholder to select the entire placeholder (this will help with sizing your heat map to the slide). Make sure you’ve selected the entire placeholder. You’ll know this because the handles will appear on the corners of the placeholder instead of your cursor inside it. In PowerPoint, click the Paste drop down on the Home tab and click the second icon to Keep Source Formatting.

This will paste your heat map into your slide. As you can see by the example below, you’ll probably need to make some adjustments. Because the entire thing is a table, you can click and drag the column width and row height as desired until you get the look you want. It’s important that the heat map cells are exactly the same size as each other, so once you’ve formatted all the text columns and rows surrounding your heat map, select all the colored cells and click on Table Tools, Layout, Distribute Rows, and Distribute Columns. In my example, I also have to move and adjust my text labels. The final result is an attractive heat map that is much more effective in a presentation than a table.
This method copies the heat map into a PowerPoint table. If your table data frequently changes you may want to link your heat map to your presentation instead. Linking tables from Excel to PowerPoint is tricky at best. For my part, I prefer just to recopy/paste into PowerPoint since I can do it faster. But if you do want to link your heat map see my tutorial here about Dynamic Tables in PowerPoint for how to do it:

Finally, I’d like to give a nod to Excel MVP Jon Peltier for his excellent tutorials on Excel. Most of what I know about Excel came from his site. His site is:

The files used to create this tutorial are available for download as a heat file at: is a site so you must be able to access it to download the files. My other tutorials and sample files are also available.

About the author

Glenna is the owner of the PPT Magic and web sites and the Visualology blog. She is a Project Management Professional (PMP) and holds certificates in Knowledge Management, Accessible Information Technology, Graphic dDesign and Professional Technical Writing. Follow her on Twitter @GlennaShaw.

Power BI Pays Dividends in Financial Services

MSDN Blogs - Tue, 09/29/2015 - 14:00
In the financial services industry, time is literally money. Time spent chasing down data and creating static reports manually means less time for gaining insights, which leads to delayed responses to customers and rapidly shifting market conditions.

Power BI is redrawing this picture. Financial data teams no longer have to use up to 80% of their time trying to find, format, and present the right data, with little time left over to make the right decisions and partner fully with decision makers. Instead, Power BI enables analysts to share the latest, refreshed data to colleagues through powerful, interactive visualizations.

Connecting presentations directly to financial data sources minimizes the risk of errors and significantly decreases the time spent on converting data to information and insight. The data sources can be an Excel spreadsheet on your laptop, a database on your business network, or cloud-based, such as QuickBooks Online, in any combination.

With Power BI content pack for QuickBooks Online, you can create dashboards for your QuickBooks Online data in minutes. Analyze your balance sheet, cash flow, profitability, customers, and vendors, and display interactive reports—all with a single tool. Use the Power BI Q&A feature to ask natural language questions, such as “Who are the most profitable customers?” and see an interactive visualization as an answer.

But there’s more: Power BI self-service analytics has the power to transform financial services business operations. Just ask Metro Bank, the first new high street bank in the UK in 100 years.

Metro Bank is all about customer service. It refers to its customers as “fans.” It staffs 24/7 call centers. It issues customers operating debit cards within minutes.

This customer-centric approach has paid off. Thousands of people have become new Metro Bank fans over the last five years.

To build on this success, Metro Bank required a business intelligence solution that could capture rich detail about customer behavior. Those details must be made clear and understandable to decision makers, so that Metro Bank can perfect its services and achieve its goal of one million customers by 2020.

Metro Bank chose Power BI. Not only did it integrate readily with the bank’s existing Microsoft infrastructure, it was easy for staff to learn and personalize. In the competitive UK banking world, Power BI enables Metro Bank to identify and remedy problems before they damage customer relations. Staff can combine account activity data with data from customer satisfaction surveys, branch traffic patterns, and more to understand and improve the customer experience. The reporting data is refreshed each night so staff can see an up-to-date view of the previous day, weeks, months or year.

“We have customers on our banking platform transacting day in and day out,” says Bruce Ricoh, head of Business Information and Customer Systems. “We also have them transacting on our Internet and mobile platforms, which are another data set, and the call center uses still another data set. With Power BI we can bring together all the customer data and get a full view of the customer.”

Metro Bank takes full advantage of Power BI dashboards to build a unified, data-driven, customer-focused business culture. “We are now running 27 dashboards and reports in Power BI,” says Ricoh. “Everything from accounts open to volumes of accounts, types, balances, who opened, which store they belong to, who manages them, all the call data and what products they hold. We have all of our income data and we run all of our balance sheets and P&L through Power BI because the engine is so superior.”

Metro Bank is one example of how Power BI is transforming financial services. With Power BI, data analysts can use the same tool and resources to accomplish in minutes what used to require days. Business review meetings can evolve from presentations of static reports to dynamic collaborative sessions where staff can slice and drill down into the data in real time. And, as we saw with Metro Bank, immediate, data-driven insights can bring new energy to drive the business forward.

Can Power BI pay dividends for your business? Find out. Sign up today for free.

Stream Analytics updates for the Azure IoT Suite

MSDN Blogs - Tue, 09/29/2015 - 13:51

Today Microsoft announced the availability of the Azure IoT Suite, a collection of preconfigured solutions that enable you to easily develop, deploy, and scale your Internet of Things solutions.

Stream Analytics is a core service in the IoT Suite and as part of this announcement, we have delivered several new features today.  Included in today’s updates are presence in the Azure preview portal, support for DocumentDB output, and support for IoT Hub input.  For details, see Santosh Balasubramanian’s blog post.  The full announcement of the IoT Suite can also be found here.

Small Basic Teachers and Educators - Join Our Network!!!

MSDN Blogs - Tue, 09/29/2015 - 12:35


We've built a network for our computer science teachers!

We'd love to have you join us if...

  1. You teach Small Basic!
  2. You're a teacher who would like to learn more about teaching Small Basic! This includes Home School teachers!
  3. You build curriculum and content for people who teach Small Basic.... or you currently build content for other tools/languages and you'd consider writing content for people who teach Small Basic!
  4. You're a tutor, trainer, or camp leader who includes Small Basic (or are considering including Small Basic).


Please come join us!

Together, we will:

  1. Collaborate on curriculum, content for teaching, and tips for teaching Small Basic!
  2. Collect your feedback in a personal way. What works for teachers? What could be improved? Get on private previews!
  3. Troubleshoot any issues - We'll help you get started and get help from other Microsoft experts from groups and teams all across the company!
  4. Share with you what's happening with Small Basic in Education!


As mentioned in #3, we'll also get you connected with other Microsoft CS education teams. For another example, we have some great opportunities for connecting you with programs and tutoring for girls who want to learn engineering from professional women engineers and developers!


To get started with joining us, please send me an email:

edprice at Microsoft


Please use this subject:

Small Basic - Microsoft Computer Science Teachers


Thanks in advance! We'd love to connect with you. Feel free to comment below or email me any questions.


Small and Basically yours,

   - Ed

9 demos, 6 platforms, 32 minutes, one IDaaS service – at AzureCon 2015

MSDN Blogs - Tue, 09/29/2015 - 11:54
New post! more)

Catch up the latest on Microsoft Azure through Virtual Event–AzureCon

MSDN Blogs - Tue, 09/29/2015 - 11:27


It’s today. Watch live sessions at

AzureCon will include live, interactive and on-demand sessions. All of the content from AzureCon will be available on-demand after the event, so you can watch the sessions at your convenience.

  • Live keynotes delivered by Scott Guthrie, Jason Zander, Bill Staples, and other executives.
  • Interactive Q&As with keynote speakers, technical leaders, and partners.
  • Technical lap-around sessions presented by Mark Russinovich, Scott Hanselman, and other technical leaders.
  • More than 50 on-demand deep-dive technical sessions that drill into Azure features and capabilities led by members of our product team and community members. We will be sharing a view of these sessions in the coming weeks.

More info at

Save 30% on Windows 10 book & eBook pre-orders

MSDN Blogs - Tue, 09/29/2015 - 11:00

For a limited time, save 30% on pre-orders of Windows 10 books and eBooks when you apply discount code WIN10 during checkout. Offer ends November 30, 2015. More details here.


Discount code WIN10 confers a 30% discount off the list price of Windows 10 books and eBooks (ISBN: 9780735697942, ISBN: 9780735698055, ISBN: 9780735697966, ISBN: 97807356-98079, ISBN: 9780735697959, ISBN 9780735698000) purchased on in a single transaction. Discount not valid on Best Value packs or any title featured as eBook Deal of the Week. Discount code may not be combined with any other offer and is not redeemable for cash. Discount offer expires 11:59 p.m. EST November 30, 2015. Offer subject to change.

WsdlExporter.GetGeneratedMetadata is called once and only once

MSDN Blogs - Tue, 09/29/2015 - 10:33

If you have to provide a custom WSDL as part of your WCF service, you have to extend the WsdlExporter class and implement the GetGeneratedMetadata method. This method returns a MetadataSet object which encapsulates the WSDL that represents the service. One of the reasons you may take this route is if you want to add some custom metadata to the WSDL. The one thing to remember about this method is that WCF will call it exactly once to get the WSDL when someone first calls the ?WSDL or MEX endpoint of your  service. If you return a valid WSDL from this method, it is cached and used on subsequent calls to the metadata endpoint. On the other hand, if for some reason, you get an exception on that first call, then WCF 'remembers' the exception and will return it on subsequent calls to the metadata endpoint. If you encountered a transient, recoverable error when generating the metadata, you don't get another chance to generate it. the only solution at this time is to restart the app domain.

This behavior is by design as the WSDL is considered a 'static' thing and must always be the same for a service, so there is no retry logic built into WCF to call it more than once in the event of an error.

This is the one point I wanted to get across in the post - as far as possible, avoid doing anything fancy in the GetGeneratedMetadata method and ensure it is always able to return a WSDL, possible read from a local file.

Experiencing New Application Creation Issue in Azure Portal - 9/29 - Advisory

MSDN Blogs - Tue, 09/29/2015 - 10:29

Initial Update: Tuesday, 9/29/2015 17:18 UTC

We have discovered a bug in the mitigation deployed for a previous incident which caused any apps created since 9/29, 05:47 UTC to be partially created.  The application would appear in the portal, but is unable to accept data.  This bug was fixed at 9/29, 16:51 UTC and any applications created since then have been verified to accept data.

We are working on steps to recover applications created during the impact window and finish the provisioning process on the back end.  In the meantime, customers can delete and re-create their application to work around the issue.  This will result in the generation of a new iKey, and customers will then have to reconfigure their application to send data using the new iKey.

• Impact Window for Partial App Creation: 9/29, 05:47 UTC through 9/29, 16:51
• Work Around: Customers can delete and re-create their application, then re-instrument their application for the new iKey.
• Next Update: Before 19:00 UTC

-Application Insights Service Delivery Team

Grant permissions via custom AD FS claims

MSDN Blogs - Tue, 09/29/2015 - 09:58

In the times of classic authentication, you could only grant permissions to users by grouping them into Active Directory groups or by granting permissions directly to users. With claims authentication we can now virtually use any claim that the users have to grant permissions.

The high level view of this process would be:

  1. Identify which claims the users have and which one you want to use.
  2. Build the claim value you will use to grant permissions.
  3. Add the claim to the item permissions.

Identify the current claims


Depending on the authentication provider configured in the web application the users will have some claims when they log in. After login, SharePoint augments those claims with several claim providers which add more claims to the user identity. One of these claim providers is the User Profile application and this is why it makes sense to have a running User Profile Application to keep the user properties up to date. 

You can use the following PowerShell to get the installed claim providers in the farm:


Get-SPClaimProvider | ft -auto DisplayName,IsEnabled,IsUsedByDefault,IsVisible


DisplayName                 IsEnabled IsUsedByDefault IsVisible

-----------                 --------- --------------- ---------

System                           True            True      True

Active Directory                 True           False      True

All Users                        True            True      True

Forms Auth                       True           False      True

User Profile Claim Provider      True            True      True

LDAPCP                           True            True      True


The way to check which claims a user has, would be to use a custom web part to show those claims based on the current user. This is an example of such a web part (Helloitsliam.ClaimsViewerWebPart.wsp, can't find the current link for download):

In the example I'm going to use for this post, I want to be able to give permissions to sites using the Department the users have in Active Directory. My lab uses AD FS to authenticate the users.

If you check the screenshot above, you can see that there is no Department claim that we can use to grant permissions so we are going to have to add the claim there.

Adding a custom claim

This is the overview of the steps we need to do to make AD FS forward a new claim to SharePoint and make SharePoint use that claim when authenticating the user:

  1. Check if AD FS supports the claim we want to use. If not, create a new Claim description.
  2. Modify the AD FS Relying Party to add the claim to the token sent to SharePoint.
  3. Modify the trust relationship in SharePoint to accept this new claim and use it in the Claims Identity.


Adding a Claim description in AD FS


We open the AD FS Management console and go to AD FS -> Service -> Claim Descriptions. Here we can find the list of claims supported by AD FS. I don't see a Department claim, so we are going to have to add it.




A new Claim description can be added directly via the console or with PowerShell. My preferred method is always PowerShell so we use the following command:


Add-AdfsClaimDescription -Name Department -ShortName department -ClaimType http://custom-claims/department -IsAccepted $true -IsOffered $true


You can find the documentation of this command here.


After this, we can see the claim in the list and use it in our relying party:




Add the new claim to the Relying party


Just like any LDAP attribute, we need to modify the current Claim rules in the Relying party to pass this claim to SharePoint. Just open the current claim rules and add the new claim to the current rules. You will most probably have a "Send LDAP attributes as claims" so you can directly add the new claim there or add a new rule if you want.




From now on, every new login will include the new claim.


Add the claim to the SharePoint trust


Now that the security token sent by AD FS includes the new token, we need to make SharePoint aware of this new claim.

When we set up AD FS in SharePoint, we create a Trusted Identity Token Issuer. In this issuer object, we define the claims accepted by SharePoint from it and define some mappings from the claim type to the internal claim type.


So, what claim types are currently accepted by SharePoint? As usual, we use PowerShell for this:


Get-SPTrustedIdentityTokenIssuer | % { Write-Host $_.Name; $_.ClaimTypes | ft -auto }


And this is the current output:




To add the new claim type we do the following:


$ctype = "http://custom-claims/department"


# First, we need to define the new encoding character for this new claim

# Make sure that your character is not used in another encoding, it is above 500 (0x01F5) and not an uppercase or whitespace character.

New-SPClaimTypeEncoding -EncodingCharacter ([Convert]::ToChar(501)) -ClaimType $ctype


# Add the mapping

$ti = Get-SPTrustedIdentityTokenIssuer "ADFS UPN"


$map = New-SPClaimTypeMapping -IncomingClaimType $ctype -IncomingClaimTypeDisplayName "Department" –SameAsIncoming

Add-SPClaimTypeMapping –Identity $map –TrustedIdentityTokenIssuer $ti


# Confirm the mapping works, the following should return an encoded claim.

(New-SPClaimsPrincipal -TrustedIdentityTokenIssuer "ADFS UPN" -ClaimValue "Dept 1" -ClaimType "http://custom-claims/department").ToEncodedString()


From now on, SharePoint accepts the incoming Department claim from AD FS and adds it to the claims identity that represents the logged in user.


We could even check the claims viewer webpart again and we will now see the new claim in the identity:




Granting permissions using the new claim

The next step, once the claim we want to use is available, is to grant permission using this claim. Ideally, we would like to directly type the value of the new claim in People Picker and get it correctly resolved by People Picker. Unfortunately, SharePoint does not do this out of the box and we will need to use a custom claim provider if we want this feature.

Out of the box we can use PowerShell to grant permissions.


$web = Get-SPWeb


# This will use the Claim Provider used by the TrustedIdentityTokenIssuer

$claim = New-SPClaimsPrincipal -TrustedIdentityTokenIssuer "ADFS UPN" -ClaimValue "Dept 1" -ClaimType "http://custom-claims/department"


## If there is no Claim Provider that can resolve the claim, New-SPUser will fail but we can directly grant permissions using RoleAssignments

# Example: directly grant Read permissions on the web

[Microsoft.SharePoint.SPRoleAssignment] $roleAssignment = New-Object Microsoft.SharePoint.SPRoleAssignment($claim.ToEncodedString(), "", "Department 1", "")




# Example: add the claim to a SharePoint group

$group = $web.Groups["members"]

$group.AddUser($claim.ToEncodedString(), "", "Department 1", "")


However, the best and more user friendly approach is to use a custom claim provider that can be configured to resolve custom claims. LDAPCP is truly awesome.

With it, we just have to configure a new claim mapping…



 …and People Picker will work like a charm:




The Art and Science of Effective Dashboard Design

MSDN Blogs - Tue, 09/29/2015 - 09:00

By Jen Underwood and Jaimie Fox

Dashboards can be a powerful way to communicate insights. All too often dashboard potential is not fully realized as a result of little thought being put into the final design or chosen data visualizations. By merely refining your dashboard design, you can truly enjoy the full power that lies within Power BI.

Effective dashboard design is both an art and a science. Don’t get caught up in the pizazz, razzle and dazzle of any data visualization just because it is slick, colorful, or you just happen to like the way that it looks. In reality, your creative delivery of information may be confusing, distracting, miscommunicating, or unintentionally undermining dashboard value. Anyone that presents data should strive to make it easy for their target audience to comprehend. A few simple design changes can make a huge difference in context and clarity. Take a look for yourself in this before and after example of not so good and good design.

Not So Good

This “Not So Good” example suffers from a lot of common design mistakes. First of all it has too much information for the audience to quickly understand. The inconsistent Segment colors within charts will likely be confusing. The column chart x-axis quarter labels do not align to the shown monthly values. Single total numbers do not have any context with regards to trends. The pie chart fails to communicate the negative Enterprise results. The Manufacturing Price line chart is way too small and has no legend. The Discount Bands bar chart is also quite small with unnecessary labels. Lastly the table with the scroll bar in the middle of the screen does not add any value. The scroll bar reduces dashboard usability. See if you can spot even more issues with this dashboard design.



In the Good example, we have reduced information overload, noise and confusion by selecting a few appropriate data visualization types and adding context. This time all information nicely fits within the screen without scrolling. The Segment colors are now consistent within the bar and scatter charts to improve clarity. Single total numbers have improved titles to describe reporting time period and are accompanied by sparklines to show trend context. The bar chart clearly shows the negative Enterprise results now. The scatter chart adds perspective at a glance with regards to the Product performance within a Segment. We have also added a date under the dashboard title to help the audience understand when this information was last updated. Even though there is still room for improvement, this example showcases how different design decisions enable you to be far more effective in communicating insights using dashboards.   

A Few Quick Tips for the Time-Starved

If you don’t have time to study visual perception principles, review presentations or take a class to further enhance your dashboard authoring expertise, here are a couple design tips to keep in mind.

1. Consider Your Audience

  • Ask how a dashboard will be used and design for next step actions. 
  • What information does the reader need to be successful?
  • How much detail does the reader need?
  • What action can be taken and how?
  • How are exceptions or insights that need action highlighted?
  • What learned or cultural assumptions may affect design choices?
  • What do colors mean and can they be visually interpreted?
  • Which icons are familiar?
  • Don’t forget to use color blind friendly palettes or icons. 

2. Use Best Practice Dashboard Designs

  • Good design should tell a story with data that does not become overwhelming with way too much information, clutter or noise. Limit content to fit entirely on one screen.
  • Be cognizant of audience natural textual reading tendency. Starting with the highest level of detail in the upper corner of the screen and show more detail you move down in the direction the audience is used to reading. 
  • Keep your dashboard simple with only a 3 to 5 key values, charts, or tables. Avoid putting too much information on a dashboard.
  • Remember to provide adequate context and keep related items near each other.
  • Avoid displaying “singular numbers” without any other context. Show degrees of change for quick comparisons.
  • Avoid data visualization variety for the sake of variety.
  • If detail tables are needed, place them on the bottom of the dashboard

3. Avoid Common Data Visualization Issues

  • Choose appropriate data visualizations. Don’t use charts that distort reality i.e. 3-D charts. Keep in mind that it is difficult for the human brain to interpret circular shapes. Pie charts, donut charts, gauges and other circular chart types may look pretty but they are not a data visualization best practice. 
  • Be consistent with chart scales on axes, chart dimension ordering and also the colors used for dimension values within charts.
  • Be sure to encode quantitative data nicely. Don’t exceed three or four numerals when displaying numbers. Display measures to one or two numerals left of the decimal point and scale for thousands or millions i.e. 3.4 million not 3,400,000.
  • Don’t mix levels of precision and time. Make sure that time frames are well understood.  Don’t have one chart that has last month next to filtered charts from a specific month of the year. 
  • Don’t mix big and small measures on the same scale, such as on a line or bar chart.  For example one measure can be in the millions and the other measure in the thousands.  With such a large scale, it would be difficult to see the differences of the measure that is in the thousands.
  • Don’t clutter your charts with data labels that are not needed. The values in bar charts are usually well understood without displaying the actual number.
Learning More about Best Practice Dashboard Design

To master the art of excellent dashboard design, consider learning basic Gestalt Principles of visual perception and how to clearly communicate actionable information in context. Luckily, there is a plethora of resources already widely available and sprinkled within our blogs. A few of our favorite books include:

  • Information Dashboard Design by Stephen Few
  • Show Me the Numbers by Stephen Few
  • Now You See It by Stephen Few
  • Envisioning Information by Edward Tufte
  • Advanced Presentations by Design by Andrew Abela
Advancing Your Data Savvy with Storytelling

More recently the topic of storytelling with data has been extremely popular. This is a related art of finding stories within your data and communicating them in a concise, engaging way for maximum impact in a noise-filled world.  Keep an eye out for future blogs on this fun topic.

Tasks are (still) not threads and async is not parallel

MSDN Blogs - Tue, 09/29/2015 - 09:00

Premier Developer consultant Ben Williams recently had the honor of having one of his blog posts reposted to Wintellect’s Dev Center as a guest post.  Here’s a blurb from that post, be sure to head over to Ben’s blog to check out the full technical deep-dive and download his sample WPF application.

I talk to a lot of developers who are either new to .NET or are moving from an older version to the newer platform and tools. As such I’m always trying to think of new ways to describe the nature of Tasks vs Threads and async vs parallel. Modern .NET development is steeped in the async/await model and async/await is built on the Task model. So understanding these concepts is key to long term success building apps in .NET.

In order to help visualize this I built a simple WPF application that displays a chart of an application’s activity. I want to display some of the potential variations in behavior of what appear to be a simple set of async tasks.

You can read the full text of the article here:

How to make updates to a WordPress site

MSDN Blogs - Tue, 09/29/2015 - 08:59

Students can host a basic WordPress site on Azure for free! So in this post we’ll share some common customizations you can make to WordPress so you can create an online resume or other website using WordPress on Azure!

In this post we will show you how to make the following changes to a WordPress website. This post is part of a series that provides you with all the information you need to create an online resume and student jobs at Microsoft. If you missed the rest of the series you can check it out here

  • Accessing your site dashboard
  • Changing the site theme
  • Changing the favicon
  • Changing the site title and tagline
  • Changing the site colour scheme
  • Adding a header image or background image
  • Adding your social profiles
  • Adding extra pages
  • Adding and removing widgets
  • Hacking the HTML/CSS/PHP
  • Adding plugins
  • Useful plugins
Accessing your site dashboard

When you visit the URL for your wordpress website, you can go bring up the dashboard to log in and start editing your WordPress site by adding /wp-admin to the end of your site URL. For example if your website is called then I would specify

When you specify the /wp-admin you will be prompted for your WordPress username and password

After you specify your credentials, you will be brought to the dashboard where you can start to edit your site.

You can toggle between the dashboard and the site to preview your changes using the top menu

Changing the site theme

Your theme determines the basic look and feel of your WordPress website. Obviously appearance is important when choosing a theme, but there are other factors to consider as well. For example, is the theme responsive? What is a responsive website? It’s a website that looks good on different screen sizes. Websites may be viewed on a laptop, tablet, or phone. You want to be sure any user on any screen has a great experience visiting your site. Some themes also have extra features you can leverage such as social media menus to include links to your social media accounts.

Select Appearance | Themes

You can pick one of the preinstalled themes or select Add New to search through 100s of free themes. Once you choose a theme, select Activate to make that the active theme for your site.

For this blog post we are using the theme Twenty Fifteen which is responsive and has a lot of built-in functionality.

You can also get themes off the internet and upload the zip folder to load it onto your site. You may have to pay for some of these themes, but sometimes the investment is worth it if it saves you a lot of time and looks professional. Theme Forest and Elegant Themes are third party providers of WordPress themes. Elegant Themes has a resume template.

Warning: Changing the theme will remove customizations you made to the previously applied theme, so take your time at the beginning to pick a good theme to avoid rework later

To learn more about themes visit

Changing the favicon

Have you ever noticed the tiny little icon that appears on the tabs when you view a website in your browser? That’s the favicon.

Customizing the favicon for your WordPress site is a nice detail that shows attention to detail and professionalism

Select Appearance |Customize | Side Identity | Site Icon

To learn more about favicons visit

Changing the site title and tagline

The site title and tagline are like a header and subheader for your website

Select Appearance | Customize | Side Identity | Site Title/Tagline


Changing the site colour scheme

You can customize the colors for your selected WordPress theme. You can choose from a preselected colour palette, or you can select the individual colours yourself using the color picker

Select Appearance | Customize | Colors

For more information on customizing the Twenty Fifteen theme, visit

Adding a header image or background image

The header image and background image will replace part of your colored background with an image. You can upload multiple images and WordPress can randomly load different images from your uploaded collection.

Even if you carefully try to select and crop an image so it looks perfect on your screen, when viewed on different sized screens it will be cropped differently. So make sure you pick an image that will look good no matter which part of the image is displayed.

Select Appearance | Customize | Background Image/Header Image



Adding your social profiles

One of the features of the Twenty Fifteen WordPress theme, is a social profile menu that will display icons for different social media landing pages.

To create your own social media menu complete the following steps:

  1. Select Appearance | Menu
  2. Select Create a new menu
  3. Give your menu a name
  4. Create a custom link for each of the social media channels you want to include (twitter, linked in, GitHub, etc…) WordPress will recognize the social media URL and insert the appropriate icon
  5. Select the Social Links Menu checkbox to indicate these are all links to social media.
  6. Select Save Menu to save your changes.

Select Appearance | Menus


To learn more about features in the Twenty Fifteen theme visit

Adding extra pages

You may want to have multiple pages on your website to present different information. For example for an online resume, you may want a page that lists projects you have completed.

To add a page

  1. Select Pages | Add New
  2. Give your page a title
  3. Add content to the page using the editor
  4. Select Publish to add the page to your website


You can add hyperlinks on other pages to navigate to your new page (the URL is shown in the Permalink field of your page editor) or you can just add a Widget to allow a user to navigate to all your pages

To learn more about pages visit 

Adding and Removing Widgets

Widgets allow you to add different elements to your website. For example you can add a widget that allows search, or a widget that provides the user a navigable list of your site’s pages.

Select Appearances | Widgets | Widget Area | Add a Widget

The widgets listed in the widget Area are the ones you see on your page. You can remove unwanted widgets and you can add news ones by dragging and dropping them to and from the Widget Area. Widgets listed in the Widget Area will be displayed on your website.

Can’t find the widget you want? Go to dashboard | Plugins | Add New and then search for plug ins that may provide what you need as a widget.

To learn more about widgets, visit

Hacking the HTML/CSS/PHP

If you are familiar with HTML and CSS, you can access the HTML and CSS used for your theme. This allows you to change how your site lays out content.

Warning: It is strongly suggested that you back up your files before editing. Making the wrong edit can break your site

To edit your theme and WordPress files, go to Appearance | Editor. Edit the ‘Stylesheet’ (style.css) to change the appearance of your site beyond what you can modify through the different options under cutsomize. can with ‘Customize’. You can also edit other files such as ‘Header’, ‘Footer’ or ‘Sidebar’ to change the appearance of your header, footer, or sidebar.

If you want to change the HTML and CSS for a plugin, go to Plugins | Editor. Pick the plugin you want to edit from the picker on the top right.

Editing these pages is essentially creating your own version of the Theme. You should read through the information about the structure of themes to better understand the files used to create a theme and how they affect the appearance of a website. To learn more about themes visit 

Adding plugins

At some point, as you get further into updating your website, you are likely to want to do something (for example add a table to a page to display information) and you wont’ be able to figure out how to do it with the editor

There are lots and lots of plugins you can add to a page to provide additional functionality. We have listed a few useful plugins for an online resume more.

To add a new plug

  1. Select Plugins | Add New
  2. Use keywords to search for the functionality you need. For example, if you want to display Instagram images, search for Instagram.
  3. Select the one that best suits your needs and select ‘Install Now’.

Once installed, many plugins will have additional settings that can be configured. Usually their configuration options can be found in the ‘Installed Plugins’ section of ‘Plugins’, or on the admin menu.

To learn more about plugins, visit

Useful Plugins

Here are a few WordPress plugins you may find useful if you are creating an online resume

WP Post to PDF Enhanced

WP Post to PDF Enhanced turns any of your pages or posts into a downloadable PDF. There are a large assortment of configuration and formatting options to style the PDF without having to edit your content.

To learn more, visit

WP Code Prettify

By default, WordPress treats all text as prose, so f you try to display code on the page it likely won’t appear the way you want it. Using WP Code Prettify, you can style any of your code  with color coding and indentation so it is easier to read.

To learn more, visit

WordPress SEO by Yoast

When a recruiter or manager searches for your name on a search engine, you want them to find your tailored online resume so they see you portrayed professionally. WordPress SEO by Yoast is a plugin that will help you with SEO or ‘Search Engine Optimization’. The plugin helps your posts adhere to content guidelines set forth by search engines.

To learn more, visit

WP Super Cache

By default, everyone who visits your page causes WordPress to generate web pages on the server from PHP. This consumes processor time and slows down your site. WP Super Cache serves static HTML copies of your web pages, which are less costly than generating from PHP. This will result in improved performance of your site

To learn more, visit


By default, WordPress’s WYSIWYG editor doesn’t support tables. Using TablePress, you can easily add some nifty looking tables.

To learn more, visit

How to import data from a Teradata database into Excel 2013 using LDAP authentication

MSDN Blogs - Tue, 09/29/2015 - 07:54

Problem: Teradata can accepts authentication of different types. Teradata can authentication user credentials from local accounts, LDAP, or Active Directory. Local account is probably the easiest to create, but hard to manage. If there are hundreds or thousands of users who need access to Teradata database, the local account method is very difficult to manage for the DBA.

The alternative is to use LDAP authentication. The problem with Teradata LDAP authentication is, it is difficult to import data into Excel. Teradata provider has a connection string property called Authentication Mechanism. This property needs to be set to a value of LDAP if the client provides a LDAP authentication user name and password.

If you create an ODBC data source, there is no option to set this connection property. If you use Excel Microsoft Query or the new Power Query, there is also not GUI you can set this property.

The only option I can find is to use PowerPivot in Excel 2013. If you do not see the PowerPivot tab in the Excel ribbon, follow

The steps are, click on PowerPivot icon, click on the Manage icon, then click on From Other Sources icon, you can choose Teradata, then click Next

In the screen shot below, you can click on Advanced button, then choose the Providers to get the .NET Data Provider for Teradata. Now you can set the Authentication Mechanism to a value of LDAP.

The trust relationship between this workstation and the primary domain failed, what does this mean?

MSDN Blogs - Tue, 09/29/2015 - 07:00

Just like users, machines have domain accounts. And just like user accounts, machine accounts have passwords. And just like user account passwords, machine account passwords expire (by default, every 30 days). Now, you don't normally notice any of this because machines automatically change their machine account passwords before they expire.

Well, you notice it when something gets messed up.

One way you can trigger a password mismatch is to roll back a VM past a password change point. The machine will roll back to using the old password, which is not the correct password any more.

Another way you can run into this is by leaving a machine off the network for a few months. The machine password on the domain will expire, and the machine will be locked out of the domain.

If you get into this state, the standard solution is to leave the domain, and then rejoin it.

Bonus reading: How to disable automatic machine account password changes. The article also describes why machine account passwords expire in the first place.

Get Thee, Developer, to Windows 10

MSDN Blogs - Tue, 09/29/2015 - 06:39

How many Windows 8/8.1 apps have you already written?  A bunch, a couple, one?  Great!  Now comes the hard question.  How many have you migrated to Windows 10 Universal Windows Platform (UWP)?  You should know that these are all really great questions, especially the last one.  Why?  Yet another great question.  Right now, the heaviest user of Apps (YOUR Apps) are Windows 10 users.  Don’t believe me.  Read my last blog on Application Insights, add metrics to your app and see what devices and Windows versions are using your app.  In just the few short months since Windows 10 was released it has the highest new downloads and it’s quickly shifting to the highest use.  It’s doing that for several reasons for this, along with some warnings about doing nothing about this mass migration.

More New Customers

First is the awesome adoption of Windows 10 and it’s not just Windows 8.x users upgrading, so are lots of Windows 7 users that previously had no access to your apps.  That means lots of new customers that had not (and could not have), previously discovered your great apps.  Those new users are looking for apps.  You have an opportunity you should not miss.

Windows 10  Screams App!

Windows 10 more than any other Windows really makes Apps rock!  Apps can do so much more and behave in such a wonderful way it just screams to use Apps. My opinion is that Apps are just easier to get, easier to use, run faster and are more useful in Windows 10 for lots of reasons.  The store is more easily accessible, the apps work more like you expect them to and apps play nice with other apps and Windows.  Windows 10 encourages users to download Apps.  I don’t know what the actual stats are but I would not be surprised if Windows 10 users download and, just as importantly, use more apps than other Windows versions.

Get Thee There Now

There are some steps you can take to move to Windows 10.  I learned this from personal experience.  The first thing you need to do is try ALL your apps in Windows 10 as they currently are.  Microsoft has done a remarkable job of providing backward compatibility so your apps written for Windows 8 or 8.1 just work.  However, there some exceptions.  For example, I found that the TimePicker control in an App I wrote for Windows 8.1 had problems with a binding in the ClockIdentifier property and would crash with a XAML exception in Windows 10.  It was a minor thing that took only a minute to fix but it prevented users from getting a properly good experience in Windows 10.  Second, convert your app to a UWP app for Windows 10.  There are sooo many cool things you can do in Windows 10 that porting your apps just gets you lots of big wins.  First, your Windows 8.1 App will be easy to port, using all the great Adaptive UI features, to Windows 10 Mobile users.  That adds millions more potential customers for very little work.

You Need To:

  1. Check that your existing apps work in Windows 10
  2. Create Windows 10 versions of your App (real easy)
  3. Add Cool Windows 10 features to your app like Cortana, Ink, Adaptive UI, etc…
  4. Get your UWP app onto Windows 10 Mobile

Happy Apping!


Subscribe to Randy Riness @ SPSCC aggregator
Drupal 7 Appliance - Powered by TurnKey Linux