The year 2008 has come to an end and i am excited to look into the New Year with a review of the year 2008. This has been a mixed bag starting with loosing my back pack in New York, moving to Oracle in February, very nice technical sessions at EclipseCon 2008, happiness of becoming a father in May 2009 and finally with preparations to attend the EclipseCon 2009 again.
This year has been terrific with the proliferation of new technologies and frameworks. I have been hearing a lot about the following technologies in the year 2008.
Mashups : JackBe is an Enterprise Mashup software company and has the series of products like Presto Server, Presto Composer and Presto Connectors. They also have a great Eclipse Plugin to support the advanced developer. This gives Java programmers complete control to design, debug and deploy mashups, all powered into the Eclipse IDE. As opposed to the simple consumer oriented content feeds and screen scrapping, JackBe does lot of serious work on the Enterprise level. I am extremely happy to know the Mashup company JackBe. Though in the current job i don’t work on Mashups, i have seen and understood the power of Mashups for the Enterprise/Business users and would like to really follow and see that this technology goes a long way in 2009.
Cloud Computing : A generic concept involving SaaS, SOA and Web 2.0 to provide the technology independent IT capabilities as a service. Many technology platforms have emerged this year or become famous like Microsoft’s Azure, Amazon’s EC2, Salesforce’s Platform and others. I am probably imagining that the Cloud Computing will be a huge phenomenon as compared to SaaS or SOA or Web 2.0, as this brings in too many perspectives like Servers, OS, Platforms, Frameworks, Development Tools, etc… specialized for working in Cloud.
Domain Modeling : Oops… no fumes please. I know this is not a new topic at all. I have seen too many presentations on the Domain Modeling and in general Model Driven Development (MDA) compared to last few years. A real good thing is that EMF is lot matured and is of production quality now. When i was working with Robert Bosch, we built an entire automotive IDE with the help of EMF and it was amazing to see the power of EMF and its tooling around it. Thanks to Ed Merks and others who made this modeling journey wonderful.
As i see in Europe, there are many companies using the modeling techniques to solve their business problems. Looks like in other parts of the world is yet to embrace modeling or in general MDA for the commercial products. I see fewer presentations and general discussions about this topics. Probably companies will look at the power of the domain modeling and soon will become main stream architectural philosophy.
Eclipse Community : There have been real great technologies and frameworks that have come from the Eclipse Community. I would like to name a few and i am sure that others are also equally good.
Equinox is runtime project with the reference implementation of the OSGi 4.1 and JSR 291 specifications. This year’s Ganymede release consists of the Equinox p2 component with the provisioning framework for Eclipse based applications. Many thanks to Neil Bartlett for providing a practical OSGi book in PDF under a Creative Commons license. With the help of the OSGi/Equinox, Eclipse is made available on the server too with the Rich Ajax Platform (RAP). This is a great project which focuses on running Eclipse on server side and enabling almost all the Desktop widgets on the Web Browser with the Qooxdoo Java Script library.
Single Sourcing is really exciting for me as i was involved in many projects converting Desktop Application -> Web Application and vice-versa. Of course with eRCP, now its possible to have a single source code for the Desktop application (RCP) and with minimal changes, the application can be run on the Web Browser(RAP) and Mobile Application (eRCP). Recently i worked on a three part tutorial on the IBM devWorks with full step-by-step instruction and source code.
The EclipseLink project is a runtime project to provide persistence solution focused on leading standards for enterprise Java and SOA application development. Dali Java Persistence Tools, to support the building of extensible frameworks to simplify, define, and edit Object-Relational (O/R) mappings for EJB 3.0 Java Persistence API (JPA) Entities. Oracle has many other cool runtime and tooling projects ranging from JSF Tooling, Teneo (now part of EMF) and others.
Other Products i liked : EclipseCon 2008 gave some insights into the IBM’s Jazz platform with Jazz Server and Rational Team Concert. Jazz is a software collaboration platform built on the Eclipse, OSGi and other technologies. Jazz provides a seamless integration of the work flow and software development.
MyEclipse has a powerful feature set with the support for RESTful Webservices, Maven, Java Script Tools, Spring Tools, Reports, JSF Tools and others. MyEclipse always tries to simplify the user development effort by bringing valuable plugins and services together. MyEclipse also has a Blue edition for IBM RAD and websphere developers.
I am sure i would have missed to mention a lot more exciting technologies here. I am hoping to get more time in the year 2009 to look into other technologies. Currently i am reading “The Pragmatic Programmer” and seems to be a concise book to read. Authors organized the information in a very easily consumable way and everything seems to be having a very good flow. In the first two chapters the authors gives some tips and tricks to increase and improve programmers knowledge and profile. These suggestions seems to be very intuitive and helpful, hopefully planning to implement some of them in the new year.
Wish everyone a very safe, wonderful and healthy new year 2009.