This year’s Atlassian developer conference, AtlasCamp, was held in Berlin, Germany on 3-5 June, 2014. Five enthusiastic Ambientians, myself included, flew in to Berlin for the conference very early on Monday morning. In addition Wednesday’s and Thursday’s AtlasCamp, Ambientia participated in the Data Center Workshop on Monday and Atlassian Experts Workshop on Tuesday.
For a relative newcomer in the Atlassian ecosystem, participation in AtlasCamp was not only a great opportunity to hear about new and upcoming features for Atlassian’s set of tools but an excellent way to network and meet like-minded people from all around the world. And there sure were a lot of interesting people to meet and discussions to have (Hello Sweden – Hello Poland – Hello World!).
The topics and talks were all interesting but the single most important topic presented was Atlassian Connect. Atlassian Connect is a new means of extending Atlassian tools; e.g. an integration of an existing, external service to JIRA, or a new feature to Confluence or HipChat.
Traditionally, all Atlassian add-ons have been developed in Java and executed in-process on the same physical server and JVM as the host application (e.g. JIRA). Atlassian Connect is about to change that worldview once and for all – Connect add-ons are actually web services and web applications hosted on external web servers, interfacing with the host application over HTTP (using WebHooks and RESTAPIs defined by the host app). On a quick first look, the technology seems to have some resemblance with Facebook canvas app development.
Switching from the Java add-on development to programming language agnostic Atlassian Connect development need not happen overnight. In fact, the traditional (so called P2) add-ons will continue to be supported also in the future but Atlassian made it very clear where their platform is heading, and where they are expecting the add-on innovation and investment to be happening in the coming years. Atlassian has already invested a lot in their OnDemand service and Atlassian Connect is the way to create add-ons for it.
Initially, OnDemand is the one and only target for Atlassian Connect add-ons but according to Atlassian, targeting hosted (OnPremise) or behind the firewall installations of JIRA, Confluence, and others, will be possible in the future. As of when – this was still left a bit unclear. At least, no specific target dates were publicly announced.
Without a doubt Atlassian Connect will be a major concern for quite a few developers and their respective companies. First of all, web application development requires a slightly different set of skills than what the developers have earlier had to use. And not only skills but a different way of thinking about problems and their solutions. A change in perspective, in a way.
The change does not have to be quite that dark or grim. With the change in perspective and in the fundamental way of approaching problems comes a great opportunity as well. For example, hosting applications on the cloud will become a possibility. An add-on served from the cloud can serve a large number of host applications (such as JIRA) and the updates to either the add-on application or the host application do not require an update to the other. Add-ons served from the cloud can scale up and down if and when needed – the initial ramp-up costs can remain very low indeed, so add-on development will not require a great deal of investment (expect on training and acquiring knowledge).
Performance wise, Atlassian Connect makes it easier to keep the host application running smoothly and with lesser requirements for the HW environments because the add-ons are hosted on external servers. This will be especially welcome for all the add-ons that require lengthy background processing and calculation. However, for many environments the cloud will not be a viable hosting platform for any number of reasons. Perhaps the nature of the data that needs to be processed is such that it has to remain within a firewall. Or the sources of data will not be available outside that firewall. The list goes on. There is, and will be, a need to host Atlassian Connect add-ons within company premises and private clouds.
Setting up and hosting such solutions will again require a different set of skills from add-on developers. Cloud environments are bound to be easy enough targets after the initial learning curve, but when it comes to serving the needs and requirements of real-life clients – say government agencies or the military – efficient and safe hosting will be of great importance. Security, authentication, authorization, and the meaning and implications of Atlassian Connect in this context, are also of primary concern. In AtlasCamp, there was a quick 30min session about Connect Security delived by Peter Brownlow. According to the information delivered therein, it is clear that the area of security will continue to be evolving. We need to keep our eyes open, start from the Security documentation, and dive deeper in every opportunity.
All in all, Atlassian Connect seems an interesting way forward for the Atlassian platform. Add-ons in the cloud will make add-on development attractive for a large number of web developers, and it will be a bit of a game changer for the ecosystem as a whole. Whenever Connect add-ons become a real opportunity for OnPremise installations as well, Ambientia will no doubt continue to be a part of the game. Ambientia has a lot of experience in web application development and in the area of hosting so we know the territory well.