We position Kauri as a REST-centric Java web application framework, and ourselves as Java developers, but the reality is that we are doing more and more with Javascript.

Web-applications moved from being “thin client” to “fat client“: every web-page can be a complete application downloaded into your browser. Web development is now about exposing server-side resources in a RESTful way, and developing fat clients using Javascript.

Previously web-frameworks focused on the thin client model. They offered solutions for managing transient application state: sessions, conversations and the like. Often they helped developers by hiding HTTP, URIs and HTML (not a bad thing per se). All UI-logic was on the server, sometimes enhanced with some optional client-side Javascript.

But this is more and more a thing of the past. Kauri counts on the browser to keep interaction state. As a consequence, for UI work the balance is moving from Java to Javascript. Major parts of application front-ends are now developed as Javascript running in the browser (cfr. Kauri Forms). Interestingly, this also means there is more shared ground between web-frameworks that employ different server-side base technologies.

For completeness, I should mention that there is still a lot of Web-centric server-side work. Neither does the focus on Javascript mean that I’m talking about Gmail-style single-URI applications.

While we can now develop richer applications, it did not necessarily become easier. But if you are interested in working on a platform focusing on RESTful web application development, with a broad scope, and rich browser-based clients, check out Kauri.

One Response to “Web applications: Java vs Javascript”

  1. John kealy Says:

    Does this new reliance on the client open us up to problems when building sites that are used by people with disabilities?

    I’ve never used a screen reader, so I am unsure how they handle dynamic content via JavaScript, but in the past JavaScript has been problematic.

    Tracking state via the browser is useful and unlikely to cause many problems, but dynamic calls that upload content to divs might be a problem… anyway just a thought

    cheers


Leave a Reply