Hey, you, Node.js developer. Your second laptop should be a Surface Go.

Brian Holt
6 min readNov 5, 2018

--

Look, stop laughing at the title, I’m serious. I too used to find the idea of doing Node.js development in Windows to be a simple non-starter, something not even to be considered. Let’s take you on the journey of how I ended up buying a Microsoft-made, tablet-form-factor, Windows-running computer so I could write Node.js code.

Can you even run Node.js in Windows?

Real Linux runs inside Windows. You read that. Real Linux is running inside Windows. This isn’t some weak emulation or a VM: this something called WSL, the Windows Linux Subsystem. It runs a real Linux kernel as a subsystem inside Windows.

What does that mean for you? It means you can run Node.js apps in a similar environment as they’ll be running for your production environment. It means all your .bashrcs will work natively, you can scream oh-my-zsh from the Windowed mountain tops, and you can apt-get like no one is watching.

Ironically what got me to switch from Windows to OSX in college was the fact you could run bare-metal Windows on a Mac with Boot Camp, and now what got we me to give Windows another shot was the fact I could run real Linux apps in Windows. I guess I have committment issues.

But what about the rest of my workflow?

Something I worried about is that I wouldn’t be able to work in the same way on Windows, that I would have two workflows depending if I was on my Mac or on my Surface. It turns out this was (mostly) unfounded! I’ve found that my entire workflow seamlessly migrated out Tim Cook’s realm and into Satya Nadella’s.

  • For the code editor, accept no subsitute for Visual Studio Code. Since it’s made my Microsoft, it’s unsurprising that it works well on Windows.
  • For Visual Studio Code, you can actually sync the settings between your various laptops using the aptly-named Settings Sync.
  • Night Owl and Dank Mono, the theme and font I’m accustomed to, carried over nicely to a Windows environment.
  • Hyper Terminal works great on Windows and even lets you interact with the WSL so you can use your favorite shell (mine is fish) in your same terminal emulator.
  • The rest of my tools work without problems either, like Spotify, Slack, Firefox, and LastPass.

The only real difference in my workflow is I couldn’t find a git difftool that I liked as much as Kaleidoscope. However, fear not, as the one that ships with Visual Studio Code is pretty damn good.

Okay, I can try Windows, but why the Surface Go?

The Surface Go is the size and weight of a normal iPad

. This was really big for me because while I don’t have so much of a need for a tablet that I own one, it means that can sub for one when I would want one. It’s great for reading Twitter, Reddit, and the New York Times while lounging about the house or in bed.

Given its size, the Surface Go is ideal for travel. It’s small enough that generally you don’t have to put it away on take off or landing while flying. When you’re trying to land that one last commit before your train of thought is derailed by getting off the plane, that can make a lot of difference. And with a decent amount of storage (either 128GB or 256GB), you can load episodes of your favorite show to watch where-ever you’re traveling.

Cool, but how much is it?

The Surface Go is pretty damn cheap for what it is. The base model is just $399 to get started with. I went with the $549 model because it got me 256GB of storage and 8GB of RAM. If you’re going to doing any amount of development, that extra RAM will make a big difference to you.

What else do I need for it?

Also be sure to factor in getting a Type Cover. The Type Cover is just a requirement of getting a Surface Go: it’s both keeps the screen safe and it’s a real keyboard to type one. The on-screen keyboard is okay for surfing the web but it’s not ideal for long coding sessions.

I’d say Microsoft Complete coverage is pretty close to required as well. It’s a program similar to Apple Care that adds a bunch of additional coverage to your Surface Go if you drop it or break the screen, Microsoft will just replace it.

A few other accessories I’d advise you to think are the Surface Pen for navigating and drawing, the Arc Mouse for a comfortable and portable mouse, and the Dock so you can just drop your Surface Go in a dock and have it work with your whole home office setup.

You want to checkout the Surface Go bundler and see if that deal works for you. You can get a nice cover and Office on the cheap out of it.

Now compare this getting a second Mac or something to run Linux on: you’d be hurting something comparable to this for $1,000, and nothing in this smaller form factor. It’s a good deal.

What do you for fun on it?

To be truly transparent, I was really excited also to have a Windows machine to be able to play some games too, particularly one that I can take on a long flight or while waiting in the airport. And the good news about the Surface Go is it can play some of the older games (which is what I wanted to play anyway) fairly well! Here’s what I installed:

  • Age of Empires II HD Remaster: This is the game I am most excited about. I loved this game as a kid. They added three more expansions. All new content for an old favorite.
  • Caesar III / Zeus + Poseidon: Two more games I spent long nights playing. I love city builders and particularly the historical twist on them.
  • Star Wars Rebellion: A turn based strategy game like Civilization except are everything is Star Wars-ified. It doesn’t get much better than that. And it runs beautifully on my little Surface Go.
  • Dungeon Keeper 2: I. Love. This. Game. Okay, I’ll stop foaming at the mouth, but this game is so much fun. Imagine a real time strategy game where you can’t directly control your minions: you have to convince them to do things. It’s hilarious.
  • Factorio: A new recommendation amongst my favorites of yesteryear. This is a seemingly simple game where you mine minerals, which you refine into plates and wires, which you manufacture into circuits and engines, when you assemble into rockets and tanks. It’s engrossing and you may lose days of your life to it: be forewarned.
  • Netflix App: Wait, why would I install the Netflix app from the Windows store? Let me give you a little secret: the only way to stream Netflix in 4K from a computer is either via this app or from Microsoft Edge. And I need to see Black Mirror in terrifying ultra high definition.

Alright, I’m in

Treat yourself

--

--

Brian Holt

cloud dev advocate @ microsoft, teacher on frontend masters, panelist on front end happy hour, board member @ vetswhocode, lover of dogs and islay scotch