Monday, March 28, 2011

The Poll is Back. Vote Frequently, Vote Often and Vote For Me ;)

After going offline due to script abuse, the poll is back. Vote frequently, vote often and vote for me ;)


Monday, March 21, 2011

Five-Minute Integration Between Dynamics CRM and LinkedIn

I recently had a client ask about integration between Dynamics CRM and LinkedIn. If you are not familiar with LinkedIn ( ) it is ‘Facebook for business contacts’. Digging around I found this excellent post by fellow CRM MVP and all-round decent bloke Matt Wittemann.

The problem was this post was almost three years old and designed for version 4.0. Would it work with CRM 2011? The great news is not only does it work for CRM 2011, it is so much easier than it was for CRM 4.0.

How To Set Up The Integration

The first thing you need to do is take Matt’s html code and save it to an html file (I just pasted it into Notepad and did a ‘Save As…’).

Now we go to CRM and go to Settings-Customizations-Customize The System-Web Resources and click the new button.


We give our web resource a name and specify the type as Web Page. Browse to the location where you saved your html file, select it and hit the save button.


Now go to the Lead entity forms area (Settings-Customizations-Customize The Solution-Entities-Lead-Forms) and add the web resource to the Main Form. to do this open up the Main Form and click the Insert tab then select Web Resource.


Save, Publish and you are done!

The end result should be a window on the Lead form which, when you change the Lead record’s company, adjusts the LinkedIn window to show you who you know that works there and a link to show everyone else that works there that you may have access to. You may see a warning message about mixed content. This is because in CRM Online we use a secure html connection (https) but the script is using plain old http. Hopefully someone more adept than me will read this blog and comment how to get rid of this minor inconvenience.


So there it is, no code, no messing about with ISV folders and a solution that works on premise or in the cloud (in this case I used the Lost In Redmond 30-day cloud trial system I had used in my previous blog post).

Wednesday, March 16, 2011

I Made The Nomination Cut! Now Its Time to Vote

Thank you for all of you that clicked the link and e-mailed. I made the nomination cut! Now its voting time. Here is the link.


Click on it, tick my name and click the vote button. Every time someone votes for me an angel gets its wings ;)

Tuesday, March 15, 2011

Interactive Fiction Games On The Ultimate Development Platform: Dynamics CRM 2011

OK so I may be exaggerating a little about Dynamics CRM being the ultimate development platform but for those that recall my ‘hangman’ blog:

I set a challenge for the readers to use dialogs to create an Infocom-like game (we used to call them ‘Adventure Games’ in the UK). Apparently the Wikipedia name for them is Interactive Fiction. For those too young to remember these gems, this was in the days when computers had a keyboard, no mouse and no graphics. The screen (possibly green or yellow) would describe your situation and you would type in commands. Occasionally you chanced across a command the computer understood and something happened. Part of the fun was discovering the criminally limited vocabulary of the game and the other part was trying to match wits the programmer and solve the game.

Classic titles include the Zork series, ‘The Hulk’, ‘Hitch-Hikers Guide to the Galaxy’, ‘The Hobbit’, ‘Lord of the Rings’ and the less serious ‘Bored of the Rings’.

The last generation of interactive fiction games were probably MUDs, the pre-cursor to MMORPGs.

Given the post was about five months ago I thought it was time to step up and do my homework.

The Result: An Interactive Fiction Game Using Dynamics CRM 2011 Dialogs


It really works. There are actions to perform (Goto, Get, Use, Help and Inventory) and a text box to apply the actions to e.g. Goto 33. As the protagonist you move around the Microsoft Campus at Redmond (well five buildings of it) trying to find a way back to civilisation (or, in this case, Seattle).

The Entity Structure

The game has two entities: players and locations. Locations are, as expected, the places you can go in the game.


Player records are the launch pad for the dialog (a dialog has to be run from a record) and stores the current location of the player and their inventory.


The rest is dialogs.

The Dialogs


Each action gets its own dialog (the main reason for this is to give the asynchronous update step a chance to update your player record while you read the text). “Lost in Redmond” is the beginning dialog that launches the game.


Similarly, “End Game” is the end.


The main ‘screen’ is “The Game”.


This displays the current location and requests the user enter an action and an object to apply it to. “Goto” applies to a building number, “Get” and “Use” apply to an physical object in the game and “Inventory” and “Help” do not use an object.

“Help” simply displays a text message on how the game works.


“Inventory” uses the values on the player record, constructs a text string, stores it in a variable on the dialog and then displays it.


This is one use for variables. They allow you to store values and manipulate them via the “Assign Value” step.

The input variables are exclusively for child dialogs. “Goto” uses the input variable to pass through the location object from “The Game” dialog.


“Get” and “Use” also use input variables to work out what they being applied to and what to do.



So When Will This Excellent Game Be Available On Marketplace?

While I have packaged the dialogs and entities into a solution, there is a shortcoming with solutions. This being you cannot add records to a solution so the location records cannot be added in and be auto-installed on applying the solution. I have thought of including an on-demand workflow which could be manually run to create the locations but then there is the complication of linking the new records to the dialogs. Perhaps solutions will be expanded in the future to allow for this functionality.

Until then, if anyone can think of a way to package in the location files, let me know and we will make a fortune packaging text-based adventures to bored CRM users.

Microsoft Dynamics Top 100 Most Influential Dynamics People

If you consider me influential (and let's face it if you're here there is a fair chance). Feel free to click this link to get me in the running for the top 100 ;)

Friday, March 11, 2011

