Philip Richardson

The Cloud: Iacta alea est

Marketing: Subvert and Profit

clock December 30, 2007 23:22 by author philip

I discovered this interesting site: Subvert and Profit. They essentially pay people to increase the rank of stories on Digg and StumpleUpon. Here's how it works:

  1. You pay Subvert and Profit some $$ to pimp your story on Digg
  2. Subvert and Profit then tells it's members to Digg your story.
  3. Members get paid for Digging the story and naturally Subvert and Profit take a cut.
  4. Your story on Digg is now on the home page. You now get a bunch of legitimate hits. Given the massive reach of a site like Digg this can give your website campaign a serious boost.

 

Subvert and Profit is nothing more than the 21st century 'rent a crowd'. Like all forms of broad advertising it still needs to be backed up with the fundamentals (call to action, value proposition etc etc).

I'm fascinated by this crowdsourcing approach as I am with other services like Amazon's Mechanical Turk.

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


New Years Preparations

clock December 30, 2007 23:08 by author philip

New Years Eve is almost upon us. For many this means Champagne or other sparkling wine. If you are in the US your best 'value for money' bet is Nicolas Feuillatte Brut for $30. It's a much better wine that this contemporaries: Moet's White Star and Veuve Clicquot which run at $36-$38 a bottle. If you want to go cheaper my suggestion is the Roederer Estate Brut (it's a Californian/French operation) which is significantly cheaper at $14.

If you feel the need to spend more this is where things get tricky. You are now faced with the decision: Vintage or Non-Vintage. Vintage Champagne will have a year clearly printed on label while the others will not. I rarely spend decent $$ on Champagne for one primary reason: most people don't appreciate it. Unless you know who is going to drink your $200 bottle of Bollinger it isn't worth opening it.

When buying 'sparkling plonk' always go cheap. The cheapest you can find. If you aren't buying good Champagne - then save $$. Champagne isn't like wine: telling the difference between $5 plonk and $10 plonk is almost impossible (sure some people will argue but trust me).

I won't start up about Sparkling Red wine. Everyone should try it at least once. However please don't inflict it upon unsuspecting guests. It's just not polite.

Here is a tip to enhance your sparkling plonk. Try and avoid doing this with good Champagne (which should be served unadulterated). Take a sugar cube (or equivalent amount of sugar) and drop it in an empty Champagne flute. Add a drop of Angustura bitters and half a shot of Vodka. Now fill the flute with sparkling wine. This will give your plonk a great kick and some decent flavour.

Finally. Flutes. If you serve Champagne in anything buy flutes you are a barbarian. Why don't you go and drink straight from the beer keg. If your guests are drunken fools (often the case in my house) then go for plastic flutes - but never plastic cups. You stopped drinking wine out of coffee mugs in university. Isn't it time to start drinking Champagne from flutes? BTW Some people also like Champagne Coupes. I've never really liked them as them always seem a bit dated. But these are vastly superior to drinking from a plastic cup.

Remember the last words of John Maynard Keyes: "I should have drunk more Champagne."

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


RSS Feed Title and Description

clock December 29, 2007 14:28 by author philip

David Yack has some great advice on ensuring that your RSS feed has a relatively unique title. I share his frustration with the scores of poorly named CRM blogs out there...

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Part 4: ASP.NET Applications on the CRM Server

clock December 25, 2007 11:47 by author philip

 

Refer: Part 1, Part 2, Part 2b, Part 3

In CRM 3.0 if you wanted to run an ASP.NET application on the same server as CRM (by CRM I mean the Web/App server) you needed to use your own application pool. This apps would then connect to CRM like an external application (see Part 3) if they needed to read/write data in CRM. For credentials these apps would simply use Integrated Windows Authentication - since a majority of customers used this configuration.

With the introduction of Internet Facing Deployment (IFD) which uses Forms Authentication for your Active Directory Credentials - this now means that developers cannot rely on Integrated Windows Authentication for their applications. It's important to recognize that all partner hosted customers will use IFD and most on-premise customers will configure their systems to use IFD + Windows Auth. As developers you must always consider IFD as a primary usage pattern for your applications.

Since IFD uses a Forms Authentication technology to collect your Active Directory credentials your own apps are faced with a problem. You can't use Integrated Windows Auth (as your app might be running outside the firewall where this auth type becomes very 'fragile') and you don't want to have to prompt the user for their credentials.

To cater for this situation we have provided a special class in the Microsoft.Sdk.dll called CrmImpersonator. This class allows an app which runs inside our context to use the credentials of the logged on user. When designing an app which runs on the CRM server you will need to observe some specific code patterns.

Here is the basic ASP.NET code behind which will create an new Lead when it opens and display the GUID of the record it created. The aspx and aspx.cs files will be placed on the CRM server in a folder called ISV. In a later post I'll cover off exactly how to deploy the solution. The Microsoft.Crm.Sdk and Microsoft.Crm.SdkTypeProxy namespaces derive from two DLLs of the same name. These DLLs are always present with CRM so you don't need to package them with your solution. You'll want to reference them in your project however and you'll find the DLLs in the \Server\GAC folder of your install files.

 

 

Let's examine the anatomy of this code pattern:

  • You need to possess some pre-requisites: Page.Context, Organization Name and if you are using the Metadata Service you'll also need the MetadataService URL.
  • All the CRM code is wrapped in in the using(new CrmImpersonator()) { } block.
  • The CrmAuthenticationToken was created using the static method ExtractCrmAuthenticationToken of the CrmAuthenticationToken class.
  • There is no need to use the Discovery Service. This code can only access the CRM Server which the code is running on.
  • You must manually set the owner of objects using the CalledId property of the CrmAuthenticationToken.

I have a helper class which I use which provides me with the pre-requisites. I'll be cleaning this up in the next few weeks and I'll publish it for download and use (with a relatively free license).

In the next part we will examine using this technique in the offline client and in a later post we will examine the deployment considerations for this type of app.

Currently rated 5.0 by 2 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Call Doctor House!

clock December 24, 2007 21:44 by author philip

Well... I need the computer version of Doctor House. My Dell desktop at home (serving as my always on media center) started omitting a strange burning smell. It was promptly powered down and the enclosure removed. With no visible smoke and no clear source to the 'smell' I powered it on again. Now Windows won't boot (some crazy failure to load - even in Safe Mode). The power supply is a prime candidate for burning smells so I removed it and disassembled it. Inside was nothing unusual - which is bad news - since replacing a power supply is cheap and easy. I powered on the machine and got the burning again (Windows is still kaput). I also removed all peripheral cards (TV tuner, modem, GPU) and ensured it wasn't one of those. My current theory is that the CPU caused the issue. I removed the monstrous head sink and there was un-generous amount of heat sink goo and there was some dust directly on the CPU. My theory: Dust on the heat sink is flash burning and causing the smell.

My wife did suggest: "Why don't you just take it to those geeks?". The thought of taking my computer to a computer repair service seemed as futile as visiting a dentist in the fifteenth century. Don't believe me .... believe the main stream media (BTW: I love the guy who wants to charge $2000 to put the computer in some 'clean room').

So yeah - if I could send my computer to Doctor House and have four highly trained technicians work non-stop diagnosing my computer at zero cost I would.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Missing... Again?!?!

clock December 23, 2007 23:16 by author philip

It looks like the British Government can't help but loose personal data. This time it's names and addresses of 160,000 children. In most of these cases the incidents are has a result of poor data handling practices. I've never been a believer in over-securing data inside the firewall. I agree that sometimes you do need to encrypt transactional data - but this is the exception rather than the rule. However once your data leaves the firewall (typically while in transport) to a third party then encryption is essential.

The challenge faced by organizations is how to actually manage the operational aspect of the encryption. Since CRM systems are 'ripe targets' for theft of personal data - lets examine a few techniques you might want to consider.

Scenario: The Lost Laptop

This is the easiest situation to secure yourself against. Consider using a whole disk encryption technology (like Bitlocker in Windows Vista). There are also a number of proven third party solutions out there. Whole disk encryption secures all the information on the laptop - so it doesn't matter where the personal info is (email, spreadsheets, offline databases etc etc). There is no excuse nowadays for having personal information on an unencrypted laptop. No excuses.

Scenario: Man in the Middle

Many companies use the Internet to send files between their office locations. If you send files over unencrypted channels you are at risk to Man in the Middle attacks. Remember that Internet email is insanely vulnerable to this type of attack. I suggest using a secure filesharing website on your extranet to facilitate filesharing. An Internet facing SharePoint using HTTPS is a great example of this. Using such a share is also a good way of sending files to your business partners - however you can't be sure what they will do with them.

Scenario: Outside the Firewall

Assuming you can get your file to a third party safely (https or encrypted sneaker net) then you are faced with significant operational challenge of overseeing the security behaviors of a third party organization. Many organizations simply throw their hands in the air and say 'urh - it's too hard!'. This is no silver bullet when solving this problem - however consider the following:

  • Use Information Rights Management (IRM) in Office Docs. Give your third parties some limited credentials so they can view/edit documents secured in this fashion.
  • Contractual obligations regarding IT and Physical Security. If your third parties as a good (or better) than you and your transport is secure then you are good shape. These types of arrangements are becoming increasingly popular.
  • Give third parties access to your network. Careful here as they might be downloading data onto unsecured PCs.

Before implementing any security strategy you should consult with your IT and Physical security experts in your organization. You should also try and calculate a 'cost' of personal data. This is very helpful when 're-educating' employees. Your people will be less likely to email CDs of customer lists when they realize they could be worth $500,000 each.

 

I always view the 'goal' of protecting personal information with the above things in mine: to give your people the tools to do the right thing (don't forget to actually tell them about those tools) and make them truly understand why they need to do it.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Strange Package

clock December 23, 2007 18:41 by author philip

I normally shun the practice of reproducing internal Microsoft emails. However in this case it's acceptable (or at the very least it's amusing).

I'll find some volunteers in January and we'll taste test it.

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

From: Philip Richardson
Sent: Sunday, December 23, 2007 6:20 PM
To: [Our Whole Team]
Subject: Strange Package
Importance: Low

I wandered into the office last Wednesday and found a fedex package on my desk. Inside was some coffee. Bizarre I thought. Some coffee company has sent me coffee. No note or anything attached. This stuff does happen to bloggers occasionally (and I have blogged a little about coffee this year). The packaging seemed kind of ordinary so I just threw it in my drawer are left. Today I went back to the office to drop something off and decided to grab the coffee. I thought I’d throw it in the blade grinder at home and just use it for french press. I then noticed a strange cat/weasel creature on the box. I then read the packaging a little closer.

It turns out that it is freaking civet cat coffee. So I have a ¼ pound of ‘bold’ and a ¼ pound of ‘medium’ from http://www.luwakcoffee.com. Price: $65 each. Yes – that’s right it’s $260 per pound. In Sydney you pay $40 USD for one cappuccino made with this stuff.

For those unfamiliar with this ‘delicacy’: It’s coffee beans salvaged from the ‘dung’ of civet cats (also deer in Vietnam) who live in the coffee plantation. Supposedly the partial digestion of the bean ‘enhances’ the flavor.

I was tempted to throw it into the fully auto machine in the kitchen and not tell anyone but it seems like a waste (and possibly an insane HR violation). If any other coffee connoisseurs out there in the team are interested we can figure out what to do with it in January.

Currently rated 4.0 by 1 people

  • Currently 4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


CRM 4.0 German

clock December 21, 2007 14:26 by author philip

As mentioned in the press release the non-english languages are trickling out of our 'manufacturing' process. German is now available. Use the same links which I provided in my other post - but use the Choose Language drop down box to select alternative languages.

image

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Switching Between IFD and Windows

clock December 20, 2007 15:05 by author philip

This is Part 2b of a Series of posts. Refer Part 1 and Part 2.

If you configured your development environment as per my previous post - you'll notice that if you log into the server using the IP (192.168.1.1) or the Host file configured URL (eg.http://contoso.crm.philiprichardson.org) that you will be prompted for Windows Credentials.

I use a neat little reg key on the CRM Server to change the internal subnet of the IFD setting. CRM looks at the IP of the incoming request and if this is in the internal range (this reg key) then it gives you a 'Windows experience'. If the IP is external it gives you an 'IFD experience'.

So if my client is configured with an IP of 192.168.1.2 (Subnet: 255.255.255.0).

  • When the Internal range is 192.168.1.1-255.255.255.0 you will get a Windows Experience. This is the value we provided in our config.xml when we installed CRM.
  • When the Internal range is 192.168.1.1-255.255.255.255 you will get an IFD Experience. This is because my client on the host OS has an IP of 192.168.1.2 (Subnet: 255.255.255.0) is outside the internal range.

 

Here are the two Reg Key Modifications. Note that this is supported (see the Implementation Guide (IG) for more details).

IFD Experience:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM]
"IfdInternalNetworkAddress"="192.168.1.1-255.255.255.255"

