Binary Thinking – Karol Sójko's blog

Karol Sójko's blog

SilverStripe – the CMS tailored for you ?

with 5 comments

I was going to write a tutorial on how to install SilverStripe and build a basic website, but then again it’s all basicaly on the their website. So i thought to myself – hey, why not make a simple review of what’s in SilverStripe.

Till this day I’ve been using SilverStripe for about 4 months for a few different projects and I’ve got a couple of thoughts going through my mind at the moment.

“Simple is good”

First of all if you’re planning to build some simple websites, probably most of the time static ones, this is definitely the best solution for you. For more complex websites it isn’t that bad but there are some issues that always will catch you with your pants down.

“Simple doesn’t mean flexible”

The template syntax is very poor and it sometimes leaves you with your hands tide. For example the most annoying thing for me and my colleagues were the loops (<% control %> ). They don’t support a good flexible iteration. Forget about modulation of an iterating variable. The second thing that keeps some people angry is that you can’t call functions from a template with variables as arguments. Oh man, sometimes this requires some real code stretching from you.

Like a candy…

Then again SilverStripe has got an awesome Page tree hierarchy which easily let’s you develop new types of pages. This can be very handy as you can define new types of pages and define their individual behaviour. The backend layout is very simple (good) and eye-pleasing so it doesn’t confuse the user too much.

The flaws

The security and rites and too simple, basicaly it brings it down to “Admin” being the ultimate god-like-user and “The rest”. That’s definitely too simple to talk about user groups managing.

Next thing is that SilverStripe is relativly slow. Big applications seem to cache not properly. It lacks of a good flash support module.

The bright side

But on the bright side this CMS is very rapidly growing and becoming better thanks to the community. Though

SilverStripe based sites

SilverStripe based sites

most of the contributors tend to write their solutions on SilverStripe forum than to publish they extensions on the website, so if you’ve got a problem with SilverStripe the forum should be the first place to look. Having all the simple extensions like blog, e-commerce, forums, user-defined forms – just to name a few, makes this CMS a really great tool to build your website.

All in all

I hope that this CMS will grow strong in time and it will be more flexible as it is today because wright now it’s my favourite out there. All in all remember only that if you’re hoping to buid some advance and complex application you better think through the whole building process and check if SilverStripe has what you need.

Written by Karol Sójko

July 4, 2009 at 1:22 pm

5 Responses

Subscribe to comments with RSS.

  1. Another evidence that SilverStripe has serious performance issues:
    http://www.silverstripe.org/general-questions/show/265272?showPost=265272

    Karol Sójko

    July 25, 2009 at 9:43 am

  2. There are a couple of errors with this article. Firstly, the bit actually has all sorts of variables you can use to provide various types of ‘modulation’. This includes numbering, even-odd, next/previous item, and much more.

    Secondly, the admin model is not a simple “admin/all users” model, but a “create your own security groups” model. It has many levels of security control – (e.g. non-publishing author, publisher only, etc) and it lets you get down to field-level permissions for different groups of users, as well as grouping them for newsletters, etc.

    Thirdly – this may not be something that’s wrong, but it’s something that can probably be fixed – SilverStripe has excellent caching. It was used for the US Democratic party’s website during the 2008 election, so it can handle load for quite large and small websites very well. I don’t doubt you’re experiencing slowness, but it’s quite probably something to do with your specific configuration rather than a reflection of the package as a whole.

    alirobe

    July 6, 2009 at 5:58 pm

    • First of all thank you for the comment.
      When it comes to variables providing all sorts of modulation there are only the ones you mentioned previous, next , first , last , even-odd, and no “much more”. For example tell me how would you do a modulation through 5 (%5). No such thing is possible.

      It seems like you haven’t tried to made realy “custom” groups of permission, because if you see the file uploading there is piece of code that allows only the admin to upload and nobody else. You call that security levels ?!

      And the third one. Oh yes, well we’ve all heard about the US Democratic website that there is something to boast about. But seriously, have you experienced the feeling that it’s going to take a large traffic on it’s shoulders ? Because i visited it a couple of times and frankly speaking it was not only slow but also didn’t handle the capacity of users sometimes.

      Regards:)

      Karol Sójko

      July 6, 2009 at 8:52 pm

      • You should %5 in the controller, not the template. Handle your data with PHP before it’s looped through the template.

        As for performance – yes, a big issue, but one they are fixing.

        Josh

        August 16, 2009 at 7:49 pm

  3. making %5 in the controller is somehow not ok with the MVC concept (f.e. even-odd variables are available in the view)

    I hope they’ll fix those performance issues fast, because even simple and basic sites don’t work due to those issues. According to their developers they are working on it, but sadly they don’t know how to fix it yet.

    Karol Sójko

    August 16, 2009 at 10:57 pm


Leave a Reply