Some words about the Reference Implementation

So you heard about the SDL Tridion Reference Implementation (a.k.a. Digital Experience Accelerator), and now you want to know what it is all about.
A while ago I blogged on tridiondeveloper.com about a SDL Tridion for Dummies book, and as you can see in the comments on that post, it seems there is not a direct need for something like that. After writing that post I have discussed it with a lot of people, and more and more I found that what they actually needed was not something basic but something complete. Plus looking at the future, it also seems a shame to spend a lot of time on a step-by-step instruction about something which might be deprecated soon (see Nuno's 10 things you did not know about Tridion 2015).
Luckily a couple of months ago, I got asked to become the product owner of a project which is now known as the SDL Tridion Reference Implementation (a.k.a. Digital Experience Accelerator or STRI). Apart from it being (as the name describes) a reference implementation, it can suit several purposes. You could consider it a bunch of good (or even best) practices, and of course use it as education material. So lets take a closer look at what it exactly is.

What is it?

In short, the SDL Tridion Reference Implementation is:

  • An installable Tridion Implementation
  • 2013 SP1+
  • MVC Web Application
  • Experience Manager "ready"
  • Available "in the cloud" or on premise

While all of these one liners are true, they might confuse you more than they give you an idea of what it is. So let me discuss a few of the details and explain myself further (a full feature set can be found here and in the documentation).
The SDL Tridion Reference Implementation is an MVC web application (v1.0 is released as ASP.NET MVC 5), with CD side Templating. It uses DD4T to serialize the data from the Content Manager and is further designed to keep the web application independent of its "Content Provider". You have the option to semanticly map the domain (CM) to the presentation model and it comes with a rebrandable RESS (Responsive Web Design + Server Side Components) white label HTML design (using Bootstrap and LESS). I will explain the details of this semantic mapping in a different article some other time, for now lets stick with the what and take a look at the why next.

Why did we do it?

This is simple, the barriers of a SDL Tridion implementation were perceived as too high. Looking at cost, time and knowledge, then yes those are barriers one does need to overcome. Lets not focus too long on the reality and truth in this, but lets talk about how these barriers are lowered. The SDL Tridion Reference Implementation provides you with a 'Standard' on which to extend and integrate. It has done the simple (yet time consuming) things and lets you focus on the hard and often very specific and custom stuff. Last it will
allow you to learn by example. It can act as a complete solution for microsites, or be used as the basis for an enterprise site.

What is it not?

After explaining what it is and why we did it, lets give you some boundaries too. It is not a generic Blueprint, not a universal set of Schemas, and by all means NOT a one-size fits all implementation for all clients!

Do I need it?

This is entirely up to you, but when considering it a standard on which you can extend and integrate, I can put it like this: "You don't have to do it like this, but if you do, it will be easier, and guaranteed to work...". Now that last one is an interesting thing to say, certainly considering the support statement that says it is intended as a toolkit to help the SDL Tridion community and is not an officially supported SDL Tridion product.
Just consider this; right now it is only a community toolkit, but in the SDL Tridion 2015 release, it will have become part of the product. By that time it will have grown, but the base ideas will remain the same. So when 2015 is released, this will be considered the way an implementation is done (in fact this will be the implementation that comes out of the box, supported and all). Even with 2015 my previous statement will of course remain ("You don't have to do it like this, but if you do, it will be easier, and guaranteed to work...").
So do you need it, well that depends, but if you need to redo your current implementation, I would consider using the reference implementation right now. Remember it is not a one-size fits all implementation, but use it as a standard which you can extend and integrate with.

Okay I'm convinced, what is the next step?

That one is simple, download it and proceed to the documentation. You might want to read a few more details about what it is and how it is all setup, or you can directly start with the section: Installing the SDL Tridion Reference Implementation. In short there are the following steps you need to follow:

  1. Import the Tridion Reference Implementation into the Content Manager:
    1. Import the content items
    2. Import the modules
    3. Import rights and permissions for the default Tridion Reference Implementation User Groups (Developer, Editor, and Site Manager)
  2. Publish the Example Site to get the Web site content into the Content Data Store from where it can be retrieved by the Web application on page request
  3. Create a Web application (MVC) for running a Tridion Reference Implementation Web site
  4. Import optional modules

All of this is completely documented and you will be aided by PowerShell installation scripts. After completed each of the installation steps, you will have a fully working SDL Tridion implementation with a white label HTML design, complete with (sample) content and all of that can be changed in experience manager.
Now from this point onwards you are on your own, but not completely, because the SDL Tridion community will always have your back -> http://tridion.stackexchange.com (do post your questions here, always).

Related Links