Windows Experience:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSCRM]
"IfdInternalNetworkAddress"="192.168.1.1-255.255.255.0"

If you have your own network config - then you will need to work out the network addresses and subnet masks on your own. I strongly suggest you read the IG and the IFD Setup Doc. If you environment is on your network you may want to consult with your network administrator to figure out the right IP ranges.

Update: Fixed typos in the Subnet masks.

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Installing CRM 4.0 without Internet Access

clock December 20, 2007 12:30 by author philip

if you are installing CRM 4.0 on a machine without Internet access (eg. a VPC running only on a Loopback Adapter) you might run into some problems when CRM tries to download pre-requisite packages. Our DVD version (not out yet - it's being 'manufactured') ships with these prerequisites but the downloads do not.

The simplest way is to install each of the Pre-Req's manually. The best place to search for these is download.microsoft.com. I'll refrain from posting links as these redistributable packages are always being updated.

The Visual C++ Redistributable Package presents us with a slightly different challenge. The package is unable to detect it's installed state so CRM always installs it. So we need to create a Redist folder, subfolders for i386/amd64, a VCRedist folder and then place the VC++ install files there. Your full folder structure should look like this:

  • \Redist\i386\VCRedist\vcredist_x86.exe
  • \Redist\i386\VCRedist\vcredist_x64.exe
  • \Redist\amd64\VCRedist\vcredist_x64.exe
  • \Server\i386\SetupServer.exe
  • \Server\amd64\SetupServer.exe
  • \Client\SetupClient.exe
  • \DMWizard\SetupDMClient.exe
  • \Exchange\i386\setupexchange.exe
  • \Exchange\amd64\setupexchange.exe

I added this setup.exes to the list to show the folder structure for the Server, Client, DM and Router (the Exchange folder). Note that the Redist folder is a peer to the Server and Client.

Update: Lots of people have been asking about the 'Microsoft Application Error Reporting' prerequisite. You'll find it in the CRM installer (\Server\DW).

Currently rated 4.0 by 1 people

  • Currently 4/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


CRM 4.0 Downloads

clock December 19, 2007 23:45 by author philip

Note: This post will be periodically updated with additional download links.

The official downloads for CRM 4.0 are now available from the CRM section of download.microsoft.com. Use the language selector drop down box on the download page to select the appropriate language.

Documentation:


Server:

 

Client:

Language Packs:

Sample Data and Demos:

 

License Keys:

  • The Server Install requires a license key. Trial license keys have been provided on this page.
  • Information regarding the availability of non-trial keys will be forthcoming from our marketing team.
  • IMPORTANT! You may use the Microsoft Dynamics CRM 4.0 editions with the respective License Keys for a maximum of 90 days. Each edition may be converted to a full use version by applying a commercial license key in the Microsoft CRM License Manager. A re-install of the software is not required. You will need to convert the license key to a commercial license before the 90-day period ends, as the 90 day period cannot be extended, and Users will not be warned of the impending expiration. Should expiration occur, access can be regained by applying a commercial license key.

Build Number:

  • The final build number was 4.0.7333.3
  • If you were involved in the pre-release programs please make sure that you clean up all your old DLLs for older versions.
  • You will want to recompile any code against the RTM Microsoft.Crm.Sdk.dll and Microsoft.Crm.SdkTypeProxy.dll. These two assemblies can be found in the GAC folder of the Server Install.
  • If you use a static copy of the Discovery Service (like I do) you should also grab a new copy of this. Remember that the WSDL for the discovery service is interchangeable between WLID, Windows and IFD authentication end-points.

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


What's new in CRM 4.0

clock December 18, 2007 23:16 by author philip

Here is a handy What's New document on Microsoft.com for Microsoft Dynamics CRM 4.0.

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


C# has GoTo

clock December 17, 2007 18:57 by author philip

I never would have guessed: C# has GoTo!

I'm now getting flash backs to my childhood programming with Applesoft BASIC (and it's bizarre twisted cousin: Integer BASIC).

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Inside CRM's Top 20 CRM Blogs

