Behind any productive work are your work ergonomics and system setup that helps you take away the repeating tasks and facilitate your development process. Having the extensions for the right kind of technology you use every day can make a lot of difference in terms of leveraging snippets and predefined settings to make the process more seamless for you.
In this article, I'll cover some of the VS Code extensions and settings that I use daily to give you a perspective of what a typical Cloud Developer role in Azure might involve. As part of the Labs Development team at CloudAcademy, this is my typical workflow setup which might be different for anybody on the same role in a different organization.
Table of Content
VS Code Extensions
The list of extensions below is based on the priority order on how much it matters in terms of usage and importance starting with most important on the top.
Azure Tools (Extension Pack)
Since I'm working with Azure service most of the time, it's very convenient for me to have this Azure Tools extension pack installed all the time. The extension comes in a bundle pack that includes a lot of services, however, I only use the ones listed below as they get the most of the work done for daily use.
- Azure Tools Extension Pack
- Azure App Service
- Azure Functions
- Azure Storage
- Azure Databases
- Azure Resources
- Azure CLI Tools
- Azure Resource Manager Tools
ARM Template Viewer
Another useful extension that I've been getting used to now is the ARM template viewer. This lets you visualize the ARM template as you build it.
Another extension that comes in handy during development is the Docker extension. Building your image and even writing the docker file is such a seamless experience with these extensions as it gives you IntelliSense recommendations that make it super convenient when developing new container images.
If you've ever taken any labs on the CloudAcademy platform, you'll see instructions for labs which are usually written in markdown. Markdown has been growing as the format of choice now due to its low maintenance structure and lightweight usage in the development process. The markdownlint extension is a great addition to enhance the writing skills when working with the markdown files.
Even though this extension is unofficial, it still works great when writing markdown files in VS Code as it gives you suggestions and recommendations.
When writing code or creating ARM templated in JSON format, I find the prettier extension to be super useful to simply format the file on save or using shortcuts to adjust the file layout.
If you are writing python code and doing the development using VS Code, this extension is a must-have to facilitate your development process.
Visual Studio Intellicode
If you are looking for a tool that can track your productivity metrics and gives you insight into your work performed in the VS Code session, WakaTime has been the best tool for me to understand what I have been working on and how much time I spent doing that thing.
If you are someone writing YAML files for azure pipelines, AWS Cloudformation, or for any other purpose, you must have this extension installed for your VS Code.
Remote Development (Pack)
- WSL Remote
- Container Remote
- SSH Remote
I don't use this extension very often, however, I find it quite useful when needed to code with someone remotely without having to send emails or text the block of code for someone to debug or make recommendations to.
VS Code Theme
Material Icon Theme
I like having icons for all my files and folders as it gives you the idea of the file type just by looking at the icons on them. I think they are super useful and come in handy when identifying the file types.
I've been using this theme ever since I started using the HackTheBox platform and discovered their theme. Even though the repo is no longer being maintained but the theme still works great!