I'm an Integration Consultant and part of Infomentum's wider integration team. As well as being a MuleSoft trainer, I'm a certified MuleSoft developer and an Oracle SOA suite specialist.
Back at the beginning of this year, I received an invite to MuleSoft's London conference on 17th May. As a MuleSoft trainer, I jumped at the chance to attend - and last Wednesday I spent the day getting the latest news, techniques and tips from the world of MuleSoft. If you weren't there well, don't worry, because I've got the lowdown from the day.
Setting the scene
I'm originally from Italy, and these big events aren't common there, so I have to admit that I was a bit excited to attend my first one. I was imagining a big conference where they make you feel part of something great and special. And the reality didn't let me down.
I arrived before 9am, got a quick look at the Mule himself, and grabbed a bite to eat before the keynote. At 9am, a booming voice from the speakers said that was time for the first talk of day. That was it confirmed: the MuleSoft Summit 2017 was officially starting! Moving to the main stage, I saw more than 1,000 seats available, but what grabbed my attention was the big screen and the scenic design of the stage; yes, I thought, MuleSoft are going all out for this event - it was the big scale conference I'd imagined.
Ross Mason. Topic: How Application Networks are Delivering Agility
After a short video introduction, Ross Mason, MuleSoft's Founder, took the stage. He immediately grabbed my attention: this guy knows how to speak in public. His opening question was straight to the audience: "how many of you are undergoing digital transformation?" After a majority show of hands, the hard-hitting statement was: "If you're not doing digital transformation, then why are you here?". It's clear that MuleSoft is a serious player helping organisations to transform the way they work. At that point, I was even more enthusiastic to be there.
Mason talked about the fast-moving pace of the IT world, and addressed one of the main problems a company faces nowadays during a digital transformation; the gap between demand and delivery. Many organisations are struggling, with not enough IT capacity to satisfy demands from the rest of the business - and that's impacting the customer experience. So what are the possible solutions to reduce this gap? Work harder? Or as Mason put it, run faster?
NO! The answer is APIs, Mason said.
Yes, you read it correctly. APIs.
APIs are simple, flexible, and easy to consume. They help developers to focus on the specific business problem that needs solving - they take us directly to the business case. But still, this is not enough. It's just a panacea, Mason said. So, new slide on the screen, and here comes the solution: API-led Connectivity Approach. What we need is an "application network" which makes it easy to connect to new services, which is easy to update, easy to add/remove connections to external systems and which is built for rapid change. And the API-led connectivity approach, with its architectural concepts of how to split APIs over three different layers, is our best friend to build the application network we want to provide.
After a few more eye-opening slides demonstrating the power of APIs, Mason's keynote ended. But the day moved quickly, and it was time for me to head to the next round of sessions. There were several tracks to choose from, including technical, business-oriented and prospective partnership focussed tracks. I of course chose the technical sessions, specifically the advanced developer sessions. So, here's it goes:
On to the advanced developer sessions
Stanislav Pokraev. Topic: Docker, Kubernetes and API
This session was a very DevOps oriented topic. Normally, this wouldn't have been my first choice of topic. But the title grabbed me, and I was there, so why not.
Pokraev started by introducing what Docker is, what Kubernetes is, and the main concepts behind these two products. Then it was demo time. Well, one word: wow! I'm quite new to containerisation and its management, but this guy introduced me to a new world. Deploy an application to a Mule runtime running on a Docker container. Make more copies of that container, and manage the requests through a load balancer in order to provide high availability to the application. Shutdown a container and see that the application is still available; all of this using just one product, Openshift, a container application platform built over Docker and Kubernetes for container management. Pokraev created some scripts in Maven, some other scripts to create the Mule image and the container, some description files to create pods and controllers, and finally ran everything in one place. Cool!
Jesus De Oliveira. Topic: Platform synergies for agile digital transformation
De Oliveira began the session with an introduction to the Pivotal Cloud Foundry platform, a cloud-native platform, explaining what it is, as well as the result of the collaboration between Pivotal and Mulesoft. Customers who want to create a network of applications, data and devices using MuleSoft can now deploy to Pivotal Cloud Foundry, and manage their application network within Anypoint Platform. De Oliveria showed us live how it works; he created an API definition and an API portal. Then, he published it on Anypoint Exchange and linked it to an application deployed and running on a completely different platform. Very interesting.
2nd advanced developer session
Patrick Pissang. Topic: "Quo Vadis?" Distributed Transactions
In this session, I was hoping for some more of the live demos I'd seen earlier on in the day, but it was a very theoretical topic. Pissang discussed distributed transactions, what they are, and if it's worth using them. Well, his answer was no. To explain that, Pissang talked about some scientific studies that were done to mathematically prove why distributed transactions don't work. It's a difficult topic to talk about in just 20 minutes - I'd need a lot more hours of studying to go into more depth. That said, it's another lesson learnt and a new argument to do some further digging on.
Jerome Bugnet. Topic: Advanced end-to-end security with APIs
We all know too well the problems that can arise due to lack of security, and we all understand the importance of security nowadays. And Bugnet did a great job of getting straight to the point. In his demo, he pointed out how the identity propagation is crucial when using the API-led connectivity approach, and how to make sure that a front-end user, once logged in the front-end application, is automatically logged into the back-end system. The identity propagation flow explained here was the "OAuth Dance" process. With a few steps, Bugnet showed how to implement the OAuth Dance with Anypoint Studio. Very good job.
3rd advanced developer session
Matheus Hermsdorff. Topic: API-led connectivity: a paradigm shift
With this session I found myself in front of a more theoretical topic, and I have to say that I wasn't as excited about this one; I don't know how many times I'd heard about the API-led connectivity approach since the morning. But to my surprise, Hermsdorff gave a different point of view, and focussed our attention onto how many times we faced that specific problem, how many times we struggled with the Canonical Data Model and the SOAP protocol. I ended up enjoying this session a lot. It was very interesting to listen to a fresh perspective on API-led connectivity approach, understanding advantages of its use and how it makes the application easier to design.
Andrew Davey. Topic: Anypoint CLI & Platform REST APIs
The last session of the day, and it was a very technical one. Davey started talking about the Anypoint CLI (Command Line Interface) with a new technique - he asked for a volunteer who'd never used the command line interface to take his place and start typing some commands. He showed how easy it is to change the worker size of an application using very few commands, and by reading the related documentation with the help command. And this was only the first part of the demo. In the second part, he did the magic: he created an API portal and published a RAML on Anypoint Exchange running an application in Anypoint Studio. WOW! Davey created an applications with a series of flows that consumed the exposed Anypoint REST APIs. With a few interactions, the final result was the automation of an API portal creation and its spread over Anypoint Exchange. Amazing.
After a long day of sessions and networking came the moment that everyone was waiting for; the MuleSoft Roadmap. And it didn't let me down.
There's a lot coming out in a short period of time, like the new runtime, Mule 4. But what really shocked me was Anypoint Exchange 2.0 and the Flow Designer.
The new version of Exchange is completely different. There's a new, smoother design, with a better user experience in terms of search and use functionalities. They presented the Flow Designer and, all I can say is that I'm really looking forward to using and testing it. The Flow Designer is a new component of the Anypoint Platform where developers can build their applications and flows, and synchronise them with Anypoint Studio. Unfortunately, there was no live demo at this point, but we got a sneak peek video of the new look.
Finally, they put an end to our anticipation and announced the dates...Anypoint Exchange 2.0 and the Flow Designer will be released in (..drumroll..): JUNE 2017. So just a (very) short wait and we'll be able to use these new tools that, I'm quite sure, will change our work experience forever.
Some of the integration team having a post-summit beer with the Mule: (L-R) Bejoy Thomas, Fabio Persico and Antonio Aliberti