Supercharge your editing experience π
Visual Studio Code is a free, cross-platform, open source code editor from Microsoft. You might have also heard it called VS Code, or sometimes, just Code.
It's the editor I use and enjoy daily. You may already know that it's an excellent option for Python developers -- it supports linting, debugging, features AI-assisted code auto completion, and more.
With just a little configuration Code can also be so much more!
Learn about three exciting features in Code below.
1: Extensions π
Code starts out as a lightweight editor that's extensible via extensions. That allows you to only install the tools and plugins that are useful to you.
When you first download and install Code, you'll have a pretty bare bones editor. It comes with simple support for languages like JavaScript, TypeScript, CSS, and HTML, but support for other languages can be downloaded as extensions.
The extension ecosystem isn't just for languages. You can also find useful plugins, lightweight tools, themes, customizations, key maps to use keyboard shortcuts from other editors, and much more.
Some of my favorite extensions are:
-
Python Extension
- Rich feature support for the Python language. Awesome features like AI-powered IntelliSense, Jupyter notebook support, a test explorer, and more!
-
autoDocstring
- Quickly generate docstrings for Python functions.
-
GitLens
- Supercharge git by with at-a-glance git blame annotations, navigation of git repositories, powerful comparison commands, and more.
-
Night Owl theme
- A Visual Studio Code theme for the night owls out there. Fine-tuned for low-light situations, for those who like to code late into the night.
-
Peacock
- Allows you to change the color of each new window, allowing quick visual identification when working on multiple projects.
-
TODO Highlight
- Really make your
TODO
s andFIXME
s pop!
- Really make your
Note: Do you have a favorite theme or extension? Please share it in the comments!
If you think you won't be using a plugin for a while, you don't have to go through the effort of completely uninstalling it. Instead, you can temporarily disable it.
Configure your settings for both Code and Extensions via settings.
2: Jupyter Cell Debugging π
The Python extension has many great features that allow you to work with Jupyter notebooks with ease -- in a full-fledged IDE environment.
If you use Jupyter notebooks, you know how hard debugging can be. The annoyance of having to switch between your browser, your terminal, your notebook, and your editor can be a real drag.
To help your workflow, the latest Jupyter feature -- Cell Debugging -- is coming soon to the Python Extension for Code!
As you can tell from the tweets, it's a highly anticipated feature!
Soon, support for debugging Jupyter cells will be available inline.
It's a feature that will save you tons of time, and that's cause to celebrate! π
3: Live Share π₯
I work remotely from Portland, OR. As a remote developer, being able to collaborate with others is a top priority.
Collaborating remotely on software has long been a struggle. Thankfully, Visual Studio Code has a plugin that makes the process simple and pain free -- Live Share.
Before you were likely stuck using tools like tmux with text-based editors, or dealing with spotty network connections, blurry screens, and fading audio on video calls.
The Live Share extension improves the process of remote collaboration by leaps and bounds.
To get started, you and the developer you'd like to work with will both need to install Code, then download the Live Share extension pack. Now, one of you will need to start a shared session, and the other person will need to join the session.
Once you do, you'll be able to collaborate easily. Your teammate will be able to see your code in their editor, without having to clone a repo, or even install dependencies from your codebase.
You'll see the other person's cursor, but you can also navigate independently in your own Code instance. That means your themes, keyboard shortcuts, extensions, and custom settings are available to you. As a bonus, you can even chat or talk over audio with your coding partner.
This feature is particularly useful for Code Reviews. Let's say you'd like to talk through some comments you made on someone's pull request. Just start a live share session, checkout the PR branch (use the GitHub Pull Requests extension to make it even easier), and that's it. Sometimes it's easier to talk through a miscommunication than leave endless back-and-forth comments.
That's genuinely the best possible scenario for collaboration.
Wrapping Up
Many other features of Code deserve mention -- remote development over SSH, Containers, or Windows Subsystem for Linux, snippets, and more.
That's the benefit -- you don't have to dive in all at once. You can explore the features of Code at your own pace. So if you haven't given it a try yet, there's no time like the present. Download Visual Studio Code, read the getting started with Python guide, and share your thoughts in the comments below.
Top comments (3)
VScode = π
Attended to MS Insider dev tour last month, and upcoming VS features were even more amazing.
Asked if it is also applied to VScode since I thought all cool things are for VS, but the presenter said that it WAS VScode, so I was super happy and excited.
My personal favourite extensions are "GitLens" and "Bracket Pair Colorizer". Can't go back to life without them.
Thank you for the amazing article.
There are still so many features and extensions that I either didn't know of or haven't tried out yet.π
Thanks for taking the time to leave such a nice note. I'll have to check out Bracket Pair Colorizer, it looks incredibly useful!
I'm shameful I didn't give you the link in the first place.π
Thank you for your understanding of my careless.
That extension is not only useful but also aesthetically satisfying. You will love itβ£οΈ