The Future of Code Is in Your Browser
Cloud-based coding environments like GitHub’s new Codespaces make programming more accessible
Over the past decade, desktop software has gradually been eaten by the web browser: Music moved from iTunes to Spotify and Pandora, word processing moved online to Google Docs and Office 365, and design moved from Photoshop to Figma.
Web development, though, has remained loyal to the desktop, requiring increasingly powerful computers to handle modern programming. While code editing tools like Glitch and CodePen have allowed developers to do some work on the web, more complex development languages have remained stubbornly connected to desktop software.
The popular software development hosting platform GitHub may be about to change that status quo. The Microsoft-owned company unveiled a new code editor called Codespaces last week that works entirely in the web browser, regardless of the device you’re using. Based on the same codebase as Microsoft’s Visual Studio Code editor — which runs on Windows, Linux, and macOS — Codespaces creates a button on the GitHub website that is a one-click route to your entire development environment online. Since GitHub is where many developers are already accessing and storing their code regardless of which coding environment they use, it’s a convenient place to launch a code editor. And there’s no need to install anything on your device.
How to Build the Speedy Home Wi-Fi Network of Your Dreams
You might even have some fun while you’re at it
To be clear, Codespaces isn’t just a code editor—it’s also an entire “containerized” version of your servers, meaning it allows you to preconfigure whatever resources you need, like a PHP server and a Redis cache, to work on a project.
Made popular by a company called Docker, containers allow server functionality to be packaged into tiny, lightweight slices, which can be mix-and-matched together to build a development environment. If you’re working on a PHP-based Laravel project, for example, you’ll need a PHP server, MySQL, and a Redis…