Perficient Digital Transformation Blog


Jamie Stump

My name is Jamie Stump, and I am a Senior Sitecore Consultant at Perficient. I was honored to be named one of only 42 2013 Sitecore MVP’s worldwide. I specialize in Sitecore Architecture and Development and my broad Sitecore experience includes Sitecore installation, configuration and CEP development, including custom DMS implementations for clients. I have implemented Sitecore solutions for a number of industry verticals including manufacturing, healthcare, financial services, advertising and retail. In addition to architecting and implementing Sitecore sites and eCommerce solutions, I also work with other Microsoft Technologies, including the .NET platform and SQL Server. You can read through my older Sitecore related blog posts here and my newer ones here. I graduated with a Bachelor of Science in Information Systems Development from York College of PA. I am originally from the suburbs of Philadelphia, PA, and still reside there with my wife, son, English bulldog and 2 cats.

Google Google Profile
LinkedIn LinkedIn Public Profile
Twitter jstump29

Posts by this author: RSS

Handling Environment Specific Links in Sitecore

One of my clients recently had a somewhat unusual requirement when working with Sitecore.  Due to some business rules, they are forced to input their Production content into Sitecore at their Development Environment and push it from Development all the way up to Production.  Their Sitecore website has links to other of their in-house systems that are external to Sitecore.  When you add those two up, you get the requirement that you are going to need “Environment Specific Links”.  In other words, if I’m in the QA Environment of my Sitecore site and I have a link to another system, I need to make sure I’m linking to the QA Environment link for that system.  As I move “up” in environment, then my links should dynamically adjust as well.  My colleague, and recent author, Kyle Burns came up with a creative solution that was easy to implement in Sitecore and handles links done through any field (including the dreaded RTE Fields!). (more…)

My Sitecore Symposium 2012 Recap

Now that Sitecore Symposium is a week in the rear-view mirror, and I have power back from Sandy destroying the East Coast, I thought it’s time to get a post out about my experience at Symposium this year.  So here goes…

First, I was quite happy with the venue change.  I’m not really big on Las Vegas, though I think it has more to offer in walking distance than Boston did.  I was however, very pleased with Aria as the hotel and conference center, and delighted by the culinary upgrade.  People who know me well would consider me a “selective” eater (upgraded from “picky” – that was so 5 years ago!).  I will admit, I had some difficulty finding acceptable choices last year, but not at all this year…every meal was great, and had good selection to boot!

Enough about my culinary tastes though – this is a Sitecore post after all.  I thought the opening montage video for Symposium was great – my biggest regret of the conference might be that I wasn’t recording all the great facts that the video displayed.  (If anyone has that, please let me know, I’d be interested in getting it!)  The conference theme “Inspire and Engage” was a good choice, but I more enjoyed the keywords of “Immediate, Relevant, Predictive”.  Here at Perficient, we’ve been having a lot of discussions around “Business Relevancy”, and how Sitecore is the perfect tool for companies to gain that Relevancy in today’s world, so I thought it was a great keyword for the conference. (more…)

Sitecore MVC Dynamic Placeholders

A client recently had a need for using multiple instances of a single sublayout that had Sitecore placeholders on it.  They discovered that when they tried implementing this, they ended up with duplicate / replicated data in each placeholder of the sublayout that was used multiple times.  Searching for an answer, we came across this excellent post: Dynamic Placeholder Keys in Sitecore.  The only problem is that my client is working on the 6.6 Technical Preview version of Sitecore, and their code is in MVC.  The solution provided by that blog post needs some adjusting to work in an MVC environment.  This blog post will show you how to do that adjustment so that you are able to create Dynamic Placeholders using Sitecore 6.6 and MVC.


Sitecore vs. Custom Development Sites

Sometimes when introducing prospective clients to the awesome software that is Sitecore, we face a little bit of a pushback from the IT groups.  This is because a lot of those IT groups include developers who have been working very hard at creating custom applications to suit their companies.  As a developer who spent 5 years helping build a company intranet from the ground up, I completely understand that perspective.  In fact, I’m very much the type of developer who, when presented with a challenge, loves to come up with my own code as the solution – rather than relying on any third party solution.  I remember even a month into my own experience developing with Sitecore asking a coworker who had more CMS experience why a company would choose Sitecore over a custom- built, tailored admin if they had the developer resources available.

