The week in qooxdoo (2008-05-30)

Conferences

Gee, this was a busy week. After the hectic preparation time for the Webinale/DLW 2008, the conference week was exertive as well. We had a lot of presentations and workshops, and the ominous murmurs about preparing in previous weeklies has now exploded into a sheer flood of blog posts with slide show offerings :). Do have a look through this week's posts to catch up with all of that. For your convenience, here is a quick overview:

Presentations:

Conference posts:

The conference itself was not an unpleasant experience. I think we have got a few new qooxdoo fans ;). Sebastian has taken some photos and published them to flickr. You may want to have a look to get an impression of the conference.

RAP

Nearly unnoticed due to all this conference stuff the RAP team has released their second release candidate on Tuesday. For details please have a look at the list of fixed bugs.

qooxdoo-contrib

Ralf Nieuwenhuijsen has published his qooxdoo frontend for CouchDB [homepage, wikipedia], which looks really interesting. CouchDB is a schema-free, document-oriented database, which among other things means that it is not relational and does not employ tables with rows and columns. Rather, it stores your JSON data structures right away! Now, that should get you interested...

The contribution is aptly named CouchDB. From Ralf's introduction: "This contribution provides client-side access to a CoucbDB server using a REST api. For this purpose, part of this contribution is also a more generic neutral rest-library". If you are working against a CouchDB backend, this one might be for you. If you don't but are thinking about a backend persistency layer, maybe it's a good time to start looking into CouchDB.

This finishes off this week's summary. Have a good weekend, and I'll be better going before I go narcoleptic ... ;).

GUI Internals Presentation

There was planned another one for Fabian. This time a deeper insight to the internals of qooxdoo's Widget system. Because the first workshop took too long there was no more time for this one. Without the oral narrative this is quite lightweight. Hope this is still interesting for you. More detailed documentation is planned for 0.8 in the next weeks.

Web Application Development Workshop

There was another workshop at the Webinale 2008 in Karlsruhe, Germany hold by me: Web Application Development with qooxdoo. The intention was to show the needs and possibilities to solve enterprise needs in web application development. This was done using the qooxdoo tool chain.

The workshop went quite good. Some people did the stuff practically during the workshop with great success. Others just followed the presentation theoretically.

For all of you who want to try it on your own, I have uploaded the workshop material to our server. The downloadable archive (about 12 MB) contains a prepared qooxdoo distribution (contains the API viewer, the framework sources and the tool chain).

Inside the archive you can find a folder Snapshots which contains three interesting folders:

  • app1: Feed Reader
  • app2: Feed Reader with usage of parts (only for build target)
  • app3: Feed Reader with usage of browser variants (only for build target)

Please have a look at the file config.json for the configuration data of the build system. This really might to be a good chance to all of you who want to learn the new generator features practically in a safe, prepared environment.

In each folder you can find a shell script and a batch file to execute the new generator (generator II). You should be able to execute all offered jobs (source, build, api and clean). For the batch files you need to have a Python installation under C:\Python25. Please install Python natively under this path (This is the default path for the Python installer). There is no need for Cygwin when using these batch files.

GUI Development with qooxdoo Workshop

Together with Fabian I did a workshop GUI Development with qooxdoo using the brand new qooxdoo 0.8-alpha1. The workshop was planned for three hours on the workshop day of the Webinale 2008 in Karlsruhe, Germany. It contains these parts:

  • Status of 0.8
  • First Steps
  • Understanding the GUI
  • Creating the GUI
  • Data Handling
  • Making It Work
  • Improving the GUI

Due to the fact that the topic is quite advanced, the workshop ended without showing the last third of the presentation.

