I learned to code on a Chromebook
When I started programming back in 2015, I didn't have a powerful computer, not even a regular laptop. What I had was a Chromebook, a device that was theoretically designed for browsing the internet and using web applications. It was more like a tablet than a laptop, and I didn't have the budget for a decent laptop. All I had was an Acer C720 Chromebook, a very basic machine with:
- Intel Celeron 2955U processor at 1.4 GHz
- 4GB RAM
- 32GB SSD storage
- 11.6-inch screen
- Zero expectations of becoming a development machine
And yet, it did.
Hacking my first computer: the screw of freedom
Chromebooks aren't designed to install Linux just like that. I had to hack it to make it minimally useful for development. Literally: I had to open it with a screwdriver and remove a security screw that prevented write mode on the firmware. I removed it following a forum tutorial without being very clear about what I was doing. It was all hope. The hope of not turning the Chromebook into a paperweight.
After that, I activated Developer Mode and installed Crouton, which basically allows you to run Linux (Ubuntu, in my case) as a kind of VM inside ChromeOS. Limited, yes, but functional. Good enough to run IntelliJ, even if everything was sluggish. Also, remember that it was 32GB of SSD storage, so there wasn't much space to install things. It was a very minimalist Linux, with just enough to program.
That was my only computer. A Chromebook with Linux running in a VM, and still, I managed to learn to program. With that Chromebook I learned JavaScript, HTML, CSS, and later, Node.js. I learned to use Git, to make my first projects and collaborate on others. With that Chromebook I spent most of the 2 years of my Web Application Development degree.
The limitations weren't my enemy, they were my teacher. They taught me to be efficient with resources, to value every megabyte of storage, to optimize code not as a hobby but out of necessity. Limitations are the fuel of creativity, and that Chromebook taught me to be creative with what I had.
My first hackathon: Moneyball in real time
With that kind of souped-up tablet, I went to a hackathon organized in Las Palmas. There I joined the team of an American with an idea that caught my attention: using iPhones distributed around a basketball court to analyze games in real time. Triangulation, statistics, real-time decision-making... pure Moneyball, but live and direct. Plus, it was inexpensive because three second-hand iPhones were more affordable than a professional game analysis system.
I was in charge of the web interface. While the American worked on a proof of concept where you could pass it a video, and it was able to recognize the ball's movement, laying the groundwork for the product we were proposing. In the end, we won first prize at the hackathon, although the startup didn't go forward due to lack of funding.
The gesture that changed my perspective
Before we ran out of funding options, we continued meeting weekly to work on the product, next steps, go to events, make contacts and so on. At one of those events, something curious happened. We needed to format a USB drive, but my Linux environment didn't have full hardware access because, as I mentioned before, it was more like a VM inside ChromeOS than a real system. And I had no idea how to solve it.
The American, days later, took me to El Corte Inglés and told me to choose a laptop. I was completely blown away. I chose a high-end Acer that I was going to install Ubuntu on. He paid for it without thinking twice. He said: "It can't be that we're trying to start a startup, and you don't have a real computer."
That gesture marked me deeply. Not just because of the generosity, but because of what it represented: recognizing someone's potential and betting on them without expecting anything in return.
Paying it forward
Later, when I finally bought my first MacBook, I decided to give that laptop to a friend who needed it more than I did. It was a way to continue the gesture that American had with me. Because I firmly believe in the concept of pay it forward: when someone helps you without expecting anything in return, your responsibility is not to pay them back, but to help someone else who needs it.
The evolution: my second Chromebook
Despite everything, I grew fond of the Chromebook. It was small, light, manageable. A good adventure companion. So much so that, over time, I ended up getting another one: the Acer Chromebook R11.
This was a step forward: it already came with native support for Linux applications, something similar to WSL on Windows, and also allowed installing Android apps. More versatile, fewer patches needed to make everything work.
With that second Chromebook, I compiled Node.js from scratch in 2018 (yes, it can be done, though you need faith, coffee and patience) and also gave my first talk at an event, JSDay Canarias 2018.
Reflections from a programmer who started with limitations
Looking back, that Chromebook taught me lessons that no latest-generation MacBook Pro would have taught me. It taught me that programming isn't about having the best hardware, but about solving problems with what you have. It taught me that limitations aren't excuses, they're opportunities to be more ingenious.
Nowadays, when I see students worried because they don't have the latest laptop model or the perfect setup to start programming, I remind them of my story. You don't need a perfect machine to write perfect code. You need curiosity, patience, and the desire to turn every obstacle into an opportunity to learn something new.
The best stories don't come from the best conditions, but from the determination to do something extraordinary with the ordinary. My Chromebook was my adventure companion during the most formative years of my career, and that's why it will always have a special place in my memory and in my heart.
Most of the time what matters isn't what you have, but what you do with it.