clock December 17, 2007 17:58 by author philip

I was lucky enough to make Inside CRM's Top 20 CRM Blogs (at #4). It's also the first time I've seen the words "erudite" and "Australian" in the same sentence.

Update 1: Inside CRM have kindly provided me with 'flair' for the blog. I will need to make more of a 'professional' effort on the blog.

Update 2: It seems that I've blogged way to much about coffee lately. I stopped by office today (after a day of diversity training for managers) and found a small shipment of coffee beans sent to my office. For those longer term subscribers to the blog I have good news: the creature will arrive soon and the household ban on alcohol will soon be lifted. With no hardcore dinners out for the next 12 months - I intend to hit the home mixology with a vengeance (not irresponsible kind - as it's about the taste not the booze).

Be the first to rate this post

  • Currently 0/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


CRM 4.0

clock December 17, 2007 17:31 by author philip

Most readers by now have probably seen the news: Microsoft Releases Next Generation CRM Solution for On-Premise and On-Demand Deployment. The press release (see previous link) has all the appropriate high level information. You'll now see me shift my naming convention from Titan (the project codename) to CRM 4.0 (the name of the actual product).

This is a good time to de-mystify some of the terms used recently in some of the news coverage and other blogs. RTM means Release to Manufacturing. It does not mean 'release to customers/partners' aka. General Availability (GA). It simply means that the core R&D people have done their jobs - not that you can go buy the product. Now there are plenty more people down the chain who have important jobs to. The core team signed off on the product's functionality last Friday: essentially saying - we are done building features and fixing bugs. At the moment the packages (the various files which you install the product from) are undergoing intensive verification and testing. Once we are happy with the packages themselves we will then activate the various download sites (which takes a bit of time to go through the various checks and balances).

