All Posts by xrmcoaches

Announcing the Dynamics CRM Developer Bootcamp in June.

TrainingCourse description

If you are looking to get started with Dynamics CRM development, and are looking for an instructor-led, hands-on workshop, then let me introduce you to the Dynamics CRM Developer Bootcamp.

This course provides an introduction to the technologies, tools, and processes required to turn a .NET developer into a Microsoft Dynamics CRM developer. In–depth coverage is provided for both client and platform technologies through the use of real–world lab scenarios. Students will also be exposed to the most current third–party tools to aid them in their development efforts and finally, each student will receive a collection of templates and code–libraries to jump–start their development efforts.

Is this course for me?

If you are a developer who is just starting your journey into Dynamics CRM development and who needs to gain an understanding of the technologies, processes, and tools required to be a Dynamics CRM developer, then the answer is Yes!

Likewise, if you have been thrown into Dynamics CRM development (either voluntarily or kicking and screaming) and need to fortify your knowledge, then this course is also for you.

What you will learn:

The information covered is relevant to Dynamics CRM versions 2011 through 2016 (though some topics are specific to one version or the other). Here is what we cover:

  • Using the Dynamics CRM SDK with .NET to perform platform and query operations
  • How to create plugins and custom workflow activities
  • How and when to use the Dynamics CRM JavaScript object model
  • How to edit the Dynamics CRM SiteMap and the Ribbon components
  • How to create and use solutions effectively
  • You’ll also learn where to find, and how to use, the free tools available for both Dynamics CRM developers and administrators

Your instructor:

This class is taught by Mitch Milam, ten–time Microsoft Most Valuable Professional for Dynamics CRM and an independent consultant specializing in Dynamics CRM architecture, development, and training.  This is your chance to learn from someone who has been developing with Dynamics CRM on a daily basis since Dynamics CRM version 3.0.

The dates:

Monday, June 6th through Friday, June 10th.

Class starts at 8:00am CDT and will last five or six hours per day, depending on the topic. Please budget the entire day so that you have time to complete the homework assignments. Class will end around mid-day on Friday, depending on the speed of the students.


This is a developer course so you must know:

  • Visual Studio, .NET and C#
  • Have a familiarity with the Dynamics CRM product
  • Passing familiarity with JavaScript

Course format:

This is an Internet-based workshop. Classroom time and discussions will be facilitated using GotoMeeting and we will be using Dynamics CRM 2016 Online  for our development environments. This will allow for the completion of labs and homework without causing conflicts with the other students.

The investment:

The investment for a standard developer ticket is $2,995.

The standard developer ticket with an additional four hours of follow-on coaching is $3,495.

Discounts are available for multiple students and a payment plan is also available to help spread the cost.


Sign up today!


Students will also receive the following tools and resources, valued at over $500. Here is what you get:

  • Single-organization license for SnapShot! for Dynamics CRM
  • Electronic copies of my Deep Dive book series: Plugin Development, Administration, Security, and Query Strategies
  • Templates and code libraries that I used in my everyday development efforts

Trainer/Presenter Tip of the Day: Cough Drops

One of the little tricks I learned while conducting webinars, training, or presenting, is to always have cough drops (throat lozenges) with me.

I generally take one about 10-15 minutes before I start and it seems to help calm my throat and clears out my sinuses.  This in turn helps me speak better.  It also, of course, helps with coughing which happens to me when I speak too much and do not drink enough water.

Try it out yourself.

I just can’t brainstorm without a whiteboard


I’m at the office today working on some new business initiatives mainly because I have two huge whiteboards in my office (custom made by me, by the way) and it turns out that I just can’t seem to brainstorm without writing on the wall.

I don’t know if it is because I have a different energy level when I am standing, or if it the challenge of all the open and unadulterated space that flips a bit in my mind that opens the doors to creativity, or what.

If two or more people are involved, a whiteboard is almost a requirement, but can be rather limiting should one or more of them not be in the room with you (a more common situation these days, given the amount of remote work that occurs).

Back in the mid-1990’s I joined a small consultancy in San Diego and I was dumbfounded to find that they didn’t have a single whiteboard in the whole place.  Heck, I moved from Texas with two! This was a situation that was quickly remedied and I no longer had to endure thought-sessions using only a legal pad.

