Why We Use SilverStripe

November 29, 2017

As a SilverStripe Professional Partner, our developers (myself included) have been building websites using SilverStripe since 2011.

SilverStripe is a great fit for arts organizations as it’s easy to use, built for the responsive web, and integrates nicely with other systems using modern web architectural patterns and practices.

Now, SilverStripe is probably not the first open-source CMS you’ve heard about. You might be using another open source CMS, based on something like WordPress or Drupal, and be interested in finding out how SilverStripe is more adaptable (and in our opinion, better). Or you might be using a proprietary enterprise platform like Episerver or Sitecore, and be interested in open source technology because of the cost model, developer community and extensibility it provides, but unsure how adaptable it might be to the arts and culture environment. In our view, SilverStripe provides a ‘best of both worlds’ approach, for the following reasons.

It’s Object Orientated

SilverStripe is a truly objected-orientated CMS. Not based around abstract concepts like Nodes, Portlets, or Polyps (okay, I made that last one up, but Portlets are an actual thing. And don’t get me started on nodes). It allows you to describe a rich data model for your content and the relationships between them, using terminology that makes sense to your editors. So, your marketing team will be using concepts and terminology directly aligned with your institution’s lingua franca. For example, updating a Profile page for an Actor associated with a Production Season are all tangible things you can manage with the admin interface. Using SilverStripe doesn’t require you to adopt ‘yet another set of terminology’ people will have to pick up and learn, or create a dependency on ‘that one person who understands how the website works’.

A key aspect of object-orientation is establishing relationships between your data, and harnessing the linked nature of the web. Over the years, we’ve developed a collection of pre-built modules that allow us to build dynamic websites featuring interconnected content specifically for cultural institutions. For example, a Venue page that automatically list forthcoming performances, related artistic works, creatives, and so on. You can publish these kind of pages effortlessly without having to micro-manage your website on a page by page basis.

Having a well-defined data structure is an essential foundation for any good software system. You shouldn’t center your database design around strange cult-like ‘voodoo-isms’ as with Drupal where everything is a node (except when it isn’t). Or rely on third-party plugins to define a data model that diverges from the fundamental design of your chosen CMS. Relying heavily on customized plugins to provide essential functionality for your website causes compatibility issues with major upgrades, as well as constant security patching as vulnerabilities emerge in the wild.

SilverStripe keeps it simple, and doesn’t require significant customization to manage your content in a clear and straightforward way.

Developer Friendly

As SilverStripe uses best practices and software engineering design principles, it’s easy for web developers to learn and work with. It doesn’t require years of practice to acquire advanced expertise to build SilverStripe features. It’s easy to learn (compared to the steep learning curve of Drupal) and its implementation is more akin to a standard web application, rather than a special body of knowledge or school of thought.

SilverStripe CMS is underpinned by the SilverStripe Framework, a modern web application framework that closely resembles that of Ruby on Rails and Django. A good citizen in the PHP community, one of its strengths is storing objects in a relational database (a problem known as the object-relational impedance mismatch) in a no-nonsense fashion. With this mechanism, it’s easy to build sophisticated admin interfaces for your content whilst keeping your data free from quirks, which is just lovely.

Easy to Upgrade

SilverStripe provides the ability to expose and manipulate data as objects without being tied down by ‘hard’ design decisions and technical debt. With the release of SilverStripe 4, the user-interface was carefully redesigned and rebuilt with React and other modern front-end engineering techniques. To take advantage of this, the upgrade path is relatively painless as the fundamental application framework and data structure is retained; you don’t need to make drastic upheavals to keep your CMS up-to-date.

If you’ve experienced the organizational pain of upgrading a Drupal 6 website you know the level of investment required to upgrade, especially with ‘highly customized installs’. Configuration entangled with content within the database. Dealing with a long list of community contributed modules to update, replace, or deprecate. Avoid this. Having to invest the majority of your web budget in upgrading a CMS is a painful predicament. As is justifying the ROI to your CEO.

Whilst it inevitably requires some development work to perform a major upgrade, we don’t have this problem with our SilverStripe sites. We work with our clients to ensure solutions are customized responsibly, loosely coupled with their ticketing systems, and steer clear of monolithic, CMS-heavy, architectural approaches.

Easy to use

SilverStripe is intuitive. Your team won’t need to read a 456 page book to understand how to update your homepage. And no need to attend expensive training courses to master SilverStripe either. You can invest in learning more transferable skills at a ticketing or arts marketing conference instead! Whilst there is comprehensive documentation online, we find a single training session for each new project we deliver is all that’s needed. This knowledge usually stays within the organization, and is passed down to future editors as staff turnover.

Managing content using split-screen mode in SilverStripe.

SilverStripe excels at managing and publishing content. Particularly in the world of modern responsive web design where content needs to adapt to devices with different capabilities and viewports. For example, it provides the ability for web editors to preview content in situ, in multiple dimensions, to ensure your production pages looks good on mobile and desktop when building out your events. Features like this make it easy to get the job done in the CMS.

Each institution we work with has a different approach to selling tickets, and publishing content online. These can be due to established cross-departmental workflows, or standard approval steps and proof checking. SilverStripe has a scalable model for implementing these kind of controls. If you need lots of checks and balances in place, you can configure these policies to be rather sophisticated. Or, if you’re a one person outfit in control of the entire website, you can keep it simple.

Open Source

SilverStripe is not a job protectionist CMS, for those who have a fetish for vendor lock-in. It’s free and open source, released using a BSD (revised) license, one of the most permissible open source software licenses available. As well as our developers, the community is supported by a team of developers across the globe, with the majority of core contributors headquartered in Wellington, New Zealand working at SilverStripe Limited.

Spot the Made Media developers at EU StripeCon 2017 in Malta.
Image Credit: SilverStripe

In terms of the open source technology it’s built upon, SilverStripe is written in PHP and runs on Apache HTTP Server / Nginx (we use the latter pretty much exclusively now) and Linux-based web servers. This makes it cost-effective to deploy, and it’s easy to find developers who can (and want to) work with websites built using these stacks. It works brilliantly with Amazon Web Services (AWS), allowing us to develop websites that scale upwards and outwards to handle huge traffic spikes in traffic, and also utilize many of the products in the AWS ecosystem. In addition, despite it’s origins, SilverStripe will happily run on Microsoft Windows platforms too, and was the first open source product certified by Microsoft to do so.

Use of open source technology results in better software. As well as reducing development costs, encouraging reliability (no dirty secrets), and principled security through peer view, your organization is not held to ransom by a proprietary vendor. You need a degree of transparency and collaboration that using open source software allows for without the constraints of restrictive software licenses. It enables people to focus on building solutions that solve genuine problems and further your organization’s purpose without an expensive glass ceiling.

Made ♥ Silverstripe

We believe SilverStripe is a great fit for building your arts marketing website, and we love using it. It doesn’t require you to invest heavily in a particular vendor or pay annual / per server / per environment license fees. You don’t need to subscribe into ‘the Drupal way’ or any other particularly odd method of doing things, or adopt yet another set of idiosyncratic terminology into your work day vocabulary.

Arts organizations should not underestimate the value of marketing content they publish on the web, and should ensure that it’s stored and structured in a way that’s easy to expose. As the pervasive and ubiquitous nature of the web continues to evolve, in both interface and medium, we continue to recommend SilverStripe as the best CMS to create content on the web.