When Google announced its first Chromebook back in 2011, it was a masterstroke in foresight. The world was just getting comfortable with the idea of cloud storage and computing. Google not only observed but propelled this trend (along with Samsung and Asus) while capitalizing on it before anyone else could.
The Chromebook would be a lightweight budget-friendly alternative to Windows and Apple Mac laptops. Initial forecasts would report that it was a complete failure but it would eventually sell well, particularly in the education market.
Fast-forward to now, where Chromebooks are more powerful than ever and the perfect devices for users trying to escape Microsoft’s buggy Windows 10 updates. And these days, software creation on a Chromebook may be as easy as software creation on any other platform.
But where do you begin? What’s the most efficient way you can code on your Chromebook? In this guide, we’ll answer these burning questions and more.
Chromebooks are going on nearly a decade of existence and yet, they weren’t very accessible for software development until quite recently. Could it have been blamed on the limited hardware, the target market, or a lack of support from the software development community
Possibly, but it just seemed no developers took the Chromebook seriously as a machine that you could use for programming. It was great for browsing and everyday tasks but not very good for building and running software – unless you tweaked it a bit.
Essentially, what limited the Chromebook wasn’t the hardware. It was its operating system, Chrome OS, and its inflexibility that stood in the way. But what is Chrome OS?
To understand the challenges associated with Chromebook coding, we need to understand the limitations of the hardware and the software. Chrome OS is essentially a minimalist Linux distro akin to Porteus or Silverblue.
Originally, Google had not intended it to be a fully-fledged operating system but a specialized one that consumers could use to run the Google Chrome web browser. Early Chromebooks had very limited onboard storage so they weren’t very ideal if you were trying to install a large app.
Nevertheless, it came with an integrated media player and file manager. You could also install Google Chrome web apps and run them like desktop applications. This wasn’t eyebrow-raising as you could already do this on Windows. Although, a feature that made the Chromebook a little more enticing was how you could install and run Android apps out of the box on some models.
This feature was a significant one for mobile developers, even if just for testing purposes. Another feature that made the Chromebook a truly viable option for coding was the introduction of embedded Linux support on Chrome OS 69 (and beyond). You could always install Linux apps on your Chromebook but you were first required to use Crouton scripts to do so.
The introduction of this feature was pivotal because it meant developers and enthusiasts would have a more diversified set of options when it came to coding. This meant that you could now use your Chromebook for desktop and mobile app development, as well as web development almost out of the box.
Before we go into detail about these options, let’s talk about a few things you should consider before embarking on your Chromebook programming journey.
Since the first release in December of 2010, there have been over thirty versions of the Chromebook. Chromebooks all have different specs and capabilities. From USB-C ports to touchscreens. At the time of writing this guide, the most well-rounded and powerful Chromebook was the Google Pixelbook GO, particularly the i7 256 GB version.
This doesn’t necessarily mean it’s the only Chromebook worth programming on. Nevertheless, you must make a note of your laptop’s specs. This will allow you to understand the limitations of your new Chromebook and what you need to add or alter to make coding a bit easier.
In addition to this Certain IDEs and tools have their own system requirements.
--
Chromebooks are generally built like any other laptop. With some models, upgrading your RAM and internal storage is pretty straightforward.
I wouldn’t recommend upgrading your Chromebook yourself, unless you know what you’re doing, because this would most likely void your warranty.
Since most Chromebooks come with USB ports, some with USB Type C ports, the best option for upgrading your Chromebook is through an external hard drive. If you plan on doing a lot of offline coding or testing, then we highly recommend that you get yourself a fast external storage solution.
In addition to this, you should also consider investing in a second screen, external mouse and keyboard, especially if you plan on working from a home office.
You can streamline your workflow by learning about some of Chrome OS’s more intricate and subtle features.
From snapping windows into place, quickly running apps from the shelf by using the alt key, clearing your Chrome notifications quickly, running a Linux terminal and installing and running terminal apps, etc.
Don’t take the Google Chrome OS at face value. Learn how to modify it, customize it, and use it like a real power user. This will make coding on Chrome OS easier.
In addition to this, if you're a developer, you should familiarize yourself with Linux terminal commands. You’ll be using them quite a bit.
You can actually dual-boot Chrome OS with another operating system or run a Linux distro simultaneously using Crouton in a Chroot container.
But the latter is a bit of a waste since the latest versions of Chrome OS allow you to run an embedded version of Linux, mainly for software building purposes.
Completely replacing Google's Chrome OS with Microsoft Windows will require you to remove the write protection screw and flash a new BIOS.
Developers who bought their Chromebooks on sale or won them in a competition may be the most tempted to do this. However, I’d suggest you weigh your options carefully and consider if it’s worth the risk and effort.
It is advised that you back up your files and apps before enabling Linux or turning Developer Mode on.
It should go without saying but once you start coding on your Chromebook, it’s good practice to regularly back your files up. This process can be automated.
Once you’ve enabled Linux (we’ll show you how further down this guide), you can back your Linux files and apps up using these steps:
If you decide that you’re going to keep Google Chrome OS and code on it exclusively, you need to ensure that you’re running the latest version. To check for updates and install them, do the following:
Not so long ago Google made its Chromebooks a little more code-friendly by giving them Linux, Android, and phone web app support. Before you may be able to turn your Chromebook into a fully-fledged coding machine, you need to enable Linux. However, it's important to note that at the time of writing this article, this feature was still in its beta stages. Hopefully, by the time you read this guide, it will be out of the beta stages.
The first command line you should run on the terminal is sudo apt -get update. This will update the terminal and ensure it has the latest software.
*Note: Not all Chromebooks support this feature. Alternatively, you can use the crouton extension, which will require you to go into developer mode. Once again, ensure that you back-up your data if you plan on taking this route.
After enabling Linux on your Chrome book, you’ll be able to install and code Google Chrome web-apps, Linux applications, and Android apps. In this section, we’ll cover the best Chromebook developer tools at your disposal.
Installing any of these tools should be straightforward. However, if you're lost you can follow these steps on how to install VSCode Chromebook:
The above method may not work for you. If that's the case, you can use the following steps to install it:
The above steps will not work for ARM processors.
Even before you could officially run an embedded version of Linux from Chrome OS, you could natively develop Android and web apps.
Developers and engineers who plan to create projects with microcontrollers and single-board computers using their Chromebooks need not be discouraged. There are a few options to work with here.
For novices who have never worked with Linux before and have no interest in learning the ins and outs of Chrome OS, you can always turn to a cloud-based platform. Here are a few that are worthy of your time.
All you need to access the above tools is your Chromebook's web browser.
If you’re pressed for time and really can’t afford to write code, you don’t have to, thanks to the no-code movement. You can build feature-rich applications without writing a single line of code. Here are some of the most notable cloud-based low-code platforms for programming with Chromebook:
Despite Google I/O 2020 being canceled, we’re still fairly certain that Google has big plans for the Chromebook, especially on the development front. Some of the tools highlighted in this guide are only the tip of the iceberg. You can expect them to be expanded upon soon.
Either way, we hope that this guide serves as a map to your Chromebook coding journey. We hope that it points you in the right direction and gives you some clarity on where to start. If you're convinced, check out our recommendation on the best Chromebook for programming, to see what works best for you! Thank you for reading.