Working in web development often requires the use of different CMS packages that have certain advantages or disadvantages. At work Typo3 and Drupal are the most often used content management systems. I will make a short comparation from a web developers perspective on these two packages.
Learning to work with them
I first started to work with Typo3 and i must say that Typo3 is hard to learn. The documentation is scarce and very badly structured. It is a nightmare for every beginner. But once you start to learn the inner workings of this package you become more and more amazed by the power that is under the hood of this CMS.
Drupal is somewhat luckier having more documentation and more books written about it. Learning to work and develop sites using it is easier somewhat.
Working with forms
Drupal has a very ingenious system for forms. I was amazed when i learned to use it. You just need to create a configuration array for forms and call them from your module. Drupal will take care of generating the forms and submit it and validate it according to your preferences. And the AHAH form property is just killer. It will make Ajax calls and update the forms accordingly.
Typo3 has some plugins for forms and frontend editing but they aren’t there yet where it should be, it’s just a pain sometimes to use multilevel forms.
Drupal comes with a default template and you can start using that right away. Typo3 comes empty, you will need to create a template and code it into your project. You would think that Drupal is better from this point of view. But this is not true. Drupal’s templates aren’t really to good. That’s because in Drupal’s templates PHP code is mixed with HTML, the two aren’t separated as clearly as it should be. If you work with a designer who can make HTML code for you but he has no PHP knowledge, he will have a hard time working with Drupal templates.
In Typo3 HTML templates are what the name says, pure HTML with markers for different content elements. So creating a template is pretty straightforward even for people with no coding experience.
Drupal is well suited for community sites and often you just need to enable some modules bundled with the package like blog, forums, poll, faq management and modify the templates. But the problem is that often these modules provide basic functionality and they just aren’t what you want in your app.
In contrast Typo3 is much more complex and you can customize everything. You don’t have bundled plugins like forum or blog but you can download them for free from the extension repository. And most often they are more powerful and much more customizable then those included with Drupal.
Pros: documentation, forms, out of the box functionality
Pros: templating, highly customizable
Cons: hard to learn
Both CMS packages have their pros and cons, it depends on the developer to choose the right CMS for the job required to be done. Because for some projects is more suited to use Drupal and for other projects is better to use Typo3. But the conclusion is that you need to learn them both, you might need one or another.