Think of it this way: BMW is making a new car. Let's call it the 4 series. They do all the design, crash testing, racetrack performance analysis and then they create the first 'batch'. Seeing the first cars roll off the assembly line is a great achievement for the team - so they get a little drunk and send out a few emails saying they have completed the 4 series. Now unfortunately some customers hear about this and they really want to buy a 4 series (because it's really cool). They walk into their local BMW dealer the next day and say: "Where are all the 4 series". We are still in the process of getting those 'new cars' to you.

If you are a customer/partner waiting for the bits as the press release says the International English version "will be available within the next seven days to new and existing partners and customers". As soon as the downloads are live I'll post a link with the appropriate information.

Currently rated 5.0 by 1 people

  • Currently 5/5 Stars.
  • 1
  • 2
  • 3
  • 4
  • 5


Sign in

Feed

 RSS Feed

Powered by FeedBurner

Inside CRM Top 20 Bloggers

I'm at the #4 spot.

Contact

Work Email: philipri@microsoft.com

Personal Email: philip@philiprichardson.org

View Philip Richardson's profile on LinkedIn

Basecamp project management and collaboration

Join WebHost4Life.com

Categories


Search

Archive

Calendar

<<  July 2008  >>
SuMoTuWeThFrSa
293012345
6789101112
13141516171819
20212223242526
272829303112
3456789

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway. All postings and code samples are provided 'AS IS' with no warranties, and confers no rights.

© Copyright 2008