So this Saturday finds me in the quiet at the office huddled up with my coveted blankness bouncing ideas off the wall and waiting for something to stick as I draw a path that will be the future of my business.

Only this time, I’ll use the new Microsoft Office Lens product to record my work. We are in to 2000’s after all. Smile


Another thing that just makes me giggle: The massive multi-color erasable marker pack:


Brainstorming image courtesy of pakorn at

Working on your personal brand

This Spring I was teaching a Dynamics CRM course at Minnesota State University Moorhead and we got into a discussion of personal branding and what you [as a college student] should think about.

I realize that a lot of this could apply to others as well, so I’m reposting it here.

I wanted to complete the circle on a conversation we had in class one day regarding personal branding. Here are a few thoughts you might wish to consider as you progress in your career:

Internet Domain Name:

You should try and secure your own domain name. It should be some combination of your first, middle, and last names, such as:




Start off trying for a .com address, but those are more than likely gone. There are many other options but the most popular are .me, .name, .net, and .info.

It is not necessary to actually put up a web site at this point, you just need to keep someone else from using your name. You can actually put it to use when you create your blog (as we’ll take about in a minute).


Your Twitter handle also needs to be a variation of your name, and is possible, try and make it be the same as your domain name.


Your LinkedIn profile needs to read and look like a well–polished resume and should include a photo of yourself in a professional setting. Not on the beach drinking an adult beverage. LinkedIn profiles also need to be kept up to date so that they always reflect your current status and accomplishments. I can’t tell you how many times I have had people comment, “…on your LinkedIn profile.”


What about Facebook, you might ask? Well, and this is just a professional opinion, but I only use Facebook for my friends and family. If you would like to establish a company presence on Facebook, it is quite easy to create a Facebook Page. Again, it is on Facebook and connected to you, but also separate at the same time.


At some point you will have to have a blog – or several, if you are like me. Everyone has something to say and quite honestly, the world is a better place when people share what they know. My basic rule has always been: If it takes me more than 30 minutes to find it or create it, and if it is not of strategic value to either me (or my company) or my customer, then I’ll write something about the experience. Sometimes the articles are lengthy and take quite a while to produce, while others are just a few minutes work. Both can be valuable to someone who has run into the same issue that you did.

There are several blog engines available, but I use WordPress for all of my sites. I made this decision back in 2005–6 and I can quite honestly say that I have never regretted the decision. It is infinitely customizable and almost all of the major (and minor) web–hosting providers offer WordPress hosting.

When it comes to content, there are really two kinds of blogs: Personal and Professional. Some people combine these two and offer only a single type of content, while others keep their personal and professional lives separate. I personally started off with a single blog then split off my personal thoughts and articles and put them under a new blog that was just “me.” My main blog I just use for technical writing at this point. At some point you may need to make this decision for yourself, depending on what you have to say.

Additional Material:

I would also advise you listening the following podcasts:

Announcing my Mentoring Program

Hi Everyone,

I decided to formalize my mentoring program to hopefully open the door to more organizations. This is a process that I conduct for customers on a fairly regular basis which fills a niche and a requirement when you need assistance, but do not have the need or budget for a full-blown consulting engagement.


I often run into customers who need additional help with either an architectural issue or a project they are working on. Many times, they do not have a need for a full-blown consulting engagement, but need to have access to someone they can bounce ideas off of when they hit a roadblock or a fork-in-the-road and need help with an architectural decision.

How it Works

When you sign up for our Mentoring Program, you are actually purchasing five hours of advisory services at a discounted rate.

We typically work out a schedule of conference calls or screen-shares in blocks of 30 or 60 minutes, depending on your requirements. This can be weekly calls, bi-weekly,or as required.

Typical Scenarios

Here are a few scenarios that I have done in the past:

  • Architecture design questions
  • Skills development roadmap
  • Training program design
  • “What-if” scenarios
  • Code-reviews

For More Information

To sign-up visit our Mentoring Program page.

Thanks, Mitch

Webinar Campaigns with Click Dimensions

I have been doing a lot of webinars lately through my Teaching Tuesdays program and in doing so, I am constantly refining my processes for all of the tasks that need to get completed before, during, and after the webinar.

The Click Dimensions integration with GoToWebinar  is a huge timesaver, in this regard, so I thought I would take a few minutes and document my process in hopes that it would be helpful to anyone else doing this type of work.


