Actually, I'm a British citizen living in Austria, but I'm the closest the Developer Days has to a real American.
For those of you have no idea what this cryptically named T3DD07 is, I'll give you the run down.
The Typo3 community is very active and friendly and wonderful. 100 Developers are here, including core developers and developers of some of the most used extensions. They gather to code together, to plan releases, to express interests, to give tutorials, to talk shop and to spend 4 days chatting with friends.
95 out of the 100 programmers here hail from a German speaking country. German is the language of conversation. English is the language of Tutorials. It's impressive, and the developers switch without problem between the two. My German skills are minimal despite being in a German speaking country for 1.5 years, but I do my best to follow.
The caterers smile while they set up the lunch, looking over at dozens of us peering at their laptops, scratching their foreheads.
The smoking section is continually occupied by friendly productive (and just for fun) conversation.
People yell across the room (in German): "Hey, blahblah, did you fix that bug in your extension yet?" and the answer comes: "Not yet, I can do it now, give me 30 minutes"
It became clear to me that it would be next to impossible to become an active part of the developer community without some real face time here. Everyone knows each other. It is human. You become a core member because you attended a conference and programmed your butt off on some important aspect of the core. You come here to talk about taking over the responsibility for a certain release, or a certain popular extension.
In short, the action is with the people. It's about the down-time, the relaxing, the sharing.
I attended my first tutorial today, about "Aspect Oriented Programming" - Very impressive. The 5.0 team is working hard. Some concepts they are trying to integrate come directly or indirectly from what Ruby on Rails does so well: MVC. Convention over Configuration. Other concepts are inspired by Java and cutting edge PHP6 development.
One question I had about 5.0 which I half-posed at the session was this: Where is the easy API? I'm worried. Typo3 4.0 development takes so much time because of the "Re-inventing the Wheel" syndrome. Will Typo3 5.0 development take the same amount of time because of remembering complex class names, remembering to instantiate constructors, placing programming logic in the Javadoc comments, working with very abstract classes and ideas?
Don't get me wrong, the 5.0 team is a group of very talented guys with great ideas. I just want to know "How are we making development EASIER for the programmer" This is maybe where I can fit in here, if anywhere. What can we do to develop uses that are not only kick-ass in technical implementation, but are kick-ass AND usable from day 1?
The youth cry for change and the elders defend their ground!
Lets make Typo3 more usable! cry the youth while the more experienced shake their heads and say We cannot sacrifice that feature set, it's impossible!
I'm being dramatic. Actually, all discussions are polite and friendly. A few of us are pretty concerned about the uptake of usability ideas and guidelines. Ultimately, good ideas outweigh any differences, and emotions are put aside for practical discussion. How can we make it happen?
The only worry is here: We are all programmers, and 99 times out of 100, we are forgetting the user and focusing on technical issues. Where is the love for the user? I've heard very very little about how future development will be more fun, easier, more intuitive - only about how flexible, how this feature works, and how much we will be able to do. And not a word about the UI for 5.0 outside of private discussions. I wonder what will happen?
...there are two more days after today, so we shall see!
I've yet to say hello to Kasper, I'm waiting to chat with him. He's technically resigned from his Typo3 throne and literally walked around all last night in his king's outfit.
Olivier