Fast forward 3 years, and I can absolutely answer my own question about why use Sitecore instead of trying to develop a custom solution.  The answer is clearly because Sitecore is such a polished product right now and offers so much different functionality out of the box that it would take years and years of competent development to even come close to being able to offer the same features that Sitecore does, and to do it in such a refined, slick manner that end users who are not technical can learn the system without difficulties.  Even if you only consider the CMS aspect of Sitecore, it alone is full of functionality that would not be easily replicated, whether that’s the WYSIWYG page editor, or the easy to implement multi-device / multi-language aspects, the version control and workflow processes that can be customized to any organization are just the tip of the iceberg.  Once you consider the power that Sitecore’s DMS gives marketers, then you’re really talking about functionality (content personalization, multi-variate testing, advanced analytics, etc.) that can only be delivered by a company solely devoted to releasing a software product – which of course is exactly what Sitecore the company is.  The time spent on engineering and architecting that software by a company who is not in the software business would be of a much higher opportunity cost than purchasing Sitecore and spending that same development time on other projects that will directly correlate to an advantage of some sort for the organization. (more…)

Sitecore 6.6 Technical Preview MVC Test Lab Bug Fix

Last week I wrote a blog post about a fix for the bug you will get in Sitecore 6.6 rev 120622 when you try utilizing DMS Personalization on an MVC site.  If you are interested in using the Sitecore Test Lab, which allows Content Editors to create A/B and Multivariate Tests on their content in the Technical Preview of Sitecore 6.6, you will receive a very similar error.  In fact, you’ll get the same error, just generated from a different class / method. Again, the actual error is “Method ‘ToString’ in type ‘Sitecore.Mvc.Analytics.Presentation.EmptyRenderer’ from assembly ‘Sitecore.Mvc.Analytics, Version=, Culture=neutral, PublicKeyToken=null’ does not have an implementation.

To fix the Test Lab error, you simply need to add the following class to the file I had you create in the last post:


Sitecore 6.6 Tech Preview – MVC Conditional Rendering Bug & Fix

Brief Bug Description:
As soon as a change is made and published to attempt to Personalize a Rendering in Sitecore 6.6 rev. 120622 (Technical Preview), an error will be encountered on the page where the personalization has been set up on any MVC site.  The error is “Method ‘ToString’ in type ‘Sitecore.Mvc.Analytics.Presentation.EmptyRenderer’ from assembly ‘Sitecore.Mvc.Analytics, Version=, Culture=neutral, PublicKeyToken=null’ does not have an implementation.

The following post will describe how to recreate the above bug as well as how to adjust the Sitecore pipeline for CustomRendering.Personalize to a custom class that will fix the above bug.  The code / screenshots shown in this blog post is from a version of the MVC Music Store written in ASP.NET MVC 3 and integrated into Sitecore 6.6 rev. 120622.


Professional Sitecore Development: Intro / Chapter 1 Thoughts

While I pre-ordered my copy of John West’s Professional Sitecore Development book, and received it from Amazon pretty much on the earliest possible date, I’m just now finding the time to get into it.  I hope to write a few blog posts detailing my thoughts on the book and passages I think are especially important, with this being the first such post.

I think the Introduction and Chapter 1 of the book both do an admirable job of introducing the reader to CMS as well as to Sitecore the company/product.  John is very clear in pointing out early in the book that the target market of Professional Sitecore Development is in fact developers who have already attended the Sitecore .NET Developer Training officially offered by Sitecore.  While the intro and a majority of the first chapter are written in terms I think non-developers could grasp and understand, the end of the first chapter definitely does get into concepts and verbiage that would be over the head of any non-technical users.  Further on in the intro, John writes that a lot of the content of the book is available through Sitecore training, official documentation and “on the web at large”, but that he hopes the book can serve as a comprehensive resource to help new Sitecore developers become familiar with the software.  As a seasoned Sitecore developer, I have to admit I was hoping for this book to help extend my knowledge of the software beyond the existing white papers and blog posts found on the SDN.  However, I certainly appreciate what John is doing by compiling many sources of information into one spot, and the book does a great job of providing links to further reading that can be found on the web.  Additionally, as I wrote in a previous blog post, I think just the presence of a Sitecore book helps legitimatize the software as a whole.  I also still have hope that I will certainly learn something I haven’t already read about in other Sitecore documentation.


