[TYPO3-50-general] Wild ideas, long before their time: GUI and dev tools
Mathias Bolt Lesniak, liliO Design
mathias at lilio.com
Sun Jun 22 12:54:42 CEST 2008
I think I'm skipping some steps, but here's a rant about GUI and
Preface: FLOW3 looks like it is going to be great. I am getting the
same feeling as when I tried out programming for the Mac in Cocoa and
Objective-C: It's making all of my dreams about programming reality.
Congrats to the developers, I can't wait to set up my first Typo3 v5
Lately, I've been developing a rather complicated Typo3 v4.2 backend
module for a customer. It has lots of database relations and requires
an easy-to-use GUI. That's HARD to do in Typo3 at the moment, and I
started dreaming of a better world...
These are some ideas I got:
1) INTERFACE BUILDER FOR TYPO3
For you who have not programmed for Mac OS X, look here for a short
http://www.youtube.com/watch?v=1Gdv94FzlDw (creating an iPhone app)
If you are programming for Typo3 today, you can't easily create your
own user interface for your own extension. You are stuck with the
limits of the TCA or you must go and make your own interface almost
entirely from scratch. Some of the things I'm often missing are:
- Being able to place interface elements freely
- Use "advanced" elements like steppers, sliders, calendars and
- Ajax interaction (data is saved on the server instantly, but
not committed to the public version)
- Designing my own and expanding/combining interface elements.
A lot of this can be achieved through third party extensions, but it's
not really what Typo3 is designed for. Thus it only brings you so far.
Why not let Typo3 v5 have an interface builder?
- You can drag-and-drop interface elements
- Drag-and-drop to assign actions to buttons and data to elements
- You can preconfigure formatting, special functions etc.
- You can generate new and analyze existing PHP view, model and
controller class files and functions.
- You can save it all as objects or configuration files.
Scriptaculous, and this seems fully possible.
In the Mac OS X Interface Builder you can create a working database
application with NO lines of code! That means programming is fast, and
you have more time to focus on features and usability.
2) WHY NOT A DESKTOP?
I noticed that when I imagined what I described above, I was imagining
some kind of windowed operating system. And why not?
For the end user the current Typo3 interface is not ideal. Many of the
concepts used are far from what people are used to using on their
computer. An example: Although it is a fairly straight forward
concept, I often find myself trying to explain customers the
difference between the Page and the List modules.
I often need to view multiple things at the same time, e.g.: a
TypoScript template, a page content element and a preview. I can do
this in Typo3 today, but to get up all of the three windows requires a
lot of clicking.
Make the Typo3 Backend into a web based desktop a la eyeOS (http://eyeos.org
). Today's Typo3 backend modules are much like normal applications.
Those applications again can have plugins to expand their features.
Editing a page's content would be like opening a file on your
computer. Double-click it in the page list, and I imagine it would
open in an application (called "Page"?) showing the content elements.
You could have multiple pages and content elements open in different
"windows", enabeling easy comparison.
This desktop-like Typo3 would be a very easy concept for users to
understand, and through skinning it could be almost identical to
whatever OS they've got on their computer. (Can the learning curve get
Disclaimer: I'm not a part of the Typo3 v5 team, so I don't know which
thoughts others may have, or what's preferred, but I hope this can be
a source of inspiration. I'd love to help make it reality, though it
goes beyond my programming skills and available time to get even close
to it on my own. :-)
Best wishes, and keep up the good work!
Mathias Bolt Lesniak
LiliO Design - www.lilio.com
mathias at lilio.com
More information about the TYPO3-project-5_0-general