Who needs Surface Ultra RTX?

Microsoft announced the new Surface Ultra RTX Laptop today. Of course I want the RTX Spark Machine! Who doesn’t? It is awesome! I am being nostalgic about my original Microsoft Surface Pro from 2013 though. I have fond memories of developing and testing Windows 8 Apps and Windows Phone Apps (remember those?) on it.

The spec sheet of my Surface Pro 1 from 2013 is ancient: 3rd-gen Intel Core i5, 4 GB of RAM, 128 GB SSD. Windows support ended years ago.

I decided to wipe it and give it a new life with xubuntu.

xubuntu 26.04 refused to boot at first. The culprit turned out to be the installation media rather than Linux: the Surface was hitting USB enumeration and read errors with my original flash drive. Safe graphics made no difference. A different stick, USB 2.0 this time, dropped me straight into the live environment. Live environment was extremely choppy and slow. I was able to complete some basic validations. I settled on xubuntu 24.04 LTS for the permanent install, and I will revisit 26.04 now that the basic setup works.

Then the machine turned out to be more usable than I expected. Wi-Fi, Type Cover, and the Touch Screen all worked, and Firefox, Git, Python, terminals, SSH and lightweight dev tooling all run fine. XFCE and Ubuntu’s package ecosystem give me a current Linux environment that still leaves room to work in 4 GB of RAM. The Surface Pro’s compact form factor makes it light and portable next to my Lenovo Legion behemoth. The whole Surface Pro is probably lighter than the Legion’s power brick.

I am not going to run local LLMs, a Kubernetes cluster or a dozen containers on it. As a small Linux terminal, SSH client, coding machine, browser or home-lab console, it has plenty of life left.

I will be using it as a host for coding agents. The model runs in another local headless server (more on that in another blog post) or in the cloud, so what is left on this machine is an orchestration loop, HTTP calls, a git checkout and a shell, over tailscale. That is an I/O problem, and a 2013 i5 should do just fine. Headless over SSH, 4 GB should be enough. I’ll find out. The other appeal is blast radius. An agent that runs shell commands gets a cheap, disposable machine of its own instead of my main one.

There is something satisfying about taking hardware at the end of its commercial life and saving it from landfill.