Skip to main content
GameDev.net gamedev.net
🔒 Locked 🤖 Godot

[web] Typo3 annoyances

Started by demonkoryu Dec 10, 2007 at 4:44 AM 5 replies 2k views
Original Post
demonkoryu
demonkoryu
Hi, about 1.5 years ago I was about to write an article about Typo3's features, why it is powerful software and why I don't like it. I couldn't quite put down why my dislike was so great, there were just too many things that made me downright hate it. For those who don't know Typo3, it's a Content Managment Framework (a framework for making a CMS) that comes with a ready-to-use CMS included. The major points I made out:
  • While it's well designed and (given enough time) understandable, it's a monolithic system primarily designed to serve the machine, not the coder.
  • The documentation is downright insulting, it lacks any structure and no usable architectural overview is given.
  • The personal cult around Kasper Skårhøj is disturbing, he goes so far as to say "I believe in God and the TSRef (Typoscript reference, one of those childishly bad documents for the built-in configuration language) is your bible". WTF?
  • They manage to render any example code on their website in one line. No comment.
  • The context menu in the backend requires a server roundtrip to pop up, resulting in severe concentration disruptions for the editor and the programmer. Additionally, the whole backend is littered with very bad english. ("Your login has probably expired. Do you want to refresh it now?")
  • The only way to understand the system thoroughly is by reading the source code. No problem, if it weren't littered with overly redundant and non-technical comments. My favorite from index_ts.php:

00352 // ********************************
00353 // Get from cache
00354 // *******************************
00355 $TT->push('Get Page from cache','');
00356         $TSFE->getFromCache();
00357 $TT->pull();
00358 
00359 
00360 // ******************************************************
00361 // Get config if not already gotten
00362 // After this, we should have a valid config-array ready
00363 // ******************************************************
00364 $TSFE->getConfigArray();
Pro points:
  • It has an advanced caching system that makes it extremely fast in production use (thus the term "Enterprise CMS").
The best point is that the backend always displays this clause: TYPO3 CMS ver. 4.1.1. Copyright © 1998-2007 Kasper Skårhøj. Extensions are copyright of their respective owners. Go to http://typo3.com/ for details. TYPO3 comes with ABSOLUTELY NO WARRANTY; click for details. This is free software, and you are welcome to redistribute it under certain conditions; click for details. Obstructing the appearance of this notice is prohibited by law. I think it should be legal according to the GPL to create a version of Typo3 without most of these annoyances and release it on the web. I'm about to register a SF.net project for this cause. Opinions? [Edited by - Konfusius on December 10, 2007 6:53:46 AM]
Cygon
Cygon
I fully agree with that.

Having tried to get around Typo3 more than once, each time I found a group of users telling me how great and flexible it was, but whatever I looked at just didn't seem right.
  • The default content organization seems to not really match the purpose, as if the designer just wanted to merge all the concepts he knew from other CMSes to say "got that, too" instead of creating an elegant, understandable down-to-the-purpose architecture.

  • Important functionality consistently seems to be hidden behind tiny small buttons you have to track down below monstrously large input fields.

  • The entire thing relied on outdated and even discontinued PHP graphics libraries and attempting to use the up-to-date replacements of these libraries gets you to about 90% working until you notice you're stuck with that 90%. Maybe this has changed, it's almost been a year since I last tried.
Maybe it's just me, but I've got the feeling that whatever design choices Typo3 makes, it always goes against common sense and the system appears to be needlessly complicated.

-Markus-
Professional C++ and .NET developer trying to break into indie game development.
Follow my progress: http://blog.nuclex-games.com/ or Twitter - Topics: Ogre3D, Blender, game architecture tips & code snippets.
demonkoryu
demonkoryu
Thanks for your comment. Actually, the Graphics/Imagemagick support is about the only thing I think makes sense in the TypoScript CMS (automatic generation of menu images).

Ok, what I want to do first is to release a patchset that translate the backend comments to something more sane.

Like the module description for phpMyAdmin:

Integrated 'Third-party module', the popular phpMyAdmin interface. This allows ground level access to the database tables. The access to phpMyAdmin is authenticated through Typo3. But this is the only interference whatsoever - phpMyAdmin allows you to modify whatever you wish so be careful! Access for 'admin' users only!

This can be rewritten as

phpMyAdmin interface. This allows low-level access to the database tables. The access to phpMyAdmin is authenticated through TYPO3.

[Edited by - Konfusius on December 11, 2007 7:00:40 AM]
Sander
Sander
Quote:
It has an advanced caching system that makes it extremely fast in production use (thus the term "Enterprise CMS").


I hope that was sarcasm. I use Smarty for all my websites. It has a caching system. Does that mean I build enterprise systems? I hope not!
demonkoryu
demonkoryu
Well yes, there was an awful lot of sarcasm in that sentence.

It has an advanced caching system that makes it extremely fast in production use (thus the term "Enterprise CMS").
means that quick response times make inter/intranet (enterprise) users more productive.
Wan
Wan
Although slow response times are certainly annoying, a proper and understandable user interface is far more important to increase productivity. I have had a little experience using Typo3 about five years ago, and one of the things I remember was the absolute dreadful user experience: complicated trees, unnecessary menus, icons the size of electrons, etc. Considering I am an 'advanced' computer user, trying to explain the system to your everyday customers would be a potential nightmare. Things may have improved over the course of time, but if your pro/con list is accurate it seems that it hasn't caught up with the keeping-the-web-simple-and-user-friendly philosophy.

The first thing to ask is what you need the CMS for? For less tech savvy clients? Find a proper system that is simple and looks nice. The overwhelming majority of the users will never even need to use the advanced features, so they might as well not be there to add to the confusion. Take a step back from your developer's view and take the average user in mind. Is it only for personal use? Then why care about what the source code looks like? If it lacks a functionality, hack it in and be done with it. No use in wasting time rewriting all of it. I have seen dozens of content management systems come and go, because people think it a good thing to have your own system. It's not. It's the analogy of game engines in game development.

Either way, find alternative CMS or, if you must, build your own from scratch, taking in mind any smart things you have may come across when reviewing the code. Caching results or pages isn't rocket science and certainly not a reason to start fixing a fundamentally broken system.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.