Update (2019/1/7): I told you so!
For some stupid reason, this idea has been all over my head for the last few weeks, so I’m just gonna get it out and hopefully, in a few years I can open this can told someone else “I told you so”, and probably buy one.
What do I want?
A desktop replacement (for me, or just developers in general)
My T480 is not OK as my work computer, but I would definitely like to have a bigger display, and sometimes messing with external monitors, cable not outputting 4K 60Hz, a and how to route them correctly so that the desk does not look like a mess, it’s kinda annoying.
Why not get a desktop then?
I am an expat, and just the idea of needing to figure out how to deal with all the hardware when I move is just too much. Also, I think it’s safe to say that most people can live with the performance of a laptop and enjoy the ability to move the device around when necessary, without having to deal with all the cables, accessories, etc.
So you just said it, laptop is good enough for most people, just get a better laptop, what’s wrong with that?
That’s exactly why I am writing this: I think for me (and hopefully developers in general), very few device actually hit the mark, and those that do are usually also super expensive.
So you are just a super competitively price laptop?
Kinda? I feel like for some of those expensive but also good laptops, a lot of people don’t actually need some of the expensive components and features, and that’s why I didn’t buy them. The main part of those laptops are good, but I don’t want to have to also waste a bunch of money to get those usually unnecessary features.
Can you be more specific about what stuff are unnecessary?
Yea, here’s my list of very good but flawed (for me) laptops:
- MacBook Pro 13 & 15: TouchBar is annoying, keyboard is too shallow for me, a bit expensive
- XPS 13 & 15: not upgradeable, new version’s new keyboard are too shallow as well
- PixelBook: Y-series fanless processor, Crostini still a long way to go
- Surface Pro: Kinda expensive, and super not repairable/upgradeable
- SurfaceBook: Super expensive, also super not repairable/upgradeable
- T480: It’s kinda too hot and heavy
- Razor Blade: It’s so close to my perfect laptop, I just with it can be a little bit cheaper. I don’t mind downgrading the GPU (I don’t really need it right now). Update: Apparently it also have a some minor driver issue with the trackpad. I am glad that I didn’t bought it, but I am sad that it is so close yet so far from what I need/want.
- System76 laptops: They are also so close, but most of their laptop look like they are from 2012. VGA? Seriously?
- All the fast and upgradeable gaming laptop: from what I can tell, 80% of them are too big, the other 20% are too hot
There are probably still laptops that I missed, but I think you get the point: most laptops have 1 or 2 issues that makes me feel “ehhhhhhh”. I feel like a lot of them (except those gaming laptops and PixelBook) don’t really have a target audience, and they just settle on “I’m just gonna cramp as much as I can into it), and it means that almost everyone are paying for stuff that they don’t actually need. But that’s how economy works, so I’m not gonna judge them as bad laptop. They are just not the right cup of tea for me.
So do you wanna have a 100% customized laptop?
Yes and no: yes in the sense that “I want it to fit my requirements as much as possible”, and no in the sense that “I want/hope other developers would also like those laptops”
What exactly do you want then?
- Intel 8th Gen U or H series laptop (up to 28W), or Ryzen Mobile APU
- User upgradable DDR4 SO-DIMM slots *2
- 1 or 2 NVMe SSD
- 17-ish inch 4K IPS LCD
- 4 USB-C (at least 2 Thunderbolt 3), plus 1 or 2 USB-A
- SD Slot
- Windows Hello IR camera, or fingerprint sensor
- HDMI 2.0 out
- 3.5mm headphone jack
- Surface Pro style kickstand
What? It’s a tablet?
Well technically yes.
I thought you said desktop replacement?
Yes, and here’s my point: the “tablet w/ kickstand” style is actually pretty damn good as desktop replacement: Kickstand devices are never going to be as lap-able as laptop with a hinge, because you just need more points of contact to get the whole thing stable. If you think about it, this category is pretty much just an AIO with a battery, lower wattage processor, and external power bricks.
Okay, so why don’t you just get an AIO instead?
As a developer, being able to move your workstation around for meetings and stuff is really useful.
Okay, just get a Surface Pro then!
I don’t think it is a good developer-focus desktop replacement because
- It’s display is too small
- It seems that there’s just always some minor issue when using Linux (which is what a lot of developer uses). Just search on Google, reddit, or other sites, and they will be stuff not exactly not working/need some hacking all the time.
- It’s not maintainable nor upgradeable
Okay, so you want a big Surface Pro that does not score a 1 on iFixit
Pretty much. Also it should run Linux with no or minimum hassle.
Any other special requests
Just some minor stuff, such as
- Keyboard cover that uses standard USB as the POGO pinout
- I am still not sure about discrete graphics. Even as an Android dev right now, I don’t really know if the MX150 in my T480 is justified. On Linux there’s always driver problem, but if you need to do ML or use Adobe stuff, GPU acceleration are super useful.
- Material: I have always love polycarbonate, but for a laptop with so many heating elements, maybe metal casing makes more sense?
- OS support: Windows and Linux (probably Ubuntu) versions are definitely a must, but with the recent Chrome OS Linux container thing, maybe it could also be an option? Just keep in mind that also means the keyboard cover will also be a bit different/need to make keyboard cover with both set’s of glyphs on it
TL;DR: I think a 17-ish inch Surface Pro can be a decent developer-centric desktop replacement in their office.