What do they have in common?
They are both about developing websites.
Both are great and extremely useful books when developing websites with Typo3.
One book spends 200 pages pointing out how exactly to make websites and interfaces clear to your users.
The other spends 800 pages describing how exactly to make full use of Typo3's powerful feature set.
Achtung! Patience and a sense of humor required to read the following!
Let's turn our attention now to my favorite scene on the mailing lists!
Noobee: I'm having problems doing something-that-should-be-easy, does anyone know the answer?
T3Pro: (sigh) Come on. You need to read the documentation. The answer is there.
Noobee: I DID read the documentation, and couldn't figure it out! Can somebody help?
T3Pro: (sigh) Ok, the answer is on page 97 halfway down the page.
Noobee: Great! I spent a few hours trying everything....why is that so complicated and unintuitive? With other-program-XYZ it is really easy! And the documentation is tough to understand!
T3Pro: Yeah...Typo3 is powerful and that means it's complicated - it is not for the weakhearted - You must be brave, daring, intelligent, handsome, and be willing to give up your firstborn to learn it!
Noobee: Um. Ok. But wouldn't it be easier to do it in-this-obviously-easier-way?
T3Pro: Memorize TSref and then we can talk, buddy.
Powerful and Complicated have nothing to do with each other.
Powerful and Hard To Use have nothing to do with each other.
Powerful and Unintuitive have nothing to do with each other.
In fact, the most powerful things in life are the ones that seem most simple.
Complicated is just complicated. It takes more work to make things simple, more thought, more effort, and more informed choice.
Simple is a part of powerful. In my view, powerful software does the thinking FOR the user. Intelligent software makes it's API and UI clean and at the same time is flexible and extensible.
Remember Occam's Razor? It's that great little theory that says (hacked into friendly conversational terms) that if you have an array of potential answers to a hypothesis, the simplest one is the most likely the correct one.
Despite being a great and extensive tool, Typo3 has a long way to go before it comes down to the level of 'difficult,' even longer before it comes down to 'challenging, but not hard to use' and God Knows if it will ever taste of 'simple and powerful.'
It's time to adopt a new attitude towards web development. The other option is to be left behind as the web-dev world gets what it wants: Easy to understand, easy to use AND powerful tools to help their business.
I'm not complaining or fail to understand the complexity of Typo3. I spend my days hacking away at Typo3 on all levels. I'm not a core developer, I'm not the guru but I get around and make a good living with it.
What I am doing is being honest.
So let's talk.
...and not about how the answers are in TSref!
We need to spent more energy paying attention to the users of Typo3.
"Users" are:
We need to turn our attention to the needs of the users, to developing usable interfaces for each group. We need to listen to what they are asking for, and be honest. Does this feature really need to be that hard to use, or are we being lazy by not making it more clear, more usable?
Typo3 is a sharing community
It's like a democracy (with most members living in Germany ;) That means WE get to decide Typo3's direction and it's fate! We have complete control! Speak loud my friends. I want usability. I want consistent API. I want to show my Content Monkeys the BE and not see a glazed look in their eyes and hear them swallow loudly. I don't want to say "I know it doesn't make sense, but click on LIST in the menu, and then find that really small button in the corner, and then ignore most of those fields on the next page, and then...."
I work with Typo3, see it's value, but I want change. I don't want to make a nice BE skin, I want a BE that is smarter than I am. Of course I'm willing to work for it, as long as there is open-mindedness and other people who feel the same way as I.
Let me ask you a question.
It might hurt, but be honest!
What percent of your clients do you actually give backend logins to? Come on! Honest now - Who enters the content. You? Or the client? Give me numbers.
Don't let yourself be cheated. If something is difficult, realize that change comes from precise explanation of your trouble and more importantly, taking yourself equal to the experienced developers. After all, you just wasted 5 hours trying to figure out how to get a templated site up. You may as well spend 20 minutes describing what your expectations were and how Typo3 could be built to properly serve you, the potential Typo3 lover.
Unless you specifically enjoy being an expert knowing your way around a really complicated system and pseudo-language (be honest, I sorta do sometimes!) then there is something for you to take home here. LISTEN. You job is a developer, and your audience are these people who are TELLING you what they care about. Listen to them, spend the time and your expertise not telling people to read TSref, but being honest about Typo3's weak spots, the places it still needs work, and going after them. Repeat: TSref is not the bible! We are allowed to change it to make it work better for us, and we are the people who have the ability to make those changes.
I work with this software. Maybe you do too. I'm not better or worse than you as a human being. Maybe you are better at Typoscript. Maybe you are a core contributor. Maybe I write cleaner code. I don't really care. I'm not here to fill my ego, and I'm not here to help you fill yours. I have huge hugs and respect for Kasper (if I ever meet him) and the rest of the core team, especially big ones for anyone just starting out and everyone in between.
....only together, with honesty and respect for each other can we create something beautiful.
Expect some detailed examples coming from me in the coming months - or run away now, as fast as you can and do your best to ignore the guy with the hat at Typo3 Developer Days.
powerful - powerful = powerful + simple - powerful
nothing = simple