Why the Visual Studio Code team launched a snap
by Sarah Dickinson on 11 April 2019
Microsoft’s Visual Studio Code is a popular free code editor with built-in support for debugging, task running, and version control. While available for Linux via tarball, rpm, and debian package options, the Visual Studio Code team had been seeking new options that would support seamless upgrades to match their rapid release cadence. Joao Moreno and Daniel Imms, Software Development Engineers at Microsoft, recently spoke with Canonical to explain why they decided to publish a snap.
Prior to publishing their snap, Visual Studio Code offered only tarball, rpm and debian package options. Managing several packaging formats adds complexity and dependencies on specific distributions to provide version updates. Solving these issues was the main reason why snaps appealed as Joao explains; “The automatic update is the biggest benefit and we like the way they run seamlessly in the background.”
However, there were other capabilities snaps provided that appealed to the team. “We like the fact that Canonical are behind snaps and can offer support. On the technology side, the fact that the snap allows an app to run constrained and define its capabilities is a big plus,” Joao explains.
Managing consistent builds across many Linux distros is a challenge for any Linux software project, including Visual Studio Code. Having a single snap that can run universally across over 40 Linux distro variants eases that challenge in comparison to the other packaging options available.
Joao doesn’t expect to see the changes in the journey of how users discover and install Visual Studio Code – their web site is the main touchpoint for users, regardless of platform or distribution method. However, Joao anticipates that Linux users installing the snap will quickly see the benefits. “We expect our users to be on the latest version within a week thanks to the automatic updates, just as our macOS and Windows users do today,” he explains.
Having spent time investigating the snap ecosystem and publishing their own app in this way, Joao would encourage others to do the same. “It is clear there is a thriving community that is moving forward. I recommend it. The backing of Canonical ensures my confidence in its long-term future and ongoing development of the snaps ecosystem to meet our user needs.”
Joao believes that developers are the key to continued snap growth – the more snaps that are published in the store, the more end users will follow.
Visual Studio Code can be installed as a snap by clicking here.