To be a good developer is to be a perpetual learner; it is essential for survival. The problems you solve are always changing, but the programming languages, platforms, hardware, tools and technologies you use to solve them are all moving targets. Even the foundation of the agile development processes most developers follow has the notion that you must continue to learn new skills to be more effective. After all, if you’re not learning something new, you’re either falling behind or getting left behind.
Once again, it’s that time of year when many office buildings get a bit quieter, parking and traffic get a little easier, and many production systems go into “hands-off” lockdown for fear of a breaking change ruining the holidays. This slow period provides an opportunity to step back from the stuff you work on every day and learn something new that perhaps you haven’t had a chance to try yet.
Fortunately, there are a lot of great resources available for you to learn new skills in Azure. Below are ten areas to explore that go beyond the familiar cloud workhorses (such as virtual machines and storage) and focus on capabilities related to IoT, containers, micro services, server less computing, bots, artificial intelligence, and more. Each has a list of resources to give you a quick intro, and additional content to help you dive deeper.
If you’re new to Microsoft Azure, you may want to start with the Get Started Guide for Azure Developers.
1. Internet of Things (IoT)
Anything can be a connected device these days. Azure IoT Suite and the Azure IoT services make it easy for you to connect devices to the cloud, not only to collect the telemetry data they generate but also to do things in your apps based on that data. You can also get Azure IoT-certified starter kits for some DIY time building your own devices.
Watch: Introduction to Azure IoT Suite and IoT Hub for developers
Looking for a way to build micro services or get tasks done easily in your apps, such as processing data, integrating systems, or providing simple APIs? Azure Functions offers server less compute for composing event driven solutions. You only need to write the code that solves a specific need and then not worry about building out an entire application or the infrastructure required to run it.
Watch: Azure Functions and the Evolution of Web Jobs
3. Cognitive Services
Artificial intelligence is no longer science fiction and can be used in your applications today. Cognitive Services is a growing collection of machine learning APIs, SDKs, and services you can use to make your applications more intelligent, engaging, and discoverable. Add smart features to your applications and bots, such as emotion and video detection; facial, speech, and vision recognition; and speech and language understanding.
Watch: Get started with Microsoft Cognitive Services
4. Bot Service
Looking to improve customer engagement in a new or existing application? Azure Bot Service enables rapid, intelligent bot development, bringing together the power of the Microsoft Bot Framework and Azure Functions. Build, connect, deploy and manage bots that interact naturally wherever your users are talking. Allow your bots to scale based on demand, and you pay only for the resources you consume.
Watch: Introducing the Azure Bot Service
5. Container Service
If you have been building container based applications and now need to get them into production, check out Azure Container Service. This open sourced service supports popular container orchestration engines such as Kubernetes, Docker Swarm, and DC/OS. Azure Container Service removes a lot of complexity to help you manage clusters of virtual machines to run your containerized applications.
Watch: Azure Container Service
6. Logic Apps
Azure Logic Apps help you automate workflows and integrate applications and services. Nearly a hundred out of the box connectors for all your favorite services make it easy to set up workflows and accomplish tasks between connected services. Using a visual designer in the Azure portal or Visual Studio, you can compose the logic (and it works great with Azure Functions) that act based on events.
Watch: Enterprise Integration with Azure Logic Apps
7. API Apps
Azure API Apps make it easy for you to build and consume cloud-hosted REST APIs. Azure provides a marketplace of APIs where you can publish your API, or find existing APIs to use in your applications. You can also generate cross-platform client SDKs for the hosted API using Swagger.
Watch: Azure API Apps 101 with Guang Yang
Sometimes a traditional relational database is not the best choice for your data. DocumentDB is a fully managed and scalable NoSQL database service that features SQL queries over object data. You can also access DocumentDB by using existing MongoDB drivers, which enables you to use DocumentDB with apps written for use with MongoDB.
Watch: DocumentDB: overview and offline development experience
9. Mobile Center
If you’re already working on a mobile app, you should learn more about mobile DevOps with Visual Studio Mobile Center, which brings together our mobile developer services, including HockeyApp and Xamarin Test Cloud. Currently in Preview, Visual Studio Mobile Center provides cloud-powered lifecycle services for mobile apps, including continuous integration, test automation, distribution, crash reporting, and application analytics. The Mobile Center SDK currently supports Android, iOS, Xamarin, and React Native apps with a roadmap to support more over the coming months.
Read: Introducing Visual Studio Mobile Center (Preview)
10. Application Insights
Rich application metrics help you deliver and continuously improve applications for your customers. Application Insights is an extensible application performance management service that’ll help you detect, triage, and diagnose issues in web apps and services. You can integrate it into your DevOps pipeline and use it to monitor the usage and experience of your apps.
Watch: Monitor Web Apps using Azure Application Insights