This week we’re joined by Brigit Murtaugh, Product Manager on the Visual Studio Code team at Microsoft, and we’re talking about Development Containers and the Dev Container spec. Ever since we talked with Cory Wilkerson about Coding in the cloud with Codespaces we’ve wanted to get the Changelog.com codebase setup with a dev environment in the cloud to more easily support contributions. After getting a drive-by contribution from Chris Eggert to add a Dev Container spec to our codebase, we got curious and reached out to Brigit and asked her to come on the show to give us all the details.
Recent guest Justin Searls announces his new thing:
Standard Ruby (a Ruby style guide with linter & automatic code fixer) now ships with its own built-in language server, which enables it to offer lightning-fast linting and formatting for supported editors. This new extension leverages that language server to deliver a much faster UX than most other Ruby extensions available for VS Code.
I don’t know how many of our readers live at the intersection of VS Code and Ruby… but if you do, this should be great news for you. 😉
Did you know VS Code has a proprietary license?
Microsoft’s vscode source code is open source (MIT-licensed), but the product available for download (Visual Studio Code) is licensed under this not-FLOSS license and contains telemetry/tracking.
The VSCodium project exists so that you don’t have to download+build from source. This project includes special build scripts that clone Microsoft’s vscode repo, run the build commands, and upload the resulting binaries for you to GitHub releases. These binaries are licensed under the MIT license. Telemetry is disabled.
They also have various package managers covered, so you can
brew install --cask vscodium, etc.
Lots of cool stuff for Markdown authors in April’s VS Code release. Namely:
- drag and drop files into the editor to create a Markdown link
- find all references to header|links|files|urls inside of Markdown
- rename headers|links inside Markdown (and propagate the changes)
- rename Markdown files (and propagate to all references)
VS Code, and IDEs more broadly, help developers manage large code bases by making available tools to leverage and manipulate the syntax of programming languages. By shifting some of this tooling to markdown, can we do the same for large Markdown repositories?
On this special edition of The Changelog, we’re talking with Cory Wilkerson, Senior Director of Engineering at GitHub, about GitHub Codespaces. For years now, the possibility of coding in the cloud seemed so close, yet so far away for a number of reasons. According to Cory, the raw ingredients to make coding in the cloud a reality have been there for years. The challenge has really been how the industry thinks, and we are now at a place where the skepticism in cloud based workflows is “non-existent.”
After 15 months in preview, GitHub not only announced the availability of Codespaces for Teams and Enterprise — they also showcased their internal adoption, with 600 of their 1,000 engineers using it daily to develop GitHub.com.
On this episode, Cory shares the full backstory of that journey and a peek into the future where we’re all coding in the cloud.
In 1984 John Gage of Sun Microsystems was credited as saying “The Network is the computer.” Almost four decades ago, John had a vision of distributed systems working together to be greater than the sum of their parts.
For this article, I surveyed the land of hosted IDEs and it turns out that we’ve progressed beyond running VS Code on an iPad whilst sipping a cocktail.
You can still do that, but there’s way more to it today and I’ll take you through some of use-cases and add my own thoughts. There’s also a practical guide at the end to get started with the open source VS Code browser by Coder.
whereas most tools (try to make it) easy to get notes in, they tend to make it hard to get them back out later, and it only gets worse as you add more notes. Dendron helps you get notes back out and works better the more notes you have.
There are a zillion and one note taking apps out there, but I like how Dendron positions itself here. I’ve never had a note-taking system that I stuck with, mostly because I rarely go back and find things in my notes that are useful. Most of that’s on me, but I wonder if some of it is on my tools not making retrieval a priority…
Enterin browser address bar for any repository you want to read. For example VS Code’s repo: https://github1s.com/microsoft/vscode
Nobody asked for it, but that didn’t stop Ben Awad from building it!
Music Time brings the power of the Spotify player to your code editor. Control your music, view and create playlists, favorite and repeat songs, and discover new music without context switching to the Spotify web or desktop app.
Music Time is free and works with VS Code, Atom, and JetBrains IDEs. Some of its features require Spotify premium, but the personalized song recommendations work with the free version of Spotify as well. It even has a cool vizualizer so you can see your most productive songs.
This Gif is worth 1024 words. Get the extension on the marketplace.
Tightly integrated with GitLab, GitHub, and Bitbucket, Gitpod automatically and continuously prebuilds dev environments for all your branches. As a result, team members can instantly start coding with fresh, ephemeral and fully-compiled dev environments - no matter if you are building a new feature, want to fix a bug or do a code review.
With Microsoft’s strong push into open source it is easy to assume that they are fully open source and that their flagship code editor and its cool LiveShare and Remote extensions are there to play nice with the wider world of free software and open source. This is not entirely the case as this post outlines.
In the search for a comfy and portable developer experience, I’ve made a lot of compromises in the past. The experience has gotten significantly better recently thanks to VS Code and Kubernetes. This workflow also does a good job for underpowered laptops or when working with lots of different and conflicting versions of python or ruby.
This is a solid, balanced piece that doesn’t overly sell the workflow and walks you through setting it up for yourself.
Part mind mapping tool, part wiki, and entirely written in Markdown. Manage your knowledge inside VS Code and publish to the world via GitHub pages (or your favorite static website host).
The incomparable Jessica Kerr drops by with a grab-bag of amazing topics. Understanding software systems, transferring knowledge between devs, building relationships, using VS Code & Docker to code together, observability as a logical extension of TDD, and a whole lot more.
According to the “why does this exist” section of the readme:
When we [Microsoft] build Visual Studio Code, we do exactly this. We clone the vscode repository, we lay down a customized product.json that has Microsoft specific functionality (telemetry, gallery, logo, etc.), and then produce a build that we release under our license.
When you clone and build from the vscode repo, none of these endpoints are configured in the default product.json. Therefore, you generate a “clean” build, without the Microsoft customizations, which is by default licensed under the MIT license.
This repo exists so that you don’t have to download+build from source. The build scripts in this repo clone Microsoft’s vscode repo, run the build commands, and upload the resulting binaries to GitHub releases. These binaries are licensed under the MIT license. Telemetry is disabled.
The Visual Studio Code license referenced is a short read. You should read it if you use VS Code.
This looks pretty rad. You can:
.diofiles in the Draw.io editor, as xml or both.
.drawio.svgfiles with embedded Draw.io diagrams
- Use an offline version of Draw.io by default
- Configure an online Draw.io URL
- Select a Draw.io theme
May 7th, 2020: A discussion appears on Atom’s forum…
I use Atom for a few years now and was worried back then about the acquisition of Github from Microsoft. And now I read about Github Codespaces, which is powered by Visual Studio Code.
I’m a little concerned about this. Do you still support Atom? And do you support Atom in the future? If there are other opportunities of embedding a Editor or innovating would you also choose VS Code over Atom?
What is the future of Atom? Will you slowly move to VS Code and Atom will be on the support line?
All good questions. There’s been no official (or unofficial, that I’ve seen) response from GitHub just yet.
We’ve been following Atom for years now. Many great developers have put their efforts into the editor. But it’s hard to withstand the gravitational pull of VS Code. Even more so now that Microsoft owns GitHub? 🤔
Find security vulnerabilities in open source npm packages while you code. Receive feedback in-line with your code, such as how many vulnerabilities a package contains that you are importing.
Inspired by Import Cost
GistPad is a Visual Studio Code extension that allows you to manage GitHub Gists entirely within the editor. You can open, create, delete, fork, star and clone gists, and then seamlessly begin editing files as if they were local.
The big idea here is to use gists to seamlessly create your “very own developer library”. The interactive playgrounds is pretty cool, too.
In this episode we talk with Ramya Rao about code editors and language servers. We share our thoughts on which editor we use, why we use it, and why we’d switch. We also discuss what a language server is and why it matters in connecting editors and the languages they support. We also dive into various ways to be effective with VS Code including shortcuts, plugins, and more.
Once the extensions is installed, open a
tsx file and toggle on the sidebar.
Do you remember that endless summer back in ’84? Cruising down the ocean-highway with the top down, the wind in our hair and heads buzzing with neon dreams?
No, I don’t remember it either, but with this experimental theme we can go there.