Perilously pretty pixels

I fear I’m sliding down a slippery slope. First, I thought I’d play around with a cheap Linux server with no display. Then, I decided I liked the speed and responsiveness of a Linux display, so I tried it out as a laptop/tablet. I was curious to see how it would do with some serious hardware, so I went ahead and brought the system up to modern standards and it really impressed me. Now, I’ve decided to flaunt that power and do something really amazing with the interface. Where will it end??? (Ok, it’ll end when it costs real money. Fine! It’s still a fun hobby.)

Desktop display
KDE Plasma 5 – The desktop interface is the narrow strip on the left edge of the screen

My latest foray into modern alt-computing has been switching from GNOME3, the latest-and-greatest mainstream Linux desktop interface used in Debian/Ubuntu and CentOS/RedHat/Fedora, to what many consider to be a gratuitously “heavyweight” interface: KDE Plasma 5. The “K” Desktop Environment (KDE) with Plasma user interface is more modern, slick, and technically sophisticated than GNOME. It uses more UI effects, has better support for high-definition screens, and is more flexible out-of-the-box (without add-ons or plugins). It’s clearly been designed with big screens and graphics processors in mind. At the same time, it stays out of the way, leaving the screen uncluttered and keeping the focus on your work.

It was only two weeks ago that I decided, on a lark, to try the KDE interface on a virtual machine. Starting from the Fedora KDE Workstation Spin, I booted it up and had it running and customized to my liking in just a few hours (spread over several days, of course).

The look and feel was surprisingly nice, so I decided to see how it performed on real hardware. I installed the KDE packages on a GNOME system (I think it was my Dell laptop), and logged into a Plasma desktop. Again, it was easy to customize to my liking, and it was lightning fast!

The epiphany hit last weekend, when I realize that I could move the “panel” (the menu bar at the bottom of the screen where all of the desktop gadgets show up) to the left side and make it wider, like a dock. All of a sudden, it became a cross between Ubuntu’s Unity and GNOME3, but even better. No menu bar at the top or bottom of the screen: just a narrow band on the left side (where I have lots of space anyway, thanks to wide screens), with a dense instrument panel-like collection of icons, clock, and logout buttons gathered at the bottom of the screen. This kind of panel wouldn’t have worked with the 72 dpi displays of ten years ago, but it works beautifully with today’s high-definition (120+ dpi) displays.

Suddenly, GNOME3 looks old-fashioned and clumsy to me. Two weeks after my first VM install, I’ve switched all of my Linux devices (including the one our boys use for gaming) to KDE Plasma. Just like that.

Who needs to wait around for Microsoft or Apple (or Google) to release their annual OS upgrade? Linux users can choose exactly when and how to try out the latest innovations, thanks to the open source development community.

The cloud in our house

There are a lot of good things about the modern world of cloud services. It’s great to be able to move from old devices to new ones without having to transfer data, having everything on the new device automatically sync up from a cloud service. It certainly makes it more attractive to upgrade, which is surely why the service providers (most of whom have consumer hardware businesses) provide the service.

It’s also nice to see a consistent set of files, media, and configuration settings from nearly any device without having to keep things synchronized by hand. I’ve already spent far too much of my life copying files and settings, so I can truly appreciate having it “taken care of.”

But it’s not perfect yet. The public Internet still isn’t as fast as it ought to be (due to bad policy in the U.S.), nor as reliable and always-available as it could be. There are times it takes too long to transfer data in or out of the house, and there are even times the connection is unavailable temporarily, or when the cellular signal away from home is too weak or too expensive to use for something big. And, perhaps most importantly, there are still a lot of privacy and data access issues to be worked out in the public cloud. Call me old fashioned, but I still feel the old “possession is nine-tenths of the law” rule in my bones.

For all of these reasons, running services at home still seems to make sense. Having been a system administrator for a highly distributed environment in my early career, I’m no stranger to running services for myself. Here’s a brief summary of what I’ve set up in our home.

Our main server is a tiny box that we keep in the kitchen on a shelf right next to our internet modem and our wireless router. It’s an Intel NUC with a Core i5 processor, 8GB RAM, 120GB internal SSD, and a 1GB/s wired ethernet connection to our router, running Fedora Linux, server edition. It has an external USB 3TB hard drive for backups and an external 900GB SSD for music and videos. I administer it via ssh and keep it headless. The services on it are as follows.

  • An Apple AFP server for Time Machine backups on our Mac laptops and desktops.
  • An OwnCloud server for cloud file service.
  • A Plex Media Server, which serves my music library and our family video library for the household devices (iPads, Mac & Linux laptops, Mac & Linux desktops).
  • A web server and database server for this blog!

All of the above are free. The NUC server itself was quite inexpensive, since I bought it without a monitor or an operating system and installed the RAM, hard drives, and (free) Fedora OS myself.

I also have a Linux desktop in my home office that I use mostly for work, and it runs the Globus Connect Server, which lets me move data in and out of the house via a nice web application called Globus that my work team offers to the research community.

We also have several commercial servers in the house that add nifty features.

  • Our Ooma Telo device provides VOIP phone service.
  • A data collection box attached to our solar power array provides realtime power generation and system status data. (We use a public cloud service to collect the data regularly and generate historical displays.)
  • Our Internet router provides a VPN service and port forwarding services that allow us to access the home services from anywhere on the Internet.
  • An elderly Mac Mini in my office provides iTunes Home Sharing for iTunes Store DRM-locked videos.
  • For a while, I used a Raspberry Pi hardwired to our garage door opener to provide a web interface for opening/closing and checking the door status. (Open or closed: inquiring minds want to know?) Not being an electrical engineer, I soon found that the wiring wasn’t up-to-snuff, and have since disconnected it until I get my voltages and protocols straightened out.