LEAP 2017: Azure training, by the people behind the technology
LEAP 2017, or Lead Enterprise Architect Program, is an annual Azure training program arranged by Microsoft Norway. The program has its focus on introducing Azure, and its services to solution architects to better meet the demands modern solutions require. In that sense the program does not go deep into some specific technical detail, instead tries to give the audience a broad view of what are the most common services offered and how to implement them in a smart manner.
This year, the program kicked off by inviting all participants to the Microsoft head-quarters in Redmond, WA, where the first training sessions were held by some of the talented people actively working on the technology and services related to Azure.
The Redmond classes ran from Monday 30th of January through Friday 3rd of February.
Day 1 – Patterns, patterns, patterns
The first day started with a keynote by Steven Guggenheimer, Corporate Vice President of Microsoft’s Developer eXperience & Evangelism (DX) group, talking about the current state of Azure and the vision for the future. In the future Azure, will play a more important role in the lives of ordinary people. Technology in development today are services like Microsoft Cognitive Services, which provide developers with a set of services to do e.g. computer vision, sentiment analysis, emotion analysis etc. These are all technologies that can be incorporated into applications to give the application a set of intelligent abilities on which actions can be taken. Another service that fall into this same category is Azure Machine Learning (ML). Azure ML gives the developer the power to create models for computational problems and using the model do intelligent conclusions.
Onward to the main content of the day; patterns and best practices! Patterns and practices is a generic term to describe elegant solutions to common problems that commonly arise when designing solutions. Hence, patterns and practices are an integral part of designing reliable and scalable services in a modern cloud environment and should be applied whenever possible.
During the day topics like IaaS, Key Vault, Azure AD Authentication as well as writing secure code were presented.
Day 2 – Future of application development in Azure and DevOps
Today we had the pleasure to start the day by picking the brain of no one other than Scott Guthrie. Scott Guthrie is a Executive Vice President at Microsoft.
The day started with an hour-long Q&A/keynote session were Scott answered the questions from the audience. Topics ranged from the current state of Docker in the MS ecosystem to settings up VSTS to talk to an Azure App Service. Most memorable from the session was the emphasis of Docker and DevOps and their respective predicted significance in close future.
Most memorable for the day was a quote by Donovan Brown, where he very nicely summed up DevOps in one sentence:
DevOps is the union of people, process, and products to enable continuous delivery of value to our end users.
– Donovan Brown
On the agenda for day two were also:
- The move to the cloud, where the speaker about best practices for how to design a scalable service in Azure
- Microservices, and the design considerations required when developing and maintaining services build on top of microservices.
- Azure Service Fabric, an introduction to the microservices platform offered in Azure
- DevOps in the MS ecosystem.
Day 3 – Big data and intelligent services in the cloud
New day and a new keynote speaker. The speaker to kick off this day was Lance Olson, Director of Cortana Intelligence at Microsoft, who talked about how intelligent cloud services can be used to give a richer user experience in traditional services, and how the power of the cloud can be used to store and analyze massive amounts of data, i.e. big data capabilities.
Topics of the third day mainly focused on intelligent services in the cloud, starting with Cortana Intelligence Suite, moving on to machine learning and ending in database offerings in Azure and big data tools.
Cortana Intelligence Suite is a set of services, each providing a API endpoint that can be incorporated into normal applications to add rich content analysis capabilities, e.g. natural language processing or image analysis. Its relative ease of use makes it a good starting point for building a new generation of interactive solutions. However, if the user has needs going beyond the set of tools provided by Cortana Intelligence Suite, Microsoft offers another, more advanced, and versatile, service for doing intelligence in the cloud, namely Azure Machine Learning.
Azure Machine Learning gives the possibility to build custom solutions that can be trained to accommodate for more advanced scenarios, e.g. based on case specific input, make a conclusion using a trained model. Model building is done using a graphical interface an is somewhat limited to the set of tools and possibilities it provides.
There is still one more offering that allows for even more customized solution building, CNTK: The Microsoft Cognition Toolkit. It is the foundation Cortana speech models are built on and supports building networks for speech, image and text workloads, also in combination.
Onwards, to the final topic of the day, big data. There are multiple definitions of what is considered ”big data”. E.g. any set of data too massive to be processed as a single set, either due to its velocity (or data growth), volume or variety require special techniques, or whole platforms for its processing. For these problems, Azure offers a service called HDInsight and has its own processing language, U-SQL, a mix drawing from both C# and T-SQL. Overall this is a very interesting topic but so far is very much in its infancy and hasn’t seen wide implementation among small or mid-sized organizations.
Days 4 and 5 – Hackathon!
The two final days for the event were spent building solutions on top of Azure services. Most teams focused on building something on top of Microsoft Bot Framework or using Microsoft Cortana Intelligence Suite.
Overall, the days in Redmond gave an overview of the most common Azure services and introduced some of their functionality to the audience. However, many of the sessions lacked deeper knowledge that a listener with already a few years of experience might have expected. Personally, I would have liked to hear more thoughts and experiences from the people who work/worked internally on the services, i.e. information not easily obtained elsewhere.