• Home
  • About
  • Sample Apps
  • Videos
  • Jazoon 2009

    June 12th, 2009

    At the Jazoon, the international conference on Java technology (Zurich, June 23-25), James Gosling, the father of the Java programming language, will deliver the opening Keynote. So if you missed JavaOne this year, just attend Jazoon’09 and benefit from inside information and updates, but also get latest news about the future of Java. 

    Besides James Gosling, Jazoon’09 features many other interesting speakers from the Java world including Neal Ford, Ivar Jacobson, Adrian Colyer and Danny Coward. As a special guest we are pleased to announce Linda Cureton, CIO of the National Aeronautics and Space Administration (NASA) Goddard Space Flight Center in the USA. She will deliver the Jazoon’09 closing Keynote.

    Moreover, as the first developer conference in Europe, Jazoon’09 launched a competition for young speakers aged 26 and under. Out of the several dozen submissions, an expert jury has selected the three most promising. The finalists of the Canoo sponsored “Jazoon Rookie 2009” are:

    João Arthur Brunet Monteiro - Brazil
    Bettina Polasek - Hungary
    Deni Lukmanul Hakim - Indonesia

    On 24 June 2009, the conference audience and the jury will vote on the winner. Canoo is very exited to be involved in such an event, as the contest is an opportunity for creative minds under the age of 26 to present their ideas to a broad public of experts. Facing the present shortage of skilled IT specialists, it was an obvious decision for Canoo to actively support the advancement of young professionals and new ideas. 

     


    Interview with Canoo Fellow Dierk König

    June 4th, 2009

     

    Scott Davis interviewed Dierk König, Canoo Fellow and Grails/Groovy-Evangelist for Thirsty Head at blip.tv. In the interview, Dierk gives an inside-view about new Grails improvements, about his JavaOne talk, JavaFX and the impact of Canoo Webtest. Enjoy this interesting chat about “beauty and code”!

     

     


    PillarOne: Open-Source Framework for Risk Management Uses UltraLightClient and Grails

    April 3rd, 2009

    BrusselsOver the last two days I attended the PillarOne Conference in Brussels. (PillarOne Conference? Never heard before? That’s probably because this is the first time this conference has taken place.)

    The main focus of the conference was not about Web applications or Rich Internet Applications; it was about risk management in the financial sector and how open-source software can assist in averting financial collapse of the kind we’re currently facing.

    Over one year ago Munich Re (one of the world’s largest re-insurers) initiated the development of an open-source business application suite entitled PillarOne. PillarOne seeks to address every aspect of reserving and risk analyses of insurance companies. Open-source has particular relevance to this business: Identifying and simulating risk cries out for openness and for a strong community that actively validates the applied models and methods. There is absolutely no doubt that conducting Risk Management behind closed doors and concealing models behind inappropriate tools like Excel has contributed to the current financial crisis.

    Intuitive Collaboration\'s Markus Stricker points the direction of future risk management tools.
    Intuitive Collaboration’s Markus Stricker points out the direction of future risk management tools

    Risk management tools like this also have special requirements which are perfectly met by Rich Internet Application technology like UltraLightClient. Firstly, the complex models and simulations need highly interactive and responsive user interfaces designed for power users. Secondly, truly capable risk management tools must be enterprise solutions with all features these solutions normally have (central database, logging, historization, multi-user synchronization etc.). On the other hand, risk managers are used to having their tools on their laptops being fully functional even if they are off-line. Intuitive Collaboration – the company behind PillarOne – has chosen Grails and UltraLightClient because they meet both these requirements. UltraLightClient is a web-based user interface technology that in conjunction with Grails enables the cost-effective implementation of web applications with the most sophisticated user interfaces that are vital for handling the complex domain of risk management and simulation. Moreover, an application can be deployed as on an enterprise server or as standalone tool on a risk-manager’s laptop without changing a single line of code in the application.

    SAP Demo
    Canoo’s Dierk König and SAP’s Christos Lemonidis demonstrating the SAP integration of ULC and Grails based PillaOne

    That PillarOne is a milestone for risk management tools is underlined by the fact that SAP has chosen this platform to offer Solvency II compliant risk management to its insurance customers. Just in time for the conference, the UltraLightClient-based PillarOne was successfully integrated into SAP and shown at the conference as an online demo to a captivated audience.

    The conference was attended by a large number of risk managers and regulators, one of whom (a speaker) was bold and self-effacing enough to describe the current crisis as “collective failure of a whole profession”. Whatever the full spectrum of reasons behind this collective failure is, the potential of an open-source tool such as PillarOne is to provide the system with a degree of transparency and robustness that would have been unthinkable a few years ago. This has got to be a good thing for all citizens, not just risk managers!


    How Rich Internet Applications can save taxes

    November 26th, 2008

    Switzerland and the EU are committed to utilizing the benefits of the Internet and Web technology in order to streamline their administration and to make it easier for the citizen to interact with his or her government. In its role as service provider, governments seek to provide a single point of contact (a portal or a human public servant), who guides the help-seeking citizen through a complex web of public administration. This – at least – was the message of the eGovernment Symposium held in Bern on Tuesday November, 18th 2008.

    SAP\'s approach to user-centricity

    One of the topics covered in depth was user-centricity – of course an essential point if a government is serious about making engagement with public administration easy for its citizens. As a tax payer I was a little bit worried about the fact that SAP is contributing its complex Netweaver™ technology to the user-centricity discussion (see image to the left – sorry, I have only a German version). But if the ones responsible for eGovernment follow the suggestions of Christian Wanner from LeShop - the Swiss Amazon for food supply – I feel more comfortable again. The value of the experience he gained over several years cannot be understated. To summarize:

    1. A user interface – especially on the internet – can never be simple enough.
    2. Users do not read instructions – and if they do read them they frequently do not understand them correctly even if your developers are convinced that everybody in the world can understand them.
    3. Let real users randomly chosen from the street (not the colleague at the next desk) try out the user interface – you will see the proof for the first two points.

    There is one important point I would like to add to this: Governments should take great care when designing and implementing user interfaces for their public servants, who are to subsequently provide services to the citizens. Following this advice can actually lead to dramatic tax savings, and here’s why: Offering a public web interface to citizens requires that internal processes are automated. These proceses will frequently cross the border of departments – especially if a single point of contact shall provide complex services as, e.g., founding a company. Thus, public servants need effective interfaces to sub-service providers. Tools should be designed to support the productivity of the public servants as much as possible in executing such cross-departmental processes.

    Wasting the time of our public servants is wasting our taxes.

    Public servants as web application users require sophisticated (not complicated!) interfaces. In contrast to a citizen who – hopefully – only rarely has to use the web interface to contact public administration the public servant will use his or her tools very frequently – perhaps every day, many times a day. A citizen, therefore, requires self-explanatory interfaces – interestingly in most cases perfectly covered by pure HTML-based applications (no Ajax required). Our public servants on the other hand, need highly optimized, but not necessarily self-explanatory interfaces. It is worth spending some tax Francs or Euros on the training of staff on the systems. They will return our investment very soon by being more productive (or at least their tools are not to blame if they are not productive). 

    Different user-interface paradigms for different user types

    Such interfaces cannot be implemented using standard HTML-based technology. They require a different interface paradigm – instead of forms and pages that are filled up and read one by one in a sequence (request-reply-style) – the interfaces for our public servants must be highly interactive, asynchronous, and in a position to display and change more than one thing at a time. This is normally best covered by event- and component-based user interface technology, such as we know from desktop applications like office tools (cf. picture to the right).

    Thus, Rich Internet Applications are vital for implementing eGovernment and making our public servants effective which – in the end – means that our governments will save money (our taxes!)

    I hope that user-centricity as discussed at the eGovernment symposium is taken seriously and that session chair Peter Fischer’s closing words will not come true: “User-centricity means that the user is always standing in the center and, therefore, in everyone’s way.”


    Canoo @ WJAX/SOACon 2008

    November 17th, 2008

    This is just a quick note about the WJAX Java developer conference that take place last week in Munich.

    The conference program was quite balanced and beside the main stream topics about SOA (ServiceOrientedArchitektur – represented by the SOACon conference), Spring, Application Security and OSGi there was a huge number of different topics, which were addressed by several talks.

    Most interesting from my point of view were following sessions:

    • Keynote from Jonas Jacobi: Re-architecting the Web with HTML 5 Communication.
    • Talk from Karsten Lentzsch: Efficient design of swing UI’s.
    • Talk from Angelika Langer: Java programming in the age of multicore.
    • Talk from Dierk Koenig: RESTful JEE with Grails.


    Canoo was exhibiting on a booth, which gave the great opportunity to present and talk about our products UltraLightClient (ULC), the just released language application for the IPhone (using canoo.net), our demo for the new JavaFX platform and fancy UltraLightClient / Swing rich client applications. In addition Canoo members used the presence to keep in touch with existing costumers, contact new ones or presented the company to potential new staff members.

    Canoo Online Quiz

    All the visitors on the booth and all other interested software developers had and still have the possibility to join an online quiz. Its possible to win an iPod touch or one of ten ‘Groovy in Action’ books. The quiz can be found at www.canoo.com/quiz and will end at the 30.11.2008.

    Dierk König, Canoo fellow and author of the ‘Groovy in Action’ book, was holding a groovy workshop and was giving a talk about RESTful JEE with Grails.


    Canoo.net Talk at BlogCamp Switzerland

    September 9th, 2008

    Stephan Gillmeier and I attended the recent BlogCamp in Zürich, Switzerland.

    Stephan presents the Canoo.net blog

    Stephan Gillmeier presented an excellent talk on Canoo’s German language blog “Fragen Sie Dr. Bopp” (in English “Ask Dr. Bopp”):

    www.canoo.net/blog

    This is where Canoo’s chief linguist Dr. Stephan Bopp publishes some of the questions we receive at www.canoo.net.

    As a special highlight, Stephan Gillmeier revealed one of his plans for Canoo.net:

    Look up German words from your iPhone

    An iPhone application to look up words on Canoo.net.


    Canoo CEO to present course on RIA and AJAX at ETH Zürich

    September 3rd, 2008

    Hans-Dirk Walter, CEO at Canoo EngineeringCanoo’s CEO Hans-Dirk Walter is presenting a one day course on Rich Internet Applications and AJAX on 12th September 2008.

    The RIA course is part of a three day training “Web-basierte Informationssysteme” from 10th to 12th September 2008 and will be held in German at the ETH in Zürich. Participants may choose to attend only one day or the entire course.

    Praktisch alle Menschen haben Zugang zum “Web”, sei es privat, dienstlich oder zunehmend auch mobil. Das Web ist damit praktisch jederzeit für jedermann verfügbar. Der große Erfolg des Webs liegt darin begründet, dass das Web die Kosten für das Abrufen und Bereitsstellen von Information stark reduziert hat. Dieser dreitägige Kurs stellt die grundlegenden Technologien des Web und der Entwicklung von Web-basierten Anwendungen vor. Am ersten Tag werden Web Services und dienstorientierte Softwarearchitekturen (SOA) vorgestellt, die die Grundlage für verteilte Informationssysteme bieten. Am zweiten Tag wird XML als eine der grundlegenden Technologie zur Repräsentation, Speicherung, Austausch und Verarbeitung von Information vorgestellt. Am dritten Tag werden Rich Internet Applications und die Programmierung von modernen graphischen Benutzerschnittstellen behandelt.

    Here is a summary of the RIA topics that will be presented (in German):

    Rich Internet Applikationen (RIA) sind die nächste Generation der Webtechnologie. Sie verbessern die Benutzerschnittstellen und erweitern den Anwendungsbereich von Webapplikationen entscheidend. Ihr wesentlicher Beitrag: sie verbinden die Vorteile server-basierter Web-Technologie mit Interaktionsmöglichkeiten für den Benutzer, die man sonst nur von lokal installierten Desktop-Applikationen kennt.

    Durch das Schlagwort AJAX und Anwendungen wie Google Maps, Flickr oder e-Opinion, die mit dieser Technologie implementiert sind, wurden Rich Internet Applikationen über die technische Entwickler-Community hinaus bekannt.

    Häufig wird übersehen, dass AJAX nur eine (sehr einfache) Implementierungsalternative ist, um das übergeordnete Ziel ergonomischerer Benutzerschnittstellen zu realisieren. Dieser Kurs gibt einen Überblick über die Ziele, die man durch den Einsatz von RIA Technologie verfolgt, die Architektur und Entwurfsmuster für Rich Internet Applikationen sowie einen Überblick über Technologiealternativen, um solche modernen Systeme zu realisieren. Zusätzlich zu den Konzepten werden Demonstrationen und praktische Beispiele geliefert, um eine richtige Erfahrung mit diesen Technologien zu bekommen.


    Summary of the Course Details:

    When: Wednesday 10th September 2008 to Friday 12th September
    Where: ETH Zürich, IFW-Gebäude, Hörsaal A 36 , Haldeneggsteig 4
    Lecturers:
    Prof. Dr. G. Alonso, ETH Zürich
    Prof. Dr. D. Kossmann, ETH Zürich
    Dr. H.-D. Walter, Canoo AG
    Course name: Web-basierte Informationssysteme

    ETH Zürich Kompaktkurs zum Thema RIA und AJAX


    Register for this course
    at the ETH Zürich website.

    This course is part of an ETH Zürich course program for IT professionals called “Kompaktkurse für Informatiker”.


    Jazoon 08 Day I

    June 25th, 2008

    jazoon

    Here are some quick notes on the sessions I attended yesterday at Sihlcity. I believe Jazoon will be uploading videos and slides very soon:

    First in my lineup was a talk on using Google Web Toolkit for a business application in a typical enterprise environment. This was kind of like a case study. Dmitry Buzdin talked about the experience his company gained and listed the various pros and cons.

    Next, I listened in to Bruno Schäffer’s talk together with Christoph Henrici and Daniel Buffet of APG. The talk described the migration of an Oracle Forms application to Java forms for the advertising industry. Main requirement: development and application performance had to remain just as fast as with Oracle Forms. A requirement that the migrated application managed to over-fulfill.

    IMG_5023

    Canoo’s Andreas Hölzl and Christian Stettler presented their Google Android experience report. They showed an application they developed for the Android Developer Challenge called Mobile Zoo. Their baseline: “What’s here looks promising. Let’s see the devices!”

    Brian Sletten’s presentation on data-driven applications was very interesting. I particularly liked the analogy between resampling music and data.


    Canoo @ Jazoon

    June 13th, 2008

    Here’s an overview of the technical sessions that Canoo will be presenting at this year’s Jazoon from 23rd to 26th June, 2008 in Zürich.

    Sibylle Peter and Dieter Holz are presenting “Why RIA is not only about technology”. See also my recent write-up.

    Canoo CTO Bruno Schaeffer is presenting “Against all odds – efficient Rich GUI development in Java” together with Christoph Henrici and Daniel Buffet.

    Dierk Koenig is presenting two talks:
    “Grails: all you need for Java Enterprise webapps”
    and “Automated functional testing of web applications” .

    Andreas Hoelzl and Christian Stettler are presenting a talk on RIA for mobile devices, “Google Android and developer expectations: a ‘real world’ report”.


    Why RIA is not only about technology

    May 22nd, 2008

    I attended today’s Orbit-iEX talk on Rich Internet Application strategies and frameworks by Sibylle Peter and Dieter Holz of Canoo and Markus Pfeisinger of Crealogix.

    Here is a summary of the talk in my own words.

    Disclaimer: if I get anything completely wrong, please feel free to leave a comment or add your own thoughts.

    The first part of the talk presented some issues you should consider if you are moving into RIA development.

    Many developers that first start out in RIA development have lots of experience building HTML applications. They are in the phase where they have recognized the need for RIA. They have selected an RIA technology (e.g. based on AJAX, Flash or Java). They have started implementing first projects.

    The talk identified 5 frequently-encountered misunderstandings regarding RIA development within this first phase.

    IMG_4131

    Similar to the Phelps tractor (a steering mechanism that was useful for horse-drawn carriages, was not as useful for motorized cars), there is more to RIA than just exchanging the technology.
    For example in HTML applications, check boxes are frequently used to select more than one entry. This works well for HTML apps, but in RIAs these check boxes are no longer required because multiple table entries can be selected directly.

    RIA technology offers more user interface components. Developers need not rely on typical HTML conventions to build their applications.

    Similarly, paging in HTML apps is useful because it offers a way to manipulate long data tables.
    But in RIA, paging is no longer required. Here Sibylle compared the Zimbra web email client with Canoo’s sample app ULCMail. Zimbra is available as an HTML client and as a richer “advanced” version offering some AJAX features. But both versions offer the same user interface, even though the advanced version feels more desktop-like. Using paging for a richer interface like this can be even confusing.

    Another misunderstanding is that RIAs need to be self-explanatory. Sibylle showed this interesting graph:

    IMG_4132

    which positions applications from simple look-up HTML apps via typical RIAs and productivity tools to games based on the frequency of interactivity and GUI richness.

    With RIA you can get a lot closer to productivity tools.

    A typical target group that requires productivity tools are office or knowledge workers. Typically this group uses an application for long periods of time per day and is thus motivated to spend more time learning how to use it.

    Applications need to be fast, interactive, smart, offer a good interaction design. And they need to be robust and stable since they are used daily. I.e. efficiency is important, more important than ease-of-use.

    Misunderstanding number 3: many developers believe RIA frameworks can be built without much prior experience in the new technology.

    For example, HTML apps have a sequential page flow. A request is sent to the server and
    every request has a separate page view. Typically a view does not need be observable and does not need to be monitored.

    RIA does not have a sequential page flow. Views need to be monitored.

    IMG_4137

    RIA frameworks need to sync various different views for the same data, allow modifications to a selected item, etc.

    Misunderstanding number 4: RIAs can be “generated” from service definitions. In HTML apps there is a “one to one” relationship between views and service calls. In RIA this is a “one to many” relationship and interaction design becomes important.

    And finally the last misconception developers have regarding RIA development is that presentation logic is the same business logic. In general, HTML apps tend to have less presentation logic.
    For RIA, the views are more complicated and you need to separate between presentation logic and business logic. RIA requires a presentation model to watch and monitor the views.

    For example, if you enable a button after a form has been edited, this will need to be monitored in some way.

    The talk offered an overview of the effects that RIA development will have on your software architecture:

    RIA is event driven. A presentation model is used to administer the presentation logic.

    RIA requires a different kind of service:

    • fine granular requests to service layer
    • service design independent of view design

    Application components are reused in a different way (reuse of the actual code instead of by URL).
    And the presentation logic and business logic will differ.

    Regarding the general setup of projects, RIA requires more input regarding:

    • interaction design
    • the distribution of business logic and presentation logic
    • framework development and integration (some AJAX libraries are still fairly new
    • and there is some need to build component libraries, esp. for large, complex applications

    The interaction design needs to consider the possibilities and limitations of RIAs, the target audience, what domain knowledge is available, as well as usability engineering.

    Besides these typical pitfalls,
    RIA is the way to go to provide efficient and fast web applications for power users, offering

    • better interaction
    • better work experience
    • performance
    • robust
    • good look and feel

    In the second part of the talk, Markus Pfeisinger presented to frameworks for Adobe Flex / Flash development:

    • Cairngorm
    • PureMVC

    He briefly provided an overview of their main characteristics and discussed the benefit of using a framework in general and these two in particular. He seems to prefer PureMVC.

    Finally, he gave a short peek view of the Flex Code Generator.

    Interesting aside: Markus used Sliderocket to present his slides.