Dell bets big on Ubuntu Linux laptops for developers
zdnet.com
zdnet.com
[1] Before anyone comes in to defend Nvidia, the closed-source drivers may be great for you but the closed-source nature of them means you have to jump through some hoops to install them and some things will simply not work properly (e.g., actual Wayland support)
[2] Bonus points for 1) ECC RAM 2) 32GB+ total RAM 3) 2 or more full-speed SSD slots
1. For laptops: Don't bother with a separate/discrete GPU. Or if you must because you dual-boot Windows to play games or what-not, just keep the dGPU disabled under Linux.
2. For desktops: Unless you need CUDA, get an AMD GPU for the drivers (a phrase that, once upon a time, I never thought I would say).
I cannot speak from experience on AMD drivers for mobile APUs. However, their desktop GPU Linux drivers have impressed me the last few years, which gives me hope they can achieve the same level of stability for APUs, even if it has a time lag (e.g. Linux drivers get features 3-months after Windows-based Laptop SKUs are released).
I'm still hanging on to an old Broadwell-based X1 Carbon. If Lenovo releases an X-series or T-series Thinkpad with the upcoming Renoir APU (Zen2-based) I'm am very likely to finally upgrade. Add an option for 32GB of RAM and it enters "Shut up and take my money" territory.
Also, I too am an X1 Carbon user.
Speaking of CUDA, do you have any recommendations for setting up Linux for rendering? I was in a job once where I was planning to do something like this but never got around to it.
Pls ELI5, what is special about Broadwell-based X1 Carbon? What is X1 offering now?
How is XPS? Also how is the spec quality of system76 & purism?
If you look at the X1 line since then, it hasn't changed much except incremental CPU upgrades (and that's a good thing, the design works!) and fixing an occasional generation that had lackluster speakers or a lackluster maximum screen brightness.
In an era before Dell's "XPS Developer Edition" line hit its stride, one reason you would get a Thinkpad was that so many developers of Linux had one. As a Linux user (versus someone actively contributing to DEs, WMs, drivers, etc.) you benefited from their hard work put into fixing their personal annoyances with drivers. Remember this is coming out an era where the very idea of a Laptop's WiFi working in Linux was a dice roll. Issues still exist, for sure, but things really have improved since the 2000-2010 era.
In every case, there is always a chance of warts. Picking a specific distro or DE or version thereof may still bring more pain than others. Nonetheless, my personal and direct experiences with Dell XPS (13-inch, no dGPU), Thinkpad X-series and T-series, and System 76, have all been positive since about 2015. Total number of systems configured and supported (loosely, for friends over time) with each is over 5 in each category. At work we have many System 76 Galago Pros in use. They do good work, and as others have noted you can get nice things like 32GB of RAM. The physical fit-and-finish is still a half-step lower than Dell and Lenovo (imo), but the overall value is good, and we still use them partly to support such an awesome, Linux-focused company.
Again, there will be occasional warts [0], but far less than getting an MSI "gaming laptop" that has better hardware specs for cheaper, and trying to run Linux on it. It seems like a good deal, but then and after fighting Nvidia drivers for hours, you finally get into a working environment, only to find that keyboard function keys may never truly work (just one example among many, from many tier 2 brands, that I have personally helped troubleshoot), or some other deal-breaker in the experience.
I have no direct experience with Purism, unfortunately.
[0] An example of a random wart: even though I have helped set up four Thinkpads with Ubuntu-derived Distros (Mint, Elementary, Ubuntu itself, PopOS) in the last 2 years, a friend recently had issues with stock Debian on the latest X1 Carbon (I was not involved, but he is a Linux guy who knows what he is doing). Mint just works on that model, but he prefers the free-as-in-freedom of Debian and ran into some snags.
I would like my next setup to be AMD based though.
My NVidia experience was like:
1) System upgrade
2) NVidia driver falls
3) Revert old kernel/gcc/etc
4) GOTO 1
After doing this 5-10 times I had very strong feelings to break my NVidia GPU upon the wall, but sold it and never buy it again.
Some distros get this right (and very rarely have a problem) and others just don't get it at all.
32GiB of ECC, 2TiB NVMe SSD (and an optional 2.5" SATA bay, but I opted for larger battery), 4k screen (although I took the 1080p), and an nvidia m1000 - but the Xeon inside has an iGPU.
oh and it came with linux pre-installed.
I have used the GPU as a renderer and I'm pleased to say that it also worked well under optirun/bumblebee. (although, I'm not a gamer, and this gfx card would not be as good as a GTX 1050 which was contemporary in the XPS line). Although when ramping the system at full tilt (CPU+GPU) the thermal solution is unable to keep up.
iGPU means that my X11/Wayland doesn't break, and since I don't use the power of a discrete graphics card most of the time it works absolutely wonderfully.
My only greivance with this hardware is that the black rubber-soft surface picks up hand grease super quickly-
Minor fact-checking / naming correction.
The CPU core architecture progression has been Zen, Zen+, Zen 2.
The retail consumer desktop and laptop CPUs have been designated Ryzen 3, Ryzen 5 and Ryzen 7 with model numbers to help guide you on performance, but starting with a 3 (e.g. 3800X) in desktop CPU indicates Zen 2, while a 3 in mobile or desktop APU indicates Zen+.
Current laptops are based on Zen+, including examples of Ryzen 5 3500U (low power/15W) and 3550H (medium power/35W) and Ryzen 7 3750H (high end).
Many of us are excited for the release of Zen 2 based laptop chips, though!
What purpose does it serve?
So AMD wants to position the current-best available products in each market segment as the current generation numerically, branding-wise, without respect to manufacturing process details. Most consumers don't know what a "process" or "architecture" is anyway. Then the nerds who track these things, such as ourselves, will complain, but we won't be fooled by it.
If that seems to you like taking advantage of people, then yes, that is exactly what they are doing.
Intel dodges this problem (at least for the last 4-5 years) by shipping their mobile SKUs on a new march or process first, and the nerds waiting on DIY Desktop parts their "8th Gen" or "9th Gen" or whatever later.
I agree - high-end 3xxx Zen+ mobile CPUs are generally compared to 8th/9th gen Intel Core i5 chips.
ECC is the stickler to my recollection. AMD apus don't support ECC. Xeons are usually bundled with NVIDIA cards, due to generally lacking on board video.
The AMD RX5500M may change this https://www.amd.com/en/products/graphics/amd-radeon-rx-5500m
But that won't fix ECC. Xeon is usually bundled with quadro or radeon pro. I've not heard of a radeon pro option.
Barring ECC. I've got a first gen A485 2700u. Two NVMe drives, 32GB ram. With an option to go 64GB. Great Linux support. The trade off is weight. Since ryzen is not as power efficient at idle I need bigger batteries. Performance is next to an i5 8th gen u series.
Ice lake is just shy of AMD apu performance last I looked. But more power efficient.
I've moved on from a high performance laptop. I have an ITX build that fits into a camera case. For being a digital nomad. Then when at a coffee shop. I have a git lab instance in my home lab with CI/CD. Changes are committed automatically on save pushed and deployed to my home server. For testing code while I'm at the coffee shop.
AMD and intel both haven been phenomenal for linux. I have a low profile AMD wx2100 for my portable ITX build. Perfect for non gaming. I miss Nvidia s performance edge. But not the driver mess.
So you bring a spare monitor with you to the coffee shop too?
With 2400g a year ago I had frequent GPU driver crashes (daily). Now it crashes once a month or so. Running Steam and some light games was not possible at all (haven't tried recently) because it had terrible frame rates, shader and geometry glitches. Meanwhile on Windows it worked just fine.
At the same time my experience with Nvidia on Archlinux has been very good. It has good performance and overall it works as it should.
I had similar experience with AMD GPU drivers 10 years ago when I started using Linux so I stick to Nvidia. I would like to use AMD cards but the software seems to be absolute garbage.
A have also had very good experience with Intel GPUs on Linux in laptops but they are not meant for gaming.
Either way the X395 and T495 both have a maximum of 1080p screen. I have a 1440p and will never go back. In fact I want the X1 for the 4K screen and the beefier chassis. I'm on my third panel and they all develop white spots from the cover not being protective enough.
Wow, really. Hadn't heard that. Complete bullshit.
Is that what it's from!? My T450s screen is full of those spots...
If you have a team at work dedicated to the tooling problem, remote dev can become really nice though.
IMO it doesn’t matter if you’re developing local desktop apps or cloud apps, anything that’s intended for broad distribution.
What’s the point of one extra test run and compilation in a local fiefdom of personal customization?
It’s even sillier for containerized apps where desktop metrics are way different than cloud providers.
Never run any tests locally?
Going to be tricky to develop on a flight then, isn't it?
This is due to the well known engineering limitation that links LCD size to the density of RAM modules that can be supported by a motherboard.
Autonomous
Remote
Cache
Assignment
Synchronization
Monitoring
I've been developing on 8GB Mac for years with no problem. Doubt Linux needs more to do the same.
Sometimes for testing a VM or container (or three) are needed for testing.
Sometimes something heavy needs to run local for testing, maybe even one that specifically requires an OS you aren't currently running.
Given how dirt cheap ram is, I think it's really silly for all laptops/desktops to not support at least 32GB ram.
Seems like a selfish short term perspective to limit ram to 16GB, although I do expect that it significantly shortens the useful life of a laptop.
Also I can't compile servo and run IntelliJ at the same time which really slows down turn around.
That's not even accounting for Firefox + other programs.
This setup is pretty common for people working on large integration projects.
Call me old, but these days everything including people are so ram hungry I cannot believe the days when things were being done with less than a GB ram.
People talk like having more ram feels like a champ but as developers you might as well want to think about how things can be achieved using less ram.
Also, even among software engineers, the need for more than 16 GB RAM is presumably rare.
Would you care to mention what do you need it for?
This is a standard setup that I've seen hundreds and hundreds of developers use on large enterprise / consulting and systems implementation projects.
It's still very common for many many developers to live in world that doesn't solely consist of a text editor with JS.
That said, I would not use their pre-installed Linux because of security concerns. I would certainly install one myself, with full-disk encryption.
It's it Microsoft crippling things (technically or legally) or are Dell not capable (technically, or otherwise) of making the install of Linux work in a straightforward manner ... or what?
Does anyone else do it better? How do Lenovo compare, say?
You can get Linux running on the vast majority of PC (desktop and laptop) models. There's value in this sort of bundle for people who want to buy a Linux machine with components known to have driver support and/or don't want to be bothered with installing and configuring it themselves.
Excuse me, what year is it?
I ended up buying the XPS 15 and just installed Ubuntu alongside pre-installed Windows 10. It wasn't without hiccups but thankfully those who came before me posted their solutions on how to fix some of the issues, namely the Wifi card not being supported.
All in all, for my basic needs of coding C++/Python and using ROS, I'm pretty happy with my decision.
Say what you will about Apple and how they treat developers (read: not well), but the modern MacBook Pro (sans touchbar) is truly a great dev machine.
Am I the only one who actually prefers smaller touchpads with physical buttons at the bottom? I've tried using Macbook's touchpad but couldn't stand it at all.
Besides that, most of the devs that I know seem to rarely use the touchpad of their laptops, relying mostly on the keyboard for navigation (these are your normal IntelliJ using devs, not the Vim warriors), so the space for a larger touchpad is usually just wasted space.
> How tightly does the hardware integrate with the software
Probably not all that well, but probably way better than on a Windows laptop with an aftermarket Linux installation at least.
I really really want MacBooks to remain the go-to dev machine, but over the past few years the company has shown a distinct lack of interest in that market (aside from the Mac Pro announcement, though that's arguably a separate market). We'll see if anything changes with the rumored 16-inch MBP, but it's not surprising to me that companies like Dell are smelling blood in the water.
I find the XPS13 to be a replacement for the 11” MacBook Air. It’s almost the same physical size except that you get a 13” 4K screen, a quad core processor, 16Gb RAM and 1TB of storage.
The keyboard has a nice feel.
The track pad works well now (IMHO) although out of the box I don’t get all the gestures that macOS has. To be honest I can live with two finger scrolling and better keyboard shortcuts than macOS.
The only real issues left for me are around mixing HiDPI with 1440p external monitor, some sleep issues and Gnome clunkiness in the latest Ubuntu.
Pretty sure those are fixable.
Oh and Firefox could definitely make better use of the GPU.
* No ability to run kernel level debugging tools like dtruss without completely compromising the security of your machine.
* Unreachable battery that requires a one week maintenance window to replace. If your battery is part of a defective batch, you have to give up your work machine for an entire week to replace the battery.
* Super flaky logic board that's completely separate from the main board, with zero ability to troubleshoot or debug any issues with it. It also causes lots of unexpected issues, like the haptic feedback failing, resulting in a touchpad with no click.
* Absolutely no user land documentation at all. If you need to figure out how to configure or use some piece of software, good luck looking through random message boards and blog posts.
* Keycaps that wear through after a few months of heavy use.
* Designed with insufficient cooling, running at near full load will cause the CPU and GPU to massively throttle to reduce heat.
* Only has proprietary Thunderbolt 3 interfaces, without even a single standard interface (the headphone port doesn't count for much)
* No standard USB interface type, and charges massive markup on the required adapaters to allow the use of existing devices.
You can disable just the “debug” portion of SIP, though this is supposedly an unsupported configuration.
> Absolutely no user land documentation at all.
Contrary to what the internet has been abuzz about, there actually is some documentation. It’s just not very good as of late.
> Only has proprietary Thunderbolt 3 interfaces, without even a single standard interface (the headphone port doesn't count for much)
> No standard USB interface type, and charges massive markup on the required adapaters to allow the use of existing devices.
Uh, Thunderbolt 3 is backwards compatible with USB C?
If you work at a desk, you're supposed to add an external monitor and a keyboard.
I’ve typed on a laptop sitting below an external monitor for since 2006ish. I do this because I want a narrow keyboard without a numeric keypad centred below my displays.
I want a touchpad directly below the keyboard so that can reach it quickly before returning to the home row. I want everything as symmetrical as possible.
I touch type with a non qwerty layout so I want my keyboard to have the same feel regardless of if I’m in the office or away on business.
I find heavy, long throw keys make my wrists tired so I use a very light pressure short travel much more comfortable over the long term. Eg the kind of switches you get on laptops.
I have an IBM model m and a Pok3r with MX Brown switches on the for comparison and I don’t really care for either of them.
Your usecases maybe different from mine. I’m fine with that.
I'm glad my employer outfits me with both a Linux workstation and a Linux laptop. One of the little fears of looking for a new job is I'll want to filter out some high percentage (like 90%?) of positions for the petty reason that they just dump a macbook pro on every dev as their sole machine. Thanks but no thanks, I can't stand any Apple hardware or software.
As another comment mentioned, there is no perfect "for devs" computer. Developer tastes are too broad and disjoint.
If you plug in your laptop to an external monitor and a keyboard, you essentially get a desktop, except you can take it out there with you without worrying about leaving any data or config behind.
When you plug in to a dock you "essentially get a desktop" except in all the important ways: workstations are much more powerful (for me the full build difference is 25 minutes on a 2014 workstation vs 45 minutes on a 2018 laptop; our newer workstations are faster still and will bump me from 64 GB RAM to 128 while the laptop has only a passable 32), don't overheat or degrade from constant power, have faster and bigger storage, have various peripheral ports already (often more than docking stations even (and functional, though this is a jab at a specific keyboard: https://matias.ca/aluminum/mac/viewer/3.jpg -- imagine what happens if you plug in a yubikey)), support proper gigabit+ networking, typically have better GPUs (or make it trivial to insert better GPUs) and can drive more and bigger and faster displays...
Workstations also contribute to healthier work cultures. They demand a desk that's "yours" and can be personalized some which is a tempting thing to take away in laptop-only orgs, they demand a reasonably secure office space and trustworthy maintenance staff, they demand a good office network that among other things also enables a dumb and cheap windows laptop work flow: sign in remotely (like with NoMachine) and everything is done on the workstation, it's also another solution to the 'worry' of missing state. (Some companies take that to another level and cheap desktops are also dumb clients to a cloud VM.) Finally they help avoid the feeling of your work always being taken home with you -- even if you additionally have a laptop it's more there for work-from-home or travel support, not the primary work mode, and expectations of out-of-the-office-hours tasks and availability being normal are gone.
This should go without saying I hope!
There was a time when you could reasonably evaluate employers with the Joel Test: https://www.joelonsoftware.com/2000/08/09/the-joel-test-12-s... But if you take "10 or lower and you’ve got serious problems" as accurate, it seems very few orgs these days lack serious problems. Ignoring the other criteria, few seem to meet even the relatively easy to meet criteria of having quiet spaces (8) and having the best hardware (9) -- or at least if not 'best', then more impressive than what the typical employee has at home.
It would seem easier for Dell to market a single product range that all have good Linux support.
That would seem to give them better good will. I know nothing about marketing so maybe there’s some reason I don’t get.
Bought one, found official company line is not supported at all, seems deliberately, gave it to my 15 year old.
It was so flimsy that six months of school bag transport, in special bag with laptop section, it is totally trashed. Flimsiest laptop I ever saw, by a long, long way. Plus for the specs, it was slow.
Luckily I was shelling out for the expensive but comprehensive insurance.
Steer clear of MSI.
Yet, linux support along the Dell product line is extremely sparse. Between the inspiron 3000 and the xps 13 there is a huge, windows-only gap.
I wish they would ditch the chintzy plastic interior tho. I would pay double for a new MacBook Pro if it supported Ubuntu and had a reasonable keyboard. I miss my old 2011 model.
But please, PLEASE, make them for sale in Australia! I want xps laptops! I don't want windows!
I have a Dell Precision 7530 laptop with an I5 CPU, 64GB of RAM, AMD GPU, 3 SSD M2 drives... I installed Ubuntu 18.04 (from Ubuntu site) and it's the only distrib that work perfectly out of the box with an external monitor, suspend mode, ... :)
Note: I tried Linux Mint (issues with external monitor, suspend mode, ...), Parrot Linux (doesn't work at all) and others without any success.
Even as a mac user, the apps I use daily run on linux as well but its '0' tweaking that I have to do, is what keeps me with Mac. Basically, my laptop is my tool to get my work done. I would like to focus on my work rather than focus on managing my tool.
Remember windows before the precision drivers? Linux touchpad stuff today is where windows was a decade ago. This is a fundamental portable use issue that has to be tweaked with each distro and machine.
Hand a Linux machine with a clean install to any non tech person and they will ask if your trackpad is broken. It is.
Why not OpenBSD, Debian, FreeBSD or Arch?
In my opinion we have to do more to free driver source code. To use Ubuntu does not support this I think.
How’s the track pad? Track pad and MacOS is still far ahead of the competition. Despite all the backlash Apple gets for TouchBar and Catalina it’s still miles ahead of the competition.
Note that you need to choose "For Work" in order to get the option for the Developer Edition with Ubuntu.
https://www.dell.com/en-ca/work/shop/laptops-ultrabooks/sr/l...
https://www.dell.com/en-ca/work/shop/laptops-ultrabooks/xps-...
Under tech specs, it will say "Operating System: Ubuntu 18.04, Linux - Included in price".
This is one of the main reasons I am keeping my MacBook. The trackpad feel and the gestures on the Mac are much better on then MacBook than on either windows or Linux. When I have my windows laptop on my lap to work everything’s feels really fiddly compared to the MacBook.
I tried the Linux equivalent of Windows hello, i.e, howdy with the infrared camera but it does not work well for me and is not as secure.
Dell must fix that situation.
The only real fiddling I had to do was disable the lame 'windows sleep' that kills the battery quite quickly.
This is typically stuff you can get on your own usually by downloading drivers from the manufacturer's website and either extracting firmware from their Windows drivers or downloading a Linux-specific driver package, if available. All Dell is doing is collecting it all up and pre-installing/configuring it for you.
I'm not optimistic.
When I do the same with Ubuntu I get a massive list of processes, most of which I don't understand or recognize. I'm back to the Windows feeling that the OS is a transcendent black box, but now with no Microsoft Office, power management, and display (esp multi-monitor) bugs.
I love the idea of Linux but it seems like the less practical option.
You mean, starting at 16GB of memory, right?