Battle of Rich Internet Application Clients
Most of us who were on the web in the 90s have some experience with the browser wars and those of us who are in the tech community are probably familiar with platform wars (.NET vs Java vs Other mumbo jumbo). I think for 2009 tech companies are perparing for another battlefield;Rich Internt Application Clients. Ofcourse I am not the smartest person to figure this out first, there are so many others who have already hinted about this impending battle.
There are many competitors in this field the biggest one being Adobe. With acqusition of Macromedia, Adobe is the leader in rich internet media. Their new venture Adobe Air promises to bring even flashier experience to the Desktop. I installed Adobe Air on my Ubuntu 8.10 system after it was declared stable this week. I was not able to run it out of the box on my 64 bit system as apprently one has to make a symlink of libadobecertstore.so which is in the /usr/lib folder in the /usr/lib32 folder. So for the naieve you have to do the followingas root
I tried out the Ebay application and I am failry impressed with the offering. But one thing which I don't understand is that how does it differ from a JNLP application. Perhaps in the way it's built and being more flash centered (which gives a richer user experience), but essentially the same thing could be done with a Java Webstart application.
The other big player in RIA game is Sun (or should I say Java). They have a new platform called JavaFX which tries to bridge the gap between programmers and artists to give richer media centered application on the java platform.
To check JavaFX I first installed 64-bit open source JRE as well as the 32-bit Sun JRE to get JavaWebstart and Java Plugin working in my firefox (I think the Ubuntu's Sun 64-bit JRE will be shipping soon with Java Plugin as well as it has been released). I Then tried JavaFX. Although the technology looks promising, but it's not yet production ready (it's samples page is painfully slow atleast on my ubuntu box)
Silverlight in my opnion is not a contender for the RIA War but can be a stepping stone for Microsoft to get into the RIA War. I also came across smaller names like Curl and Mozilla Prism which I was not familiar with before today. But what's interesting to see is that Google is not participating in this war the same way as other corporates. Google rather focusing on promoting it's own way of connecting people with Android and Chrome (backed by the Google cloud of applications, with offline capabilities and what not). Let's see where 2009 takes un in the RIA field.
Personally I would like to see smaller overhaead downloads and faster application peroformance and would not like to worry about where or on which platform I run the RIA/Desktop application.
Posted in Technology | no comments |
Trying out AppFuse
I was looking inot making my own spring-mvc project through maven and found the archetype:generate command. I was pleasently surprised to find app-fuse stuff within the realms of maven. These projects (maven and appfuse) are different but related projects and some times cause confusion. Appfuse basically allows devlopers to quickly setup an application for a Java EE project with the option of using state of art open source Java EE frameworks (Spring, Struts2, Tapestry). Where as maven is a build tool (like maven) with a flexible project model. It even has its own integration server by the name of continuum (which can tell devs if a build is broken).
I only ran mvn archetype:generate command and rest of the SpringMVC-Hibernate application was setup by the framework it's self. It even made it's own database and put in the required tables. It would be interesting to see how it does all of this with maven.
Posted in Technology | no comments |
Moving to Xen, maven jetty works now.
I requested my hosting service to migrate my virtual private box from a User Mode Linux setup to a Xen setup. Xen seems to be the de facto visualization solution for Linux. It has become a considerable part of new Red Hat Certified Engineer's exam as well (for which I am prepping these days). Interestingly I was having troube running jetty plugin on User Mode Linux but now I am ablt to run that plugin (jetty wont bind to port on the local UML machine, now it does).
Posted in Technology | no comments |
Spring and Google WebToolkit
I know about spring from OpenNMS as they are very fond of it. I hope that after learning the ropes of spring I would be able to contribute to OpenNMS. Our first task was to make a sample Spring-Hibernate application showing i8ln and AJAX. We chose Google Web Toolkit as our view technology. Even though I was suppose to work on the testing of the system, I some how found my self doing the view part. The toughest part of GWT-Spring project is it's integration. GWT basically throws out a bunch of html and java script which is then used along with a server side portion programmed in spring. Every call is an RPC which makes things bit tricky. In short we were unable to write a simple application in 3 days just because of integration.
We will be focusing on using other view technologies like tiles, dwr etc to get our view component done. But I will definetly lookinto GWT more thoroughly at a later point.
Posted in Technology | no comments |
Mock JAVA web-application using struts-hibernate
On my new job's first project, I am to be a part of an team which is to devlop an ERP application following the ISA-95 standard. We are basically trying to achieve what another organization failed to achieve using similar technologies (perhaps due to technical mismanagement, as they like to call it falling under the budget). It was decided that uptodate and best practices would be followed in making of this application. Following the contemprary application devlopment scene we chose to go with Web Based front end for the application over Java EE (or alike platform). Since the application is to be based solely on open source technologies we had to research our options. We initially went with Struts 1.x just to get a feel of how MVC would work. We also decided on methodology (ie 30% effort on design , 40 % implementation and 30% QA) and followed it to the best. I was more involved with the Unit testing part of this mock application using struts-test.
We chose MyEclipse, Struts 1.x, and Hibernate for this task. I had previously read about Struts but never really worked on it. So this was essentially my first experience with it. Although it seems like a decent framework, but I fail to see how it could have swept so many people away. Perhaps it was first of its kind providing application developers with options unheard of at that time. But nothing is new these days which is provided by barebone Struts 1.x. Perhaps I am dead wrong and I have not explored to elegance and depth of Struts, but rest assured that I wont be any time soon. It seems that the actual project would be Spring-Hibernate based.
I was more focused on the Unit Testin part of the project. UnitTesting of a struts app can be done via Struts-Test which is an extension of JUnit. It provide capabilities for Mock HTTP testing.
Update : After reading bit on Matt Raible's site , I would in future evaluet Strurt2 as well
Posted in Technology | no comments |