Five Reasons Why You Should Use a Git-based CMS (Part 5 of 5)
In our previous posts we looked at CrafterCMS and its Git-based versioning (part 1), distributed repository (part 2), dug in to Git’s underlying mechanics to see how it benefits deployment (part 3)and we looked at how the support for branching (part 4) can help your organization dramatically speed up development and deployment activities. In this post, we’re going to wrap the series up with one final reason.
There are so many advantages to the way that we’ve leveraged Git; It’s hard to pick just 5 things to talk about. Because I’ve arrived at our last reason, #5, I want to use this item to speak to something non-technical: familiarity.
Reason #5: Familiarity
Throughout this series, you have heard me talk about a “Git-based” CMS. That’s intentional and I want to elaborate on why that’s important. The entire series isn’t just about a better mousetrap. We’ve tried to take a hard look at the kind of problems that remain in the CMS space and the needs that modern organizations have in terms of innovation at a competitive level with respect to ease, speed and scale of continuous delivery. It turns out that, yeah, some of the biggest bottlenecks go all the way down to the core of today’s CMS platform: They way we store and manage content and code.
The features I spoke to in this series are the first steps in truly making a real and major difference. What we’re saying is, we need a repository with a specification that enables these kinds of capabilities. Developers and DevOps should not have to dance around the technology to get their jobs done. That said, the functional specifications of features and how you implement them are different things. We could have focused on a system with “Git-like” rather than “Git-based” functionality. We chose to do the latter. We did that on purpose.
Leveraging Git rather than re-inventing it has nothing to do with code-reuse or ease of implementation. If you look around, you will find a number of projects that enable non-technical content editing and publishing (basic CMS functionality) for statically generated static websites that leverage Git. Developers and DevOps familiar with Git, already recognize many of the benefits of leveraging Git for these kinds of needs. However, implementing a full enterprise-class CMS designed to support modern, dynamic and personalized multi-channel experiences isn’t as simple as sticking Git under your CMS. The full range of WCM authoring, development and DevOps use cases are much different and more complex than what you see with simple editing and publishing of statically generated websites and standard source code management. There are a lot of decisions to make and problems to solve. A Git-based implementation is important for a much bigger reason another reason:
Familiarity matters. Familiarity covers both adoption and integration. Git is used all over the world. It’s proven. Moreover, developers and operations teams know how to use it. A Git based CMS is part of the broader Git ecosystem — which means your existing Git-friendly toolchain natively works with the CMS.
“Git-like” is not enough. Its got to be Git-based. Familiarity matters.
Crafting great digital customer experience is a complex, multi-step, multi-environment and multi-disciplinary practice. Today, a CMS must be as good for development and operations/process as it is for the content authors that are traditionally thought of as the primary users. Today’s contemporary CMS platforms still sit on a basic architecture that was designed over 20 years ago when needs were different. To meet today’s challenges a new kind of CMS is required with a new architecture that starts at the root of the platform, the repository. Today’s needs call for a distributed repository that supports branching, advanced content/code flow scenarios and a versioning model that is multi-file. These are Git-like features. While the functional specification of a modern CMS repository is “Git-like” a solution that is “Git-based” leverages the power and track record of the worlds most popular source code management platform and plugs into a vast ecosystem of developers and DevOps in a way that no other solution can.
CrafterCMS is an open source CMS project and the world’s first enterprise-class CMS based on Git. CrafterCMS is on a mission to bring content authors, developers, and operations teams together in a single platform that makes innovation easy, fast and fun.
Check out the other articles in this series:
Russ Danner is VP Products at CrafterCMS and is responsible for product management, product development and support, and client and partner success. Russ brings over 20 years of software architecture, design, and implementation experience. Prior to CrafterCMS, Russ was Web Experience Management Practice Director at Rivet Logic and project lead for the open source CrafterCMS project.