We're always interested to see what others are building with the SilverStripe CMS, so we've decided to start a series of profiles on what other companies and developers are doing. Today we talk to Aaron Carlino, who is otherwise known as Uncle Cheese, prolific forum-poster and all around legend.
Back in 2006, I had just started working at Bluehouse Group, and I learned quickly that our content management needs were strongly lacking. We were using a proprietary CMS developed in house, with a codebase like a tumbling snowball, picking up new things with every project, until it finally reached an immobile critical mass where it was unsustainable and impractical to continue using it. We spent a year researching open-source CMSes.
In the meantime, I was a lead developer on a major web application built on Symfony. I became enamored with the MVC design pattern, object-relational model, and the conventions and standards that were enforced in working with a framework. I remember thinking, "If only there was a CMS built like this."
SilverStripe got a lot of ink when it was backed by Google Summer of Code, so I decided to give it a try. After completing the fifth tutorial, it was clear that I had found that framework-based CMS I was looking for.
Today, I'm still fascinated with the Sapphire framework, and I can categorically say that I would choose it over Symfony for most projects. For some reason, I just really click with Sapphire. Every time I have an inclination or idea, I find out that Sapphire has a component in place that handles it gracefully, intelligently, and effectively. In the crowded world of open-source CMS, Sapphire is what makes SilverStripe a major stand-out for me.
A lot of work. I think my most recent estimate is that I have 1,200 hours into the DataObjectManager project alone, including development and forum support, both of which have ebbed in recent months due to my workload.
It's funny you compare them to children. I once heard an interview of the legendary recording artist Billy Joel in which he was asked the question, "Which one is your favourite album?", to which he said, "My albums are like my children, so my favourite is always the most recent one."
I guess that's kind of how I feel about my open source contributions -- the more recent the better. I think a lot of community members and the SS dev team alike might be surprised that I find most of my work unacceptably bad, and I'm embarrassed by it. Perfectionism runs rampant in my blood, and less-than-perfectly executed work bothers me to no end. DataObjectManager is probably the most downloaded module for Silverstripe, but the quality of its craftsmanship is not deserving of that, in my opinion. Building modules was my way of learning the SilverStripe framework from the inside-out, so my early work is really just a snapshot of a given mental exercise at a given time. They ended up getting a lot of momentum behind them, so I got stuck in a pattern of continuing to develop them as "less bad" as possible, just to keep up with the demands on updates and enhancements.
My latest release, Uploadify, is, on the other hand, something of which I'm very proud. It's well-documented, it's i18n compliant, it's extensible, and it uses the SilverStripe environment the way it was meant to be used. I'm staying on that trajectory, and I have a top-secret module nearing release that I suspect could be a real game-changer for the SilverStripe product. Stay tuned.
I'm not sure I would say "growing." It's definitely quiet. But then again, it's not always the loudest players you have to look out for -- sometimes it's that innocuous ambush predator sitting quietly in the corner, just waiting to take control of the scene. So who knows what will happen at this point.
I can tell you this, though -- the room of open-source CMSes is a loud one, and in the North American corner of that room, SilverStripe is barely whispering. At Bluehouse Group, we're often in the position of selling Silverstripe to our potential clients, and all too often we get the response "Silver what?"
Of course, there's always something distinguishing about using a CMS that isn't one of the big three, but it's also nice to bolster your credibility with a little bit of name recognition. At Bluehouse Group, we would benefit from SilverStripe making a lot more noise in North America, and we are happy to participate in joint marketing and promotional efforts to help get this product where it deserves to be in our corner of the world.
It helps to have an insatiable ego, because most of the time, payment comes in the form of excessive flattery and extolling praise. Just recently, I opened up a channel for donations on my website, LeftAndMain, and I've been really impressed and humbled by the amount and frequency of the donations that come in. To me, this is open-source really working.
Above all, however, it's the exposure as a skilled and experienced SilverStripe developer that motivates me. My open source contributions have opened so many doors for me, just because so many members of the community know who I am. A lot of people thank me for all of the time I've "given" to the SilverStripe community, but I've always looked at it more like an investment.
The most important thing to know is that it's not for everybody, and it's not a magic bullet, so don't go into it thinking it's something more than it is. When I launched my blog back in August, I got torched by a number of community members for choosing WordPress as my blogging tool. To me, it makes perfect sense to build a blog using a tool specifically built for blogging -- the same way you use an e-commerce platform for an online store. I've never looked at SilverStripe as even being in the same competitive space as these types of products.
But most projects aren't as refined and specific as a simple blog or online store. Today's websites and web applications are dynamic, sophisticated, and highly customised. This is where SilverStripe shines. You can do just about anything with it. Therefore, new users who want to harness the power of SilverStripe and the Sapphire framework in their projects need patience, dedication, and a good support line. In general, the steepness of a product's learning curve is congruous to its strength and versatility. Don't be surprised if the pay-out for using SilverStripe doesn't happen until after the first few projects. It takes a while to get started, but on the backside of that hill, you'll recover all that time and much more.
And always remember -- if you get stuck, just ask Uncle Cheese.

Andrea, Dylan and Brandon
Because Dylan McKay is a badass. 'Nuff said!
By the way -- my cat's name is Brandon Walsh. :-)
It is a very profitable post for me. I've enjoyed reading the post. It is very informative and useful post. I would like to visit the post once more its valuable content.
Posted by Ninja Games, 7 months ago @diya
Oh man, you can't keep me in suspense like that. Any hints on your new top-secret module? Or at least when you think it might be ready?
Posted by Gene, 1 year ago
Uncle Cheese you rock
Posted by optic, 1 year ago
Thank you, pedantic link checker! Fixed now. :-)
Posted by Sibylle , 1 year ago
I think the link should be;
http://www.silverstripe.org/ForumMemberProfile/show/798
not;
http://silverstripe.org/forummemberprofile/show/798
Posted by pedantic link checker, 1 year ago
RSS feed for comments on this page | RSS feed for all comments
Want to know more about the company that brought you SilverStripe? Then check out SilverStripe.com
Comments on this website? Please give feedback.