What I use for a developer machine

Published: Jan 1, 2020 by Adam Vincent

I’m determined to work a little harder on my blog posts so I’m going to spin off a section of articles for the times when I can’t bring myself to write new technical blogs. In this article, I’m going to briefly cover my current development laptop and why it was chosen when I bought it.

Laptop

Asus ROG Strix GL503

View Product on Asus

Note: The website says it comes with a Intel® Core™ i7 7700HQ, but mine has a Intel® Core™ i7 8750U. Idk what’s up with that, but I wouldn’t have bought it if it did have the 7700HQ.

Why did I chose this laptop?

TL;DR, I decided to sacrifice battery life for performance at a lower price.

The long story, I wanted a cheap dev machine because AMD had announced their next gen processors coming out with massive core / thread configurations, like 12 cores / 24 threads. If Intel jumps in on the action, well it’s very likely I could be behind the power curve very quickly. I didn’t want a dumpy machine though, so I looked at the popular Surface Book and Dell XPS laptops that were just released at the time and found an equivalently powered machine at a lower price.

The NVIDIA® GeForce® GTX 1050 isn’t exactly OP for games, but for handling the Windows UI and offloading some GPU accelerated apps, it’s just enough bang for the buck and it Windows remains responsive while building / debugging applications.

At the time (Nov, 2018), the laptops I was considering:

lappy cpu cores threads price
Asus ROG Strix GL503 i7-8750H 6 12 $999
Dell XPS 15 i7-8750H 6 12 $1323
Surface Book Pro i7-8650U 4 8 $1899
Macbook Pro PFFT     Arm+Leg

The worst feature of the ASUS ROG? The battery life. I think runs for about 2 hours on a full charge. However, for my purposes it’s just fine, as the I rarely need it on the go. It just follows me from office to office. I’ve got a kid and don’t get to hang out with the cool people and mob program at a coffee shop.

Upgrades

There were a few configuration options, I got the cheap one with a 128GB PCIe SSD and instantly regretted it, 128GB is not enough to install Windows and a suite of development tools on. If I wanted Windows Subsystem for Linux (WSL) I would have been out of luck. I Replaced the included 1TB hybrid drive with Samsung EVO 850 1TB (View on Newegg.com), and split that into 2 volumes. Half for Windows, half for storage. I don’t ‘store’ things on my laptop really. Cloud storage is cheap. I put my page file on the 128GB PCIe.

I also expanded the RAM to 32 GB with a pair of Corsair Vengeance 16GB modules (View on Newegg.com). Plenty of RAM to allocate a decent amount of RAM to Docker while still being able to have one or two Chrome tabs open.

While there is a door on the bottom of the laptop to get to the memory, in reality it’s a pretty useless feature unless you’re upgrading from a single 8GB stick to a single 16GB stick. When you crack open the door, you get access to the single slot where factory installed RAM module is sitting. The second slot is on the exact other side of the motherboard, which means you need to disassemble the entire laptop to get at the second slot. Although the laptop came apart quite nicely and I even got the entire thing back together without any ‘extra parts’.

Monitors

2 x LG 29” IPS Ultrawide LG-29UM58-P

View Product on LG

I got these monitors used from a friend and were the right price at the right time. I don’t really dig the 21:9 displays but they are far superior to what I had previously. I am considering getting some kind of mounting device and trying to put the displays in portrait to get more developer-coveted vertical space. TL;DR

Hardware Gadgets

Latest Posts

Visual Studio Tips: Smart Line Break
Quick-Start: Connect ASP.NET to Azure SQL with an Azure managed identity
Quick-Start: Connect ASP.NET to Azure SQL with an Azure managed identity

Connect an ASP.NET Application running on Azure Web Apps to Azure SQL and leave no messy secrets laying about in the web.config file, depending on Azure Key Vault, or have to orchestrate building a connection string with via Azure Resource Manager.

Visual Studio Tricks: Increase signal to noise in your debugger
Visual Studio Tricks: Increase signal to noise in your debugger

Inspecting your objects in Visual Studio’s debugger can sometimes be tedious having to expand objects, arrays and lists trying to find that ‘problem child’ of yours. Fortunately for us, there are some handy tricks to reducing the noise, and focusing in on the members of your object that are important.