I think it’s finally time to write about my new view of TYPO3 (which is not that new anymore actually). I’ve written several times about TYPO3 or FLOW3 in the last months and this might come as a surprise to those who know me. Because if you do, then you know that I didn’t like TYPO3 at all.
When I started working on the web, I quickly realized that I needed a CMS for the website that I built. And as I knew PHP, I started to write one my own (actually, it wasn’t a decision as structured as it sounds, it just came to happen). And yes, it was horrible in the beginning, but it worked. I also got to know Mambo (which is now better known as the fork Joomla) and later on, TYPO3. Both experiences made me even more convinced that writing my own CMS was a good idea. Because they were even more horrible in my eyes: they were bloated and had a bad usability. Over time, my programming skills improved and the code base of my CMS became object oriented. And you could do a lot of things with a very simple backend interface: any layout I can think of was possible, extensions were easy to write and you could assign various permissions to different users just to name a few features. All of this while the code stayed simple and small. And of course it had the advantage that I knew every part of the system. For example, writing extensions for another system was a lot more hassle for me. So all in all, I was happy with my solution and it is still used in a couple of websites as of today.
But as the title of this post suggests, I came to rethink my general opinion. Here’s why:
- There is the problem that maintaining my own CMS is a lot of work (although this was good in the beginning, because I really learned a lot about programming from working on it). Also, as distribution grows, I would need to document the project and and it would be hard to just withdraw from the project when I can’t or don’t want to develop it anymore.
- It will never have the same feature set and possibilities as some big CMS out there backed by a community.
- It doesn’t make sense job-wise: In the long run, either I’m working full-time on my CMS or I’m starting to learn another, widely used CMS and abondon my own.
- I came to the conclusion that big and even fat systems might not be that bad after all. Once you know such a system, you can use it for nearly every website you need to built. Many people argue that you don’t need most of the features for a majority of websites and therefore should use smaller, more tailored systems. I disagree. It’s a better use of resources to learn everything about one system than to know only bits and pieces about several systems. And if you build a small website that doesn’t need most of the features of your system, so what?
Although those reasons would be enough for me to change my mind now, they weren’t the trigger. It all happened because I discovered FLOW3. It was all that I dreamed of and many things that I haven’t even dreamed about! It was just so close to what I wanted to build that it didn’t make sense to build it myself anymore. And if this is what’s coming up for TYPO3, it seems to be a good choice as a CMS. Moreover, as TYPO3 v5 is just about to take shape, I have the chance to know the system in depth before it goes live. I already feel quite comfortable using FLOW3 and I’m looking forward to program extensions for TYPO3. Besides, it’s a good choice job-wise: most agencies in Middle Europe use it.
So where does that leave us? I’ll still maintain the websites that use my own system, but I won’t develop it anymore. And as time goes on, I might switch the engine to TYPO3. Probably not before version 5 is out because I think version 4 still sucks a lot. And there is no real need to stop using my CMS, it works fine. It just reached the end of it’s capabilities. Don’t get me wrong: I’d love to develop my own CMS further, implement my ideas and see how well I can do. But I came to the conclusion that it’s pointless to a certain degree as it will never be able to compete with big systems unless I’m working full-time on it.
And that’s why I’m hoping that FLOW3 / TYPO3v5 will be so good that I never wish to write my own system again.