Software Advice’s Interviews With Brad Wilson

Lauren Carlson of Software Advice e-mailed me regarding a set of seven videos they had put together with Brad Wilson. She asked if I would be interested in doing a write-up, so here it is.

Brad Wilson is the Microsoft’s GM for Dynamics CRM so understanding where his focus is, gives clues to the future of the product.

The seven, five-minute videos cover the following topics:

Now while the topics do sound juicy, do not expect any ground-breaking exclusive nuggets of gold from Brad. He is seasoned, media-trained and every answer will come back to the key messages that Microsoft want to push e.g. “it is about delivering value, not being the cheapest”. You are not going to hear hard numbers for any of the above topics.

This being said, Brad does give us the following:

  • His thoughts on how the CRM market has evolved over the last 15 years
  • Microsoft is bordering on obsessed to getting people using their products via the cloud
  • How the partner model is undergoing a revolution and where the new opportunities are (hint: partners need to deliver more value than pressing the ‘next’ button on a DVD install)
  • Brad tells us why Dynamics CRM is not sold in modules but as one big package

The interesting one for me is Microsoft’s focus on getting people to use the cloud. Selling upgrades for on premise software is often criticised as a way of gouging money for arguably little gain. Microsoft being a significant player in this game also receives this criticism. Going to the cloud completely changes this model with the income coming in the form of a monthly per-user fee. Software companies cannot, as some cynics suggest, boost the bottom line by releasing a new ‘version’ if they are in the cloud. The cost of upgrades is effectively built in to the monthly fee so this fee has to be right.

It is interesting times for Microsoft and, while Microsoft are quick to claim they have been providing cloud services for over ten years, there is a difference to providing cloud services and having them as a fundamental part of your revenue stream. Just as with the partners who sell Microsoft’s products, Microsoft is undergoing a revolution and the new opportunities lie very far away from familiar ground.

Tuesday, March 1, 2011

How Salesforce Can Win the Online Battle

With the introduction of Dynamics CRM as an online offering on the international stage, Salesforce now has a viable competitor, raiding their territory, who they need to repel. How can Salesforce position themselves such that they have an unassailable position?

Porter’s Generic Strategies for Competitive Advantage

Professor Michael Porter ( is a thought leader on competitive strategies for organisations who pioneered the concept of competitive strategy during the eighties. One of Porter’s concepts was that of generic strategies ( Here is the obligatory two-by-two matrix.

Essentially, Porter says you can either go for a specific segment of the market or you can try and attract everyone. If you try and attract everyone you can distinguish yourself by having the lowest cost (and therefore the lowest sustainable price) or you can offer something none of your competitors do, such as excellent customer service.

Competitive Advantage in the Car Industry

To understand how the theory works, let us look at the car industry. A good example of a segmentation strategy is the Bugatti Veyron ( The car is the most expensive modern car in the world and the fastest street-legal production vehicle in the world. There are not many people that can afford the $1.6m price tag, so this is not a broad market play. Also, of those that can afford it, there is a specific market segment interested in fast cars. Arguably, at the other end of the spectrum, is the Tata Nano ( ). This is the most inexpensive car in the world but gives millions of Indians the opportunity to own a car. If the car has mass-appeal, it could be labelled as a cost leadership strategy. If the car has appeal only to a small niche, it is a segmentation strategy.

A more conventional example of a cost leadership strategy would be something like Kia. Kia cars have broad market appeal but are offered at a compelling price, presumably because they are a cost leader. Toyota’s hybrid cars can also be argued as a differentiation strategy. While a little pricier than Kia, they still have broad market appeal and have the unique proposition of using a hybrid engine. Another differentiation Toyota have is their brand and the values associated to it. While Toyota has had their problems, it is still one of the world’s strongest brands ( and differentiates it from their competitors.

So Where Does Salesforce Fit?

To be competitive, Salesforce needs to find the strategy that fits them and the industry.

Cost leadership: Microsoft has come in with very aggressive pricing. They also claim that they can share the costs of the online version across complimentary technologies such as Office 365 and their on-premise version ( Given Salesforce is triple the price for similar functionality and yet barely makes double-digit profits, I do not believe cost leadership is attainable. Dynamics CRM is owning the cost leadership position.

Differentiation strategy: Salesforce likes to think they have a sustainable differentiation with products like Chatter and their ‘fun’ brand but the key is it must be a differentiation that matters to the customer. Fun is meaningless to the customer. Being ‘social’ has some resonance but when the surface is scratched, there is nothing especially social about Salesforce. Chatter is an internal collaboration tool. Customers cannot access it. Sure it is easy to consume but, with similar products like Sonoma’s Vibe, any differentiation resulting from it is rapidly eroding away. If Salesforce is a Kia, Dynamics CRM needs to be a Tata Nano to justify the price differential. The fact is, Dynamics CRM is not a Nano.

Functional differences are, generally, easily copied. There is the possibility of a complimentary offering to differentiate e.g. superior customer service but this has not yet revealed itself if it is on the cards.

Segmentation strategy: In my opinion this is the best option for Salesforce. Just as Pivotal focuses on medium-large organisations with very complex work process requirements, Salesforce also needs to find its ‘niche’ to justify the premium price. What this niche will be is not obvious.


Microsoft has made it clear that they wish to own the cost leadership position. This leaves one of two options for Salesforce. Differentiate its offering or focus on a specific market segment (or both). Either option is profitable but, if Salesforce believe they can continue to prosper with general appeal and no obvious difference in their service, their territory will be slowly captured until they are removed from the map.