Wait A Second: Just What is Sitecore?

This blog post may seem a bit unnecessary, especially to anyone who’s already worked a fair amount with Sitecore.  Yet I’m rather surprised by the number of clients we’ve worked with who have already purchased Sitecore and made the decision to go with it but aren’t sure how to realize its full potential because of a lack of understanding the technical foundation that is Sitecore.  Sure, they know the software is a Content Management System, and they certainly know about the Digital Marketing Suite – but ask them what Sitecore really is, and you’re likely to get no answer or the standard “it’s some technical magic, voodoo thing”.

Now, a lot of the users of Sitecore are marketers or regular business people, and so we have to give them a fair break about not knowing every single detail of the software they’ve decided to spend money on.  Certainly, Sitecore has been designed so that these non-technical people can run their implemented site without needing to know all the gory technical details.  However, there comes a point at which not understanding what your software consists of can cost you because you’re unaware of all that it can do or how it operates.  After reading this post, I hope that even those readers who are non-technical will better understand what Sitecore really is, and thus will be able to utilize the software to its full potential.

Before I start getting into what could be considered fairly technical to a marketer / business person, let me reiterate that it is not a requirement for any marketer or business user to understand the technical side of Sitecore in order to utilize it.  The point of this post is to increase the understanding of non-technical Sitecore users so that the communication between them and their technical implementation partner can go more smooth, and both sides are able to speak at least a little of the same language with each other.  My hope is that this piece is not only helpful to those non-technical users of Sitecore, but is also valuable to the designers who work on the fringe of Sitecore without ever really being exposed to the actual software itself.  My experience with some designers is that they sometimes have a hard time conceptualizing a new site or portion of a site because of a lack of awareness as to what Sitecore is – which I again hope to reduce through this post.


My Experience with Sitecore Support

If you’ve used or implemented any type of software at a moderate degree, it’s very likely you’ve had to deal with official support for at least a little bit.  I recently had to contact the support team for Sitecore, and I’ve written a blog post detailing my experience.  The post is on under the technical blogs section.  You can read it directly by clicking here: Sitecore Support: It Works!

Adding Gamification Concepts to Sitecore

Lately the topic of gamification has been getting a lot of press.  Even here on the Perficient blogs, we’ve had some great gamification posts and white papers, covering a full spectrum from specific technology platforms (IBM Connections), entire solutions (Intranet) to the broad industries (Healthcare).  As an avid gamer, I love that something I have had a major interest in since I was a child, and invested countless (seriously, countless) hours doing could have some legitimate business applications.  (Quick side note:  When I say countless, I mean it – the best man at my wedding basically designed his entire speech around how much I loved….video games.  Truthfully, I’d probably consider myself an expert in the area of gaming.)   I’ve personally always enjoyed games because I feel they give a great escape from the daily grind of real life.  I also feel that when playing games, I am presented with a challenge that I am both invested in and can also have the direct ability to control an outcome so that it is a desirable one.  What company would not want their employees to be more invested in achieving desirable outcomes?   I think that is where the power of adding gamification concepts to business applications could have a profound impact.

For anyone who’s unaware, the term gamification relates to applying gaming concepts to something that is not a game. states: Gamification typically involves applying game design thinking to non-game applications to make them more fun and engaging. Gamification has been called one of the most important trends in technology by several industry experts. Gamification can potentially be applied to any industry and almost anything to create fun and engaging experiences, converting users into players”

So, with all the talk of gamification and how it can be used to increase employee effectiveness and morale, it got me to thinking – could Sitecore use some sort of gamification system?  Would Sitecore be a better product if its users could earn badges, or achievements or increase their “Sitecore level”?  I think these are questions that require some serious thought.  I’ll try to delve into some of my initial reactions to the questions here, but I’d really love to hear from the Sitecore community – both developers and business users, about what they think about gamification and Sitecore.