Why GWT is our framework of choice

Why GWT is our framework of choice There are many things that drive the framework choice. Nuospace is quite a challenge technically. Web applications have become very interactive and we were solving to the best possible user experience to be competitive.

We have started the development of our new product, Nuospace enterprise wiki about a year ago. We wanted to give business users an ability to collaborate on any type of document, be it a wiki page or a Word document, easily and efficiently right from their browsers.

Nuospace was also a challenge from the technical perspective. Web applications have become much more interactive and we had to keep up with the trends to provide users with the best experience possible. Almost immediately we faced a huge issue of choosing an underlying web technology. Building rich interactive web application is hardly easy, so the right technology choice is crucial for project’s success, especially for a small self-funded startup.

There are many things that drive the framework choice. Arguably there is no single framework that is suitable for any usage scenario or application. For us the most essential where the following factors:

  • outstanding user experience
  • the ease of development
  • experience in the technology of choice
  • ability to resolve potential issues quickly and effectively
  • vibrant user community and quick development of the framework itself
  • reuse facilities
  • scalability
  • having fun :)

We have evaluated many solutions besides GWT: Ruby on Rails, jQuery on the client/Java on the server, Echo framework to name a few. In the outcome GWT was a clear winner:

  • GWT applications provide true interactivity with lots of code being executed on the client, reducing server-side interaction to a minimum.
    Our application indeed feels the most responsive compared to anything we have ever done before. I believe this is the most important differentiator as user experience may become the key in “buy/no buy” decision.
  • GWT is extremely easy to use, especially for Java veterans.
    We have been developing in Java for many years and while other platforms do offer many benefits (Ruby, for instance), I think that experience is one of the key productivity factors.
  • JavaScript development is far from being mature.
    There are no IDEs and debugging is pretty weak. GWT provides all the benefits of Java development – excellent IDE support with advanced debugging capabilities allowing us to code in Java only. But when we have to use JavaScript - it is pretty easy to code and integrate into the application using JSNI (JavaScript Native Interface).
  • Java frameworks like Hibernate are very rich and powerful, giving us both fast development and high performance.
  • The framework is being actively developed with cool features being added for each release. The newsgroups are active; it is very easy to find solutions to any problems by means of a simple search.
  • GWT is fun to work with.
    I believe this is a critical factor for any technology choice. The “fun” factor or absence thereof may drive or suppress motivation – the single most important productivity factor. Most of our application is plain Java code; components allow for easy and powerful reuse encapsulating parts of the UI layer into self-contained pieces; the UI is slick and very quick making all the developer feel very good about the results of their hard work.

Almost a year has passed since we launched the project on GWT and we are very happy with the framework choice. I would like to say “Thank you” to GWT team for their great work!

Explore posts in the same categories: GWT, SaaS, technology

Comment:

You must be logged in to post a comment.