In July 2019, we announced the first preview libraries of the new Azure SDKs. These new libraries center the developer experience in our development process and guiding principles, as outlined in our General Guidelines. Accordingly, we are concentrating our efforts in developing first-party Azure SDKs that are:
- Idiomatic: SDKs are conventional with their target language and feel natural to developers.
- Consistent: SDKs are consistent across languages and services so that developers have a single experience and can support each other across development paradigms.
- Approachable: Great documentation, especially for first-time Azure users, is a priority to make getting started with Azure simple and quick.
- Diagnosable: Debugging is essential to the developer experience, and our libraries center discoverability and logging as fundamental features of each library.
- Dependable: Breaking changes are exceptions, not norms. Compatibility across library versions is a priority so that developers can seamlessly upgrade to the latest improvements.
Since our initial release in July 2019, we’ve grown to support 4 core languages across over a dozen Azure services, with 5 more languages on the way. Thanks to our engineering team and developers’ feedback, we’re on track to deliver an even better Azure development experience!
As the year 2021 begins, we thought we’d take some time to reflect on our progress and introduce our roadmap for progress to come.
Making the Azure SDK in 2020
While a portion of our team already worked from their homes around the world, we all faced the changes brought on by COVID-19; this included work-from-home guidance for our entire team. To their credit, everyone on the team continued to bring their best selves each week. Since our 2019 previews, we have:
- Released our guidelines as GA for .NET, Java, JavaScript/TypeScript, and Python.
- Introduced draft guidelines for our mobile libraries, including iOS and Android; draft guidelines for C and C++; and draft guidelines for Go.
- Released GA libraries for:
- Azure Storage
- App Configuration
- Cognitive Search
- Event Hubs
- Service Bus
- Key Vault
- Form Recognizer
- Text Analytics
- Introduced beta packages for:
- Anomaly Detector
- Communication
- Cosmos DB (.NET)
- Event Grid
- Metrics Advisor
- Tables
- Released GA management libraries in Java and Python, which include coverage for:
- Compute
- Cosmos DB
- DNS
- Key Vault
- Monitor
- Storage
- Increased our blog update rhythm at aka.ms/azsdk/blog and expanded content to include solutions from guest authors and tips and practices from our development. You can follow us by subscribing to our blog feed.
- Launched a new developer landing page at azure.com/sdk.
The latest list of published libraries can be found at aka.ms/azsdk. We update this page with each release using the release notes within our github repositories, which you can find linked in the footer of this post.
Blog Highlights
While this is just a small sample of the great posts highlighting what you can accomplish with the new SDK, our engineering team and guest authors have used the Azure SDK Blog to explore their custom solutions on Azure. A few of our recommended posts, in no particular order, include:
- Analyzing Call Center Conversations with the new Azure SDK Cognitive Services Libraries by Daniel Krzyczkowski, Microsoft MVP
- Using Azure Identity with Azure SQL, Graph, and Entity Framework by Mickaël Derriey, Guest Author
- Detect anomalies in your data with Metrics Advisor by Xiang Yan, Senior Software Engineer
- Add search to an application with the new Azure Cognitive Search SDK by Derek Legenzoff, Program Manager
- Secretless Azure Functions dev with the new Azure Identity Libraries by Christos Matskas, Senior Program Manager
- Forecasting Service scale out with Jupyter Notebooks in Visual Studio Code by Kieran Brantner-Magee, Senior Software Engineer
- AutoRest and OpenAPI: The backbone of Azure SDK by David Wilson, Senior Software Engineer
- Inside the Azure SDK Architecture by Jeffrey Richter, Partner Software Architect
Upcoming work for 2021
It’s probably not a surprise that our goal for 2021 is to continue improving the developer experience for Azure users! To that end, we plan to continue investing in languages and service libraries to provide greater coverage of Azure services. However, we aren’t the group to ship-it-and-forget-it; this year will also see improvements to our documentation and getting-started guides, with an emphasis on helping you find the libraries and examples that will help you build solutions quickly and easily!
On a technical level, efforts to improve our libraries will likely include expansions to our mobile beta libraries; GA of some libraries such as Event Grid and Tables; and continued improvements to our already GA’d libraries, such as Storage, Text Analytics, Form Recognizer, and Metrics Advisor. You can keep up with our plans through the github repos listed in the footer or follow us on Twitter, @AzureSDK.
To help you find answers and examples easily, we’ve made concentrated efforts to include samples and comprehensive README’s for every library, in every language, right next to the source code that we produce. In each of our repos linked in the footer, you can find instructions and quicklinks within the samples
directory. Additionally, each library contains a list of samples under the sdk/{service}/{library}/samples
directory. For example, if I needed to upload a blob to Azure Storage, I could look up some samples on the Azure SDK for .NET – Azure.Storage.Blobs Samples page. Our samples are also available on Microsoft Docs.
Conclusion
Thank you, from our entire team, for your continued adoption of our latest service libraries. We welcome feedback, from comments and suggestions to support requests and issue reports on our github repos; you can find links to each language’s repo in the footer of this post.
Cheers to your success with Azure in 2021 and beyond!
Azure SDK Blog Contributions
Thank you for reading this Azure SDK blog post! We hope that you learned something new and welcome you to share this post. We are open to Azure SDK blog contributions. Please contact us at azsdkblog@microsoft.com with your topic and we’ll get you set up as a guest blogger.
Azure SDK Links
- Azure SDK Website: aka.ms/azsdk
- Azure SDK Intro (3 minute video): aka.ms/azsdk/intro
- Azure SDK Intro Deck (PowerPoint deck): aka.ms/azsdk/intro/deck
- Azure SDK Releases: aka.ms/azsdk/releases
- Azure SDK Blog: aka.ms/azsdk/blog
- Azure SDK Twitter: twitter.com/AzureSDK
- Azure SDK Design Guidelines: aka.ms/azsdk/guide
- Azure SDKs & Tools: azure.microsoft.com/downloads
- Azure SDK Central Repository: github.com/azure/azure-sdk
- Azure SDK for .NET: github.com/azure/azure-sdk-for-net
- Azure SDK for Java: github.com/azure/azure-sdk-for-java
- Azure SDK for Python: github.com/azure/azure-sdk-for-python
- Azure SDK for JavaScript/TypeScript: github.com/azure/azure-sdk-for-js
- Azure SDK for Android: github.com/Azure/azure-sdk-for-android
- Azure SDK for iOS: github.com/Azure/azure-sdk-for-ios
- Azure SDK for Go: github.com/Azure/azure-sdk-for-go
- Azure SDK for C: github.com/Azure/azure-sdk-for-c
- Azure SDK for C++: github.com/Azure/azure-sdk-for-cpp
0 comments