When To Build a Site with SilverStripe CMS (and when not to)
Alright folks, we are back with yet another Content Management System review. As always, I shall be reviewing a CMS and assessing its usability and performance for creating a website. And which CMS is it going to be this month? None other than SilverStripe! SilverStripe is an extremely popular open source CMS that comes with a BSD license. Ah...this makes me fall in love with it already: I have always had a soft corner for BSD and MPL licenses, in comparison to GPL. That said, SilverStripe is a quite capable piece of software, and I will be taking a look at its prowess in this article. However, I will be staying aloof from technical details such as installation procedure, simply because such information belongs in the CMS help files, not the review. Instead, my focus will be on the assessment of SilverStripe as a viable CMS for running and managing your website. Note: Just in case you missed the previous CMS review installations, here they are: MODX, Concrete5, Joomla!, and Habari.
SilverStripe: To Use Or Not To Use
1. Usability (Ease of Use)Note: You can view a demo of SilverStripe on this page. While personally I have never been a huge fan of the default blue theme, overall, the SilverStripe admin interface looks super user-friendly. And trust me, this is not an exaggerated claim. First up, once you login, you will notice that the admin panel has lesser menus as compared to most other CMSs -- a huge positive point for me, because the easiest way to kill the usability prospects of any software is to clutter its interface (case in point: Joomla!). Apart from being functional, SilverStripe seems to do almost anything that you would expect from a CMS. The Help menu is right within the CMS interface, so you won’t feel lost. However, I do feel that ‘Security’ seems to be a misleading title for a menu -- it is primarily about user roles anyway. Also, in order to get full points on the usability scale, SilverStripe definitely needs a clear way to install themes and extensions or modules right within the admin panel itself -- possibly a new menu or sub-menu (say, ‘Extend’-->’Modules’, and so on). Agreed, a user may get accustomed to SilverStripe over time and will not miss a separate menu for this purpose, but overall, themes and extensions belong in a separate menu within the admin panel. Lastly, the framework itself is one of the cleanest pieces of code I have seen of late -- though it doesn’t make much sense to talk at length about the framework as a stand-alone entity in a CMS review.
- Pros: Clean interface, easy to get used to
- Cons: Needs a separate menu for themes and modules/extensions
2. Flexibility and CustomizationIn terms of customization, SilverStripe repository offers themes, modules and extensions/plugins. Some time back, when I last used SilverStripe, I had coded a couple of widgets and themes myself -- not because I wanted to (I’m lousy with PHP software, generally), but simply because the official repository did not have a theme worth using. Sadly, in terms of themes, the picture has not yet changed. The repository, though well populated, does not have many gorgeous themes. However, considering the fact that most of SilverStripe’s user base believes in self-coded templates, this is not a deterrent anyway. In terms of modules however, the story is brighter: there are separate modules for Portfolio, Blog, and so on. All in all, if you wish to extend your website, you will not experience much difficulty in doing so. On the other hand, in terms of appearance, consider yourself to be on your own. And, before I forget, SilverStripe indeed is flexible, and you can create virtually any type of website using it: I suggest you check this and this to testify.
- Pros: Good set of modules and extensions
- Cons: Needs more good quality ready-made themes
3. Community and Documentation (Help and Support)The community surely is pretty active, with multiple meetup groups in various corners of the world. Beyond that, the forums and the IRC channel are well populated too. However, I have often felt that SilverStripe sometimes lags behind MODX and others when it comes to community engagement -- not in terms of numbers, but primarily because most MODX users are super ‘loyalists’, a feeling that is not so visible in SilverStripe's community (it is difficult to generalize this observation, though). http://vimeo.com/16842606 The documentation is, probably, one of the primary reasons why anyone might consider migrating to SilverStripe -- you have separate guides for creating themes and modules, as well as various screencasts, in addition to the detailed API documentation. That said, there is not much third-party documentation available.
- Pros: Active community, good documentation
- Cons: Not much third party documentation in the form of blogs or special forums
4. Other Miscellaneous ElementsSilverStripe has so far been translated into 65 languages and has been downloaded over 714,000 times. Need more stats? The forum itself has over 80,000 posts and over 270 companies are part of the Developer Network. Oh, and it is used by various awesome folks, including the likes of Air New Zealand. Definitely awesome, right? It sure is! http://vimeo.com/44911918 For some reason, SilverStripe seems to be evolving more into a regional tool than a global software (check this page, for instance: the majority is from Australia/New Zealand) -- if it were a coffee shop, this would’ve worked to its advantage: "best coffee in the region!". What about the 65 translations? Yes, this aspect surely does show that SilverStripe has a global audience, or at least is capable of establishing a global presence. Though the weak presence in some parts of the globe may be something to bemoan, the bigger problem lies in themes and extensions for SilverStripe -- the CMS needs some premium addons. SilverStripe has its own Developer Network, and the parent company offers paid development services to its users. Surprisingly, hardly any developer firm from the Network (or even the parent organization for that matter) seems to have taken an interest in developing premium themes and modules for the CMS. If it were Habari, non-availability of premium content was understandable: negligible commercialization model, the parent company offers no paid development services, not many firms offer development services to clients, and so on. But SilverStripe has all the ingredients needed for the purpose: developers who are keen on working for profit, developers who are keen on helping the CMS grow, as well as a parent organization that is much more than a mere spectator. Still, premium themes and addons are not much visible. This is a huge area that needs considerable work, if SilverStripe is to grow and attract newer users.
- Pros: Good stable of developers, well localized CMS
- Cons: Needs premium modules, themes and addons
5. Comparing SilverStripe With Other CMSsSo, how does SilverStripe fare in comparison to other CMSs? First up, WordPress. SilverStripe has had a distinct advantage over WordPress: unlike WP, SilverStripe has never witnessed a shift in its target user base. WP began as a blogging tool, and eventually became a CMS. SilverStripe, on the other hand, has not undergone such changes, and this fact is evident in its user interface itself: a clearly defined and well laid-out mechanism. Yet, at the end of the day, as I have already discussed, studios in the likes of WooThemes and WPZOOM do not develop for SilverStripe, and this becomes a drawback. If you compare SilverStripe with Drupal and Joomla!, on the other hand, the story is different. Both Drupal and Joomla!, at first look, appear to be bigger heavyweights in comparison to SilverStripe. Maybe they are, but in my book, SilverStripe will get more marks than both of them. Why? Because SilverStripe has a properly defined rationale behind it: a framework, an ideology and more importantly, the forum and community seem to be better organized as compared to that of Drupal or Joomla! http://vimeo.com/44848958 Speaking of Concrete5 and SilverStripe, these two seem to have a lot in common. In fact, even the community and repositories look pretty similar. Concrete5, though, has done one thing that SilverStripe needs to do: started already with premium themes! And before we proceed to conclude this article, I must also note, that I find the SilverStripe framework sort of similar to that of Zikula, at least in terms of anatomy.
ConclusionAnd, to sum it up: You should use SilverStripe if:
- You need a truly open source solution (BSD-L > GPL. Yes, I said it. Go ahead, shoot me!).
- You are looking for a framework that you can customize.
- You want a CMS that does not give you 999,999 plugins and expect you to choose the right one.
- You need awesome, readymade templates, and designing one yourself is too much for you.
- You are unsure about your coding skills.
- You are happy with your current CMS (if it ain’t broken, don’t fix it!).
Hi Sufyan, I have used silverstripe for 2 or 3 years now in more than 80 commercial websites, and I can only say that is awesome, my clients love the interface and I have even developed myself a less cluttered one, so my clients enjoy the most simple version of silverstripe ever.
Its really easy to solve complex problems on it since its framework its powerful enough to create things like a social network, an ecommerce website or a blog. If any of you wants a simpler more powerful CMS, silverstripe is an excellent solution :)
Why do you compare to Drupal and Joomla at the same time? Having used dozens of CMS systems I don’t think there are any two that are further from each other.
The thing I’m going to want out of any CMS that isn’t Drupal isn’t really covered here either. Are there modules? Can you make, just as one example, a social media site using modules from the community and little to no code? Can you make a blog? Can you make a searchable database that displays info differently on different pages (like Views)?
I assume it can do some of this (or all of it if you can code it yourself) but after reading this article I’m left not really knowing anything about the CMS.
I totaly agree with your article. I’m a webdeveloper and use Silverstripe a lot to create fully customised websites for our clients. The interface is briljant. We don’t even need to explain how it works to clients!
Your minus is about themes… maybe my neighbour wants a predefined theme for his website, but next to that I think all real webdevelopers create their own. And this framework is really made easy for that! I like the MVC style and the well organised folderstructure. It’s awesome!
My experience with SS: a very over-engineered CMS, considering it’s a PHP CMS.
I’m not saying saying their code is bad but it’s just too much – they should have written it in a different language, because PHP is slow.
CMSes like Joomla (2) and Drupal scale pretty well in even shared environments, but forget about that with SS. If you want it to load fast like a regular website, install it on a dedicated server and turn on accelerators/cachers. If you’re after something basic like a blog or whatever, go with a different CMS. SilverStripe is made for rapid development of complex and testable sites.
I don’t think lack of existing themes is a disadvantage, since SS is more of a CMF (content management framework). People who actually develop their websites don’t usually need to buy themes. Themes market is more for the crowd of basic plug and play systems like WordPress (blogs) or forums.
About mentioned theme installation disadvantage – this is the kind of a thing that should only be defined in code. How often would anyone swap themes anyway? If you want control over every little thing that has nothing to do with actual content management, you will end up with a confusing administration interface of Joomla which the client will not like.
To sum it up:
Pros – you have a decent framework to build things with
Cons – the framework should be more minimal/simplistic, it is an overkill for majority of sites.
As a developer I love Silverstripe. It is so flexible and it is so easy for clients to grasp what they are supposed to do. As for the themes issue, I don’t think SS is supposed to be for your average Joe Bloggs to set up for himself, I think it is meant for someone with a reasonable handle on code.
I’ve been developing in CMS for about 5 years now, and I will re-iterate what a lot of others are saying. It’s more of a framework than a CMS. Sure there’s a CMS componant but its real strength is in it’s data model. You can get really a complex site put together fast, and it makes it really easy to manipulate data at very low levels.
It’s MVC so Logic, Data, and Templating are all seperate.T his also make building COPE (create once publish everywhere) systems really easy.
It could probably use some performace improvments, but setting up some decent caching aleviates a lot of the speed issues. It is a developer’s framework in many ways but well worth the learning curve.
Great write up. Silverstripe is so good and its getting better and better.
There ain’t a million modules but what there is are generally of very high quality and are more utilities to help you make what you want than end products. Silverstripe is all about crafting the exact site you want, not conforming to a module writers idea of what you want. That results in a much better end product. Especially when you have many complex requirements that have to fit together seamlessly.
Drupal fans – no, you can’t do that much without coding skills. Code is where you define logic. At a certain standard of project, thats an advantage – not a disadvantage. You want your business logic to be defined using an infinitely flexible, testable and source controlled way. Thats best done by a skilled developer – someone with the ability to understand system requirements, design a solution and express it through code.