There are three distinct stages to any webinar:

  • Preparation
  • Presentation
  • Follow-up

Let’s discuss each one in turn.



The first stage covers all activities leading up to the actual presentation itself. Everyone will probably have a different set of tasks, but here is what I currently do:


1. Create the Webinar in GoToMeeting.

This, of course, is the first step. Don’t forget to put it on your calendar. (yes, simple, but sometimes you get busy and forget)


2. Create a blog post announcing the webinar

3. Send a tweet pointing to the blog post.

4. Post a note on LinkedIn pointing to the blog post.

These three steps are actually handled through the same process. I use WordPress for all of my web sites and I have plugins that handle the tweet and LinkedIn post automatically.


5. Create an email template containing the announcement.

I have a standard blank email template that I just clone and insert the information into. I talk about this process in this article.


6. Send an email to the contacts in CRM who I think would be interested in attending the webinar.

I have two main subject areas (CRM and Xamarin) in my xRM Coaches CRM instance and have marketing lists for each. I just pick the appropriate list and send the email to them.


7. Webinar registration confirmation

When someone registers for the webinar, GoToWebinar will automatically send them a confirmation email.

8. Reminder blog post

Since my webinars are on Tuesdays, I create a second blog post on Friday, reminding them of Tuesday’s webinar. In most cases, this reminder post drives additional attendance. This is automatically tweeted and placed on LinkedIn.


9. GoToWebinar reminders

GoToWebinar will automatically send a reminder emails one day and one hour before the webinar, unless you change the setting.



This stage encompasses more than just conducting the webinar. There is actually a lot more to it than that:


1. Start the webinar.

In most cases, you need to start a few minutes late to accommodate stragglers. Just delay long enough to get around 25% attendance or so, then start.


2. Make sure you are recording the webinar.

I forget this one about half of the time. Put a sticky-note on your monitor and use the “what attendees see” option on the GoToWebinar control panel to verify they are seeing the correct screen and application.


3. After the webinar, save the recording to disk.

You will be prompted to save the recording. This process can take as long as 30-60 minutes, depending on the length of the recording.


4. Upload the webinar

To my YouTube Channel. Again, this will take many minutes, depending o n the recording length.  I also create a custom thumbnail by taking a screen shot of my presentation title slide and use that for the recording. This eliminates YouTube from attempting to pull a random slide out of your presentation itself.



The follow-up stage closes the loop with your webinar registrants. One of the things you need to decide is if you treat attendees (those that actually attended the webinar) different than absentees (those to registered, but never attended).

Your numbers will vary, but if you get a 50% attendance rate you should be jumping up and down with joy because that is outstanding.  Most of the time, a 25-30% attendance is the norm.


1. Create marketing lists

Click Dimensions automatically creates the following CRM records for a webinar:

  • Event
  • Event Participants.
  • Contacts (which are tied to Event Participants)

You can use the participation to create the following types of Marketing Lists:

  • Registrants
  • Attendees
  • Absentees

There may be cases where you want to give only certain information to Attendees or you have a different message for Absentees, so you might wish to create separate Marketing Lists so you can target each group individually.  The Registrants Marketing List has everyone.

I personally have used all of the above, depending on the webinar.


2. Create email templates for follow-ups.

As with the notification email, you need to create an email template to perform a Click Dimensions Email Send operation.


3. Sent an email to the various Marketing Lists

Again, depending on how you want to handle Attendees and Absentees, will determine the number and content for the emails.

Note: Keep in mind that GoToWebinar can also send out a follow-up as well so you probably do not want two messages going out.

In my emails I typically add any links that I discussed in the webinar as well as a link to the recording.


4. Put a link to the webinar on your web site.

Depending on how you have your web site structured, you can put a link to the recorded webinar or embed a player directly on the page.  I am still trying to find the best fit for my sites, for this step, but I will probably end up with the embed option.


5. Blog Post (Optional)

I am still trying to decide if I want to do this step but you can always post another email pointing people to the webinar recording so that others may find and view it.  I am undecided if this is to much “chatter” about the same event.



So there you have it. That is what I currently do, and it is always subject to change.  I am thinking about adding some custom tools to help me with some of this process but they are only in the conceptual phase.

If you have things to share in your process, then leave a comment on this post.

I’d love to hear what you have to say.