This post is a collaborative recap by CTAs Preston Gallwas and Martin Therkelsen
Citrix Converge wrapped up on October 3rd, 2019 at the Citrix campus in Santa Clara, California. The event was a first of its kind and, as Citrix put it, is the first step in creating a community of developers that are engaged and prepared to take advantage of the platform that Citrix is developing for the MicroApps platform.
The event kicked off with breakfast and networking opportunities. The start of the day was quite relaxed as more than 100 developers from around the globe filed in, had some morning coffee and introduced themselves. A variety of Citrites were floating around the room and it was great to see leadership engaging and supporting the event.
Microapps? What, and why?
When the event opened, we were greeted with an overview of the problem and opportunity that we are hoping to address with Microapps. Without re-hashing the entire presentation, we think it can be best summarized by a couple of statements and anecdotes we heard:
- Engaged employees are far more productive
- Repetitive administrative or non-creative tasks lead to dissatisfaction (No one on earth enjoys doing expense reports)
- By keeping employees engaged and happy, work efficiency improvements multiply and can offer order-of-magnitude improvements in productivity (vs the typical 1-5% we’ve seen year on year the past several decades)
- Content switching is stealing a lot of time for every employee, it takes about 3 mins to get back to the work you were doing after a switch of applications
With that said, what is a Microapp? In a nutshell, it's distilling a distinct unit of work into an easily accessible function that is available to a user and relevant. One key phrase we heard from David Cottingham was to “think of the thing you do that should take 20 seconds but for whatever reason takes several minutes.” Again, the expense report is a good example here, but it applies to many, many potential things we do throughout the day. By eliminating the non-productive time that employees don’t like doing anyway, you can increase their satisfaction.
As of this writing the product is not GA and is still a preview build. With that said, the roadmap already outlines functionality that may enhance or otherwise change some things that aren’t on the list. Please keep that in mind when considering what it can do at the time the event was held.
MicroApp is a Cloud Service that, today, can speak to publicly available APIs (Note: In the future, there will be some sort of on-prem mechanism that will work against on-prem APIs via Cloud Connector). The Microapps service itself is where you define your Data Integration Pack (DIP) and the Microapps. Below you can see a high-level architecture on the MicroApp service in Citrix Cloud. On the left we have the integrations (DIPs), in the middle there is the tool for building the MicroApps and on the right we have the end-user experience that can be just about everything. The end-user experience can be getting information and performing actions in Slack and use the MicroApp service to do all the work in the backend systems.
A DIP is a sort of connector–Citrix will be providing pre-built connectors to major systems at GA time. Many of them are already available, but the best part is that above and beyond what is offered is a generic “HTTP Integration.” The DIPs themselves connect to the API with a service account to read data into a cache running in the Microapp service which is a multi-tenant encrypted cache. Data is loaded into the cache, and Microapps operate against the cache (therefore realtime is not possible as of this writing, but data loads can be scheduled as frequently as every 1 minute). Citrix are looking for feedback if such an encrypted cache will be an issue (i.e. do you have a real use case for on-prem cache?).
Writes back to the System of Record (SoR), such as JIRA, take place using a configured authentication mechanism but the idea is that it writes back under the context of the user using OAuth in order to represent the user (so that you don’t see writes to the system from something like “serviceaccount-jira”).
It’s all well and good to talk theoretical, but we suspect that if you are here, you are wanting to get to the meat of the content–go beyond the theoretical and slide deck and tell me HOW IT WORKS and WHAT CAN YOU DO? We’re well on our way.
After the overview portion, we were able to dive in on a guided tutorial by enabling two MicroApps for JIRA. The guided example distilled two things, “Create ticket” for a user as well as “a new ticket has been assigned” notification. By addressing both of these use cases, you help reduce the context switching that a user has to do when submitting a ticket as well as eliminating unnecessary clicks, navigation, logins etc. At the end of the day, the user who needs to submit a ticket just needs to submit it and get on with their day. Their job isn’t submitting a ticket all day (ok for some people that may well be their job.. ;-) ).
We loaded up our dedicated test environments and logged into the Citrix Cloud MicroApp Service. It was fairly straight forward to add the necessary parameters to connect to the JIRA API and load in the JIRA ticket table. Once the data was added as a target, we were able to dive into the first microapp creation.
A microapp, being a distinct unit of work, is not meant to re-implement all functions of an app. It is meant to address the most-common use cases. To that end, we designed a form for submitting a ticket which included “Summary, description, and Submit.” Using the visual editor, it was easy to create the form and map it to the data columns that we added when we imported the cache.
The next Microapp we implemented was a notification for a new ticket being assigned. Again, it was fairly trivial to specify the fields from the tickets table that we wanted to include on the notification card.
With no experience and just a few minutes, we had a couple of practical examples of things that can help prevent users from having to context switch (such as logging into JIRA to submit a ticket, or tab to Outlook and find the notification of the ticket in our already-overloaded inboxes).
Hackathon, breakouts and Vvurk Party
After our guided JIRA example, we were left to our own devices to create our own Microapps and data integrations. Prizes were on the line, but most of all, bragging rights. During the Hackathon, several breakouts were also held, including one that demonstrated how you could use Azure Function Apps to wrap something that did not have an API that returned JSON to return a compatible result. We heard from many attendees that this session was highly appreciated as it illustrated how the Microapps integration won’t just be for services that have APIs but literally anything you’re willing to build a wrapper for, including legacy applications.
At the conclusion of the first part of the hackathon, we headed over to the “Vvurk” party where we had a great evening networking, sharing ideas and learning about each other. It was a great opportunity to connect and get to know our peers outside of just “the work” that we do as developers and IT pros.
Day 2–Hackathon, Demos, Roadmap, Feedback
Day 2 began with networking at breakfast time and then continued time for the hackathon. Plenty of teams and individuals were hard at work fleshing out very creative ideas for things that can make tasks easier for end users, managers, as well as IT professionals. Some of the highlights that we recall (and apologies to any who I’ve missed, there were something like 15 different demos and all were unique!)
- Microapp to submit an expense to ConnectWise (CW users out there you know this pain)
- Microapp to notify an admin when a website fails an SSLLabs check, with details about the check as well as a follow on action to automatically submit a ticket to JIRA
- Microapp showing off meeting creation with meeting room locator as well as IoT-enabled automatic location mapping to show you directions to the room (awesome stuff!)
- Microapp to kick off automated-image build process for various customers – saving time from having to log in to multiple customers as a CSP to kick off the script, a few inputs for customer, image and deployment silo and the process kicks off and when done the customer has a new image in production (or test) and it doesn’t matter if they run on-premises or in the cloud
- Microapp to notify appropriate users when negative feedback is submitted – positive feedback is good, but negative feedback requires follow up action. The feedback is sent to a user via notification card, the details page allows them to reply directly to the feedback within the page and submit it back to the person who submitted the feedback – Great customer service opportunity!
At the end of the day, the takeaway that we think was realized is that developers have the opportunity to come up with creative solutions to problems that exist within all of our organizations and businesses (or customers businesses) and the platform provides a great way to easily integrate that into the Citrix Intelligent Workspace.
After the prizes were awarded (congrats to all who won!) and we had lunch, we moved onto a roadmap session. Note, the roadmap items discussed do not represent promises and are subject to change (all that legal mumbo-jumbo that needs to be said as the company is publicly traded). With that said, it was nice to have an idea of where the product is expected to head in the near, mid and long term. The biggest thing we suspect people will want to know about is the on-prem app support, which will be coming via functionality connected through the Cloud Connector.
We ended with a feedback session where we were able to express our interest in the top feedback that had been collected through the event as areas of focus for Citrix. We gathered our thoughts, voted on top feedback then had open dialog about why it was important to have those things in the product and why they should be focus areas. It was quite pleasing to see the level of engagement and the great discussion that we had with the folks from Citrix.
In closing, we are very grateful for the opportunity to have traveled to Santa Clara for Citrix Converge. Citrix has laid out a vision for a focus on how they intend to deliver increased productivity and value to customers. The format and content were engaging, and the opportunity to chat with so many people at Citrix around this opportunity as well as the other attendees at the conference made for a remarkable experience. The format for Converge can be compared to Citrix PTEC events where Citrix really wants the feedback, and the people attending were all eager to provide this feedback. These sorts of events provide so much value in both content and relationship with peers and Citrix, so they are certainly worth attending. Citrix has indicated that there will be more developer events like this one, so if you get the option to attend it is highly recommended. It is our hope that Citrix will continue to do similar events again, and, Citrix also mentioned that they intend to try to have the event in additional regions. We look forward to working with the Microapps service as it becomes available as well as the Citrix Developer Program that Citrix is actively working to build.