{"id":2870,"date":"2009-07-02T10:39:00","date_gmt":"2009-07-02T15:39:00","guid":{"rendered":"http:\/\/www.redmonk.com\/cote\/2009\/07\/02\/apache-pivot-brief-notes\/"},"modified":"2009-07-02T10:39:00","modified_gmt":"2009-07-02T15:39:00","slug":"apache-pivot-brief-notes","status":"publish","type":"post","link":"https:\/\/redmonk.com\/cote\/2009\/07\/02\/apache-pivot-brief-notes\/","title":{"rendered":"Apache Pivot &#8211; Brief Notes"},"content":{"rendered":"<p class=\"pic\">\n<a href=\"http:\/\/www.flickr.com\/photos\/cote\/3598148795\/\" title=\"Web UI Landscape by cote, on Flickr\"><img loading=\"lazy\" decoding=\"async\" src=\"http:\/\/farm3.static.flickr.com\/2453\/3598148795_a5df425a44.jpg\" width=\"500\" height=\"375\" alt=\"Web UI Landscape\" \/><\/a><\/p>\n<p>While Adobe, Microsoft, and Google\/HTML5\/Mozilla are battling it out to capture the UI-space of the 2010&#8217;s (how are you supposed to say &#8220;2010&#8217;s&#8221;? &#8220;The teens&#8221;?), there are a handful of other efforts to provide a post-Ajax UI layer. The <a href=\"http:\/\/incubator.apache.org\/pivot\/\">Apache Pivot<\/a> project, now in incubation, is one I came across recently. Essentially, the Pivot team &#8211; mostly from VMWare &#8211; have been working on Java-based GUI UI from the ground-up.<\/p>\n<h2>Pivot Overview<\/h2>\n<p>Rather than use existing (and much despised by all &#8211; see JavaFX) Java GUI toolkits like AWT or Swing, they specify their own UI markup language (WTKX), which then sits directly on-top of Java2D and other GUI widgetry to render UIs. Thrown into this mix are concerns for web-based networking (like running in the browser&#8217;s Java plugin and providing server side components for data access), and you essentially have a framework for what we&#8217;d call a &#8220;Rich Internet Application&#8221; (RIA) now-a-days, minus the video. I&#8217;m always more into the UI- rather than the video-side of RIAs, so that&#8217;s really no issue for me.<\/p>\n<h2>Architecture, etc.<\/h2>\n<p>Pivot is divided into a few broad buckets:<\/p>\n<ul>\n<li>core &#8211; non-UI classes for utils and such<\/li>\n<li>web &#8211; platform support for server communication; REST<\/li>\n<li>WTK &#8211; windowing tool-kit, component definitions and then another library that provides the skin (like Swing) <\/li>\n<li>charting package &#8211; plugin to JFreeChart<\/li>\n<\/ul>\n<p>For more technical detail, check out <a href=\"http:\/\/www.insideria.com\/greg-brown\/\">the Apache Pivot posts from Greg Brown over at InsideRIA.com<\/a>.<\/p>\n<h2>The RIA Market<\/h2>\n<p>Being at the ASF, Pivot is going through the <a href=\"http:\/\/incubator.apache.org\/incubation\/Incubation_Policy.html\">incubation process<\/a>, meaning it&#8217;s getting vetted and otherwise &#8220;put into shape&#8221; to be a full fledged Apache project. I wouldn&#8217;t expect Pivot to be a major market competitor for the likes of the Flash Platform, Silverlight, or even Ajax anytime too soon.<\/p>\n<p>That takes a dedicated commercial and marketing effort which the ASF really doesn&#8217;t care to get involved in itself, and I don&#8217;t get the sense that the Pivot dudes will extract a Covalent or Cloudera out of the project anytime soon. That said, as the spread of Eclipse&#8217;s UI layer has shown over the years, there&#8217;s a deep yearning in the Java community for a better GUI solution. Even Sun&#8217;s conceit with JavaFX is to deliver on that desire. Closed source GUI frameworks have a tough time at it now-a-days, where-as open source ones by virtue of being free and open, potentially have an easier time to dig into the minds of Java developers.<\/p>\n<p><b>Disclosure:<\/b> Adobe, Microsoft, and Sun are clients.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A new RIA open source project from the Apache Software Foundation.<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,43,29],"tags":[],"class_list":["post-2870","post","type-post","status-publish","format-standard","hentry","category-briefings","category-development-tools","category-ria"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/redmonk.com\/cote\/wp-json\/wp\/v2\/posts\/2870","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/redmonk.com\/cote\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/redmonk.com\/cote\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/redmonk.com\/cote\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/redmonk.com\/cote\/wp-json\/wp\/v2\/comments?post=2870"}],"version-history":[{"count":0,"href":"https:\/\/redmonk.com\/cote\/wp-json\/wp\/v2\/posts\/2870\/revisions"}],"wp:attachment":[{"href":"https:\/\/redmonk.com\/cote\/wp-json\/wp\/v2\/media?parent=2870"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/redmonk.com\/cote\/wp-json\/wp\/v2\/categories?post=2870"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/redmonk.com\/cote\/wp-json\/wp\/v2\/tags?post=2870"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}