If you were in the presentation or are interested in a qooxdoo 0.8 workshop, please feel free to download the prepared material (about 13MB). The archive contains a snapshot of the framework folder of qooxdoo. The prebuilt application steps make use of this qooxdoo version (Due to the trunk's nature to change rapidly newer or older versions may not work by the way). You do not need to have a current checkout of qooxdoo's trunk.

Try to follow the described steps on your own. Each snapshot (in the Snapshots folder) contains the full implementation done the corresponding slide. You can find step-by-step code blocks in the Steps folder. At the bottom of some slides you can find a small area where the current step is mentioned. Use this to keep in sync with the snapshot or code block.

If you have questions or comments feel free to post them here or on our mailing list. We are really interested in any feedback for this quite new presentation style (at least for us).

Advanced Object-Oriented JavaScript

The following slides were part of a talk about features and implementation of object-oriented JavaScript. The talk was given at Dynamic Languages World, the first European conference dealing with the shared concepts and frameworks of all important dynamic languages (including Ruby, Groovy, PHP, Python and, of course, JavaScript).

The talk attracted quite a number of people. Interestingly, while most of the audience was familiar with JavaScript, some important concepts like closures still seem not to part of the everyday programming arsenal. The native capabilities of JavaScript as a programming language are really fascinating, and frameworks like qooxdoo try to make them as powerful yet comprehensible and practical as possible. Especially if you are new to qooxdoo or object-oriented JavaScript, make sure to read about and also try out qooxdoo's OO syntax and features:

BOM and Animation Presentation at Webinale

After Sebastian's presentation on Monday (as part of the Power Workshops) Alexander, Martin and I had our presentations as guest experts.

Alexander's and my presentation covered the low level parts of qooxdoo. Alexander talked about the browser object model a normalized and extended layer for DOM manipulation, event handling and cross browser XMLHTTP communication. After that I continued with a presentation about qooxdoo animation a low level animation package, using the BOM layer.

Web Testing Presentation

Here is the presentation about testing Web apps with Selenium RC.

The presentation has three parts. The first is a very generic introduction to Web testing in general and should be beneficial to people who want to get an orientation in the field; the second part introduces Selenium RC, this should be beneficial for people looking at concrete test products; and the third part shows how to extend Selenium RC with custom code, which should be beneficial for people committed to Selenium RC.

The slide show is double length, first the normal presentation slides for a quick overview, and then all the slides again with notes which should make it easier to get to grips with the material without the oral narrative.

JavaScript Tooling Presentation at Webinale

In one of the last sessions of the Dynamic Languages World I did a talk about JavaScript tooling. My objective was to give a general overview over some current JavaScript tools.

I covered JavaScript linker, tools to generate API documentation, lint tools and JavaScript packer.

You can download the demo application used in the presentation. I have included a stripped down qooxdoo version so you can just download and run it.

Webinale/DLW 2008 are over

So, this was it. We're back from the conference, still a bit numb with this anti-climactic feeling you get after those events. Yesterday was the final conference day, and most of us stayed until the very end joining in into the final sessions. I enjoyed a very lively talk by Steve Bristol of lesseverything who shed some light onto how Rails deploys JavaScript. Andreas and Fabian delivered their presentations to an interested audience. Again, there was a lot of interest in fundamental issues of JavaScript software engineering as people seem to get ready to embark on more ambitious projects, beyond spicing up a Web page with a few inline JavaScript statements. Some showed real awe when faced with the fact that you can do JavaScript projects with a couple of hundreds of classes :-).

Now we're settling back in for normal project work, while still tying up some loose ends, looking through notes and getting presentation material ready for further use.

Second Day of Webinale/DLW 2008

Yesterday none of us gave a presentation, so we were mostly off roaming the offerings of the conference program. It was the first day of the main conference, and we saw much more traffic, especially at the booth. People were friendly and interested, but mainly focusing on qooxdoo as a technology, and much less on qooxdoo as a project the might consider joining. I attended a keynote presentation given by Neal Ford of ThoughtWorks on "Essence vs Ceremony". He very intriguingly pointed out that we are fighting too much "accidential" complexity in our projects, and that we should lean towards languages that allow us to focus on essentials, rather than burdening us with ceremony. A measure for that was the distance between intention and result. Well said! As far as implementation languages go, Ruby, Groovy and PHP are strongly represented at the conference.

Today, Andreas, Fabian and myself are scheduled for their presentations. Mine about Web testing was well received this morning, while Fabian is talking about JavaScript tooling later in the afternoon, and Andreas is giving actually two presentations, one about object-oriented JavaScript (in the Dynamic Languages World) and one about qooxdoo (in the "RIA Day" track of the webinale). We'll be back with more!

Next Page »
 

Control

 

Categories:

Archives:

 
SourceForge.net Logo

Bad Behavior has blocked 635 access attempts in the last 7 days.