Canonical recently made an official announcement on its company blog stating that the Dell XPS 13 Developer Edition laptop (that is, Project Sputnik) now ships with Ubuntu 18.04 LTS (Bionic Beaver) pre-installed. Upon reading this, I quickly reached out to Dell asking to review the laptop. I'm a Linux developer, and when a developer edition laptop is marketed with Linux pre-installed, I need to experience it for myself. The laptop eventually arrived, and like a child on Christmas morning, I excitedly pulled the device out of the box and powered it up for the first time.
This is a pretty rock-solid notebook. The device is very light and easy to carry—meaning, it's mobile (which is very important in my book), thin and sleek. Not only does the device look good, but it also performs very well.
In my possession is the 7th generation of the Dell XPS 13 Developer Edition laptop. This generation ships with an Intel Core i7 8th Gen microprocessor. It is a four-core, eight-threaded (hyperthreaded) i7-8550U CPU operating at a 1.8GHz frequency. With this configuration, the system itself reports eight CPUs. The system is installed with 16GB of RAM.
Upon first boot, you're greeted with a Dell welcome screen followed by a generic set of Ubuntu-related questions (such as license agreement, keyboard layouts, timezone and so on). Toward the end, you are given an option to create a recovery USB image, which could be very handy one day. If you opt out of creating one, no worries, you can go back and create one at a later time.
The first thing I did, after logging in to my user session for the very first time, was run a software update.
Although this does not at all relate to the quality of the device, I did find it a bit strange that the operating system was pre-installed with both Chrome and Chromium web browsers. I'm not sure why anyone would need both, but they both were there. If you're a Firefox user, you'll need to install it from the Ubuntu Software center.
One of the most important aspects of any computing device is its input controls (keyboard, mice and so on). The keyboard feels comfortable—that is, with the exception of the positioning of the PgUp/PgDn keys. Those two keys are very close to the left and right arrow keys. I'm sure, over time, I'll end up getting used to it, but during the course of my review, I constantly and accidentally pressed the PgDn key while navigating my way around in a terminal and text editor. Again, the keyboard feels nice. It's responsive, and the throwback from when you press the keys down feels just about right. Although, why is there still a Windows icon for the Super key?! I jest.
I also do appreciate the backlit keypad. You even can toggle the backlight on and off manually. This backlight also fades to off when the keys haven't been pressed in some time. Although, I don't recall what that idle time or timeout is set to.
The touchpad is very responsive as well—maybe a bit too sensitive. I find myself accidentally closing tabs or selecting things I never intended to select. By default, Ubuntu enables natural scrolling among a few other touchpad-specific features.
The notebook comes with a touchscreen bonded to the display. I always find it a bit awkward trying to make use of a touchscreen while maneuvering between a keyboard and a trackpad, but that's just me. However, I do see the value in it when it comes to testing and debugging applications intended for mobile, embedded or web use. I did notice a couple things with the touchscreen:
What I do find a bit frustrating is that I am not able to disable the touchscreen from the Ubuntu Settings panel, unless it is very well hidden somewhere. The only way that I believe this can be done is through the Xorg configuration files.
Overall rating: 4/5.
The display is absolutely amazing, and by amazing, I mean beautiful. Everything is very crisp and clean. As a software developer, I definitely can appreciate all of the available screen real estate. I live in the terminal, and more specifically, I use my preferred developer tools: vi and grep. It is a 16:9 screen scaling to a 3840 x 2160 resolution (4K). So, needless to say, there's plenty of room for me to open one or more terminal windows on the same screen.
The screen resolution is so large, some applications don't necessarily scale as well as the rest of the desktop environment. You can go to the Settings→Devices→Displays menu and change the value of the Scale field from the default 200% to something more, but some of the other applications may not comply with the changes (a good example is GIMP).
Right before I dove into this area, I went to the Ubuntu Software Center and installed the graphic editor. The application was loaded almost as soon as the installation was complete, and it was immediately apparent that the icons and options of both trays did not scale like the rest of the operating system.
Display overall rating: 5/5.
I really enjoy the quality of the onboard speakers. I am streaming audio through it while typing this review, and it sounds pretty darn good. Everything is clear and crisp, as one would hope.
The microphone worked as expected, and the folks on the other end of my video chat were able to hear my voice with little to no interference or background noise.
Audio overall rating: 5/5.
Power consumption and battery life can make or break a device intended to be used for mobile computing. If you can't get this right, what's the point? Overall, I am extremely impressed with the power consumption of this device.
To put this into perspective, I was running from battery for 30 minutes while navigating in a browser and writing my notes for this review in Google Docs, and 95% of the battery is still remaining—not bad. Of course, if I were to increase the workload on this machine, that number would quickly drop.
As one would expect, the backlight of the panel dims to help conserve energy, and you also have the option to reduce the brightness or turn off the backlight underneath the keypad. You can do other things to reduce the power consumption as well. For example, if it isn't being used, it may be to your advantage to disable Bluetooth.
Fast-forward a few days: the notebook has been off of the charger for three days now. I've been routinely going back to the device (and waking it up from hibernation) to use it for minor tasks here and there throughout the course of those same three days. The notebook is still above 60% battery. For a four-core device, this is really good.
As an added bonus, you can check battery state quickly without opening up the lid and logging in to your session. The left side of the notebook has a power gauge where by pressing a button, you are given a general and visual approximation.
Power consumption overall rating: 5/5.
Boot-up time was mostly reasonable. Although I didn't exactly take a stopwatch to it, it felt to me as if I was at the login screen for 15 seconds after I pressed the power button. Now, I'm not entirely sure what's going on under the hood before the operating system begins to load, but in my personal opinion, I was expecting something a bit faster when running off of an NVMe SSD. Either way, even 15 seconds is not unreasonable. And unless I reboot after a system update that requires it, I'll never power-cycle my machines.
Waking up from a sleep or hibernate state is also very quick. Although I do not power off my notebooks, I instead close the lid to ensure that my applications and their states are still present when I reopen the lid and reawaken the device. Within a second or two, I am prompted with the login screen.
To test the system's overall performance, I decided to build three separate Linux kernels simultaneously, all different versions:
What really impressed me was the speed at which the system was able to untar the archives. For instance, the 4.19-rc2 gzip file was approximately 154M in size and took less than four seconds to uncompress—3.961 seconds to be exact. Not bad!
When it came down to preparing and building these kernels all simultaneously, I was surprised that the base Ubuntu image for a developer machine did not include the developer environments for things like the C library or even the kernel. I needed to install header files from libc-dev just to build things in C. Eh, those are minor details.
Back to building the kernels, I gave the exact same config
(x86_64_defconfig) of the kernel to all three and ran the build
simultaneously. All three completed within 25 seconds. Wow! Now, when I
parallelize the builds with the -j
option in the
make
command, the time
dropped to less than ten seconds. I mean, holy crap, wow! This is
a four-core hyperthreaded machine using NVMe. So, I would expect it to
perform, and it does just that. The 16GB of memory obviously helps a
whole lot.
Wireless network performance also was good and seemed to be very responsive.
Performance overall rating: 5/5.
Now, aside from a single microSD slot and a headphones jack, everything else is USB-C. This seems to be the trend nowadays, and it makes sense now that newer devices to market all support the protocol. Even the power adaptor connects over USB-C and will occupy a single USB-C port.
But, what does this mean for expandability? It means you are required to buy adaptors and expanders to connect more devices, which includes external monitors. Dell does provide the customer with a single USB-A to USB-C adaptor, and in most cases, that may be enough. This way, you can connect your USB thumbdrive or that external hard drive—or maybe even that one developer microcontroller board to communicate with its JTAG interface over serial.
Some folks may have issues with this, but honestly, I personally don't mind. The protocol is much more superior than its predecessors, and it can sustain more connections for those that require it. Truth be told, you need to give Dell some credit here. Unlike some of its competitors, Dell is at least easing your transition from USB-A to USB-C by providing that adaptor. Those same competitors will sell you a similar adaptor for $60 or more on their websites.
I also am pleasantly surprised that the operating system went out to my local network and found my print server with zero effort on my part. As soon as I went to printer settings, it already was listed and ready to go.
The biggest problem I have is with the webcam. The webcam is oddly positioned beneath the display (instead of at the top, as is typical). This means that in order to capture your face, you need to adjust the tilt of your screen, which leads to an awkward display of your face. And if you're on a video-conference call, everyone else will have a nice view of your fingers typing away at the keyboard. I hope future iterations of the XPS line will address this design issue.
External device support and peripherals overall rating: 3/5.
The software integration between Dell and Ubuntu seems to stand out a lot—and I mean this in the most positive way. System updates include Dell-specific hardware/firmware patches. This is huge.
I did experience a couple quirks or issues throughout this write-up. Let me state the following disclaimer before getting into the details of those quirks:
The problems I'm about to describe have nothing to do with the Dell hardware. They are focused on the Ubuntu operating system running on that hardware. I've been observing this exact same behavior in virtual machines (if applicable) and on other non-Dell physical devices.
Applications would sometimes randomly crash. I've observed this with both the Update Manager and, again, with Nautilus. I'm not sure if it's the version of Nautilus supported on Ubuntu 18.04, but regardless of the environment that I use with this particular distribution and release, the Nautilus file manager application routinely crashes and generates a "report to Canonical" message. The problem continues to occur with the latest Ubuntu package updates.
Another quirk relates to the almost-never-resolved Linux problem: hibernate. To clarify, by default, Ubuntu places your machine in a sleep state when it idles or if you close the lid of your laptop. After some time, the machine transitions from sleep to hibernate mode.
Sleep saves your current state into memory and places your peripherals into a low power mode. In hibernate mode, the saved state will be placed to disk, and the device will be powered down completely. Ubuntu calls this mode "suspend".
After six attempts to wake up the device from hibernation, only five were successful. In that one case, I was not able to bring the machine back up, and I was greeted by a completely black screen with its backlight lit up. After spending four minutes pressing every key and eventually pressing the power button hoping it would do something, I gave up and held down the power button to force a system shutdown and restarted it.
In that same one case, I did do something different. I closed the lid while plugged in. I unplugged the device some time later and attempted to reawaken it. I wonder if I hit some corner-case software bug handling this transition.
Anyway, you can configure or customize the operating system's suspend settings. For instance, you can extend the time it suspends from sleep or just disable it completely for when the device is plugged in and/or on battery power.
Software integration overall rating: 4/5.
Overall, I had a very positive experience with the 7th generation Dell XPS 13. It's a powerful machine and fully capable of handling all sorts of developer workloads. And if used in a professional environment, it's very mobile as well. You can carry it from conference room to conference room and resume your work with little to no disruption. Ubuntu is well integrated with the machine, and it shows. You can't ask for more in a developer's laptop. I definitely consider this device to be well worth the investment.
Petros Koutoupis, LJ Editor at Large, is currently a senior platform architect at IBM for its Cloud Object Storage division (formerly Cleversafe). He is also the creator and maintainer of the RapidDisk Project. Petros has worked in the data storage industry for well over a decade and has helped pioneer the many technologies unleashed in the wild today.