elementary 5 "Juno"
A review of the elementary distribution and an interview with its founders.
In the spring of 2014 (nearly five years ago), I was preparing a regular presentation I give most years—where I look at the bad side (and the good side) of the greater Linux world. As I had done in years prior, I was preparing a graph showing the market share of various Linux distributions changing over time.
But, this year, something was different.
In the span of less than two years, a tiny little Linux distro came out of nowhere to become one of the most watched and talked about systems available. In the blink of an eye, it went from nothing to passing several grand-daddies of Linux flavors that had been around for decades.
This was elementary. Needless to say, it caught my attention.
Figure 1. elementary 5 "Juno"
In the years that followed, I've interviewed elementary's founders on a few occasions—for articles, videos or podcasts—and consistently found their vision, dedication and attitudes rather intriguing.
Then in 2016, I was at a Linux conference—SCaLE (the Southern California Linux Expo). One bright, sunshiny morning, I found myself heading from my hotel room down to the conference floor. On my way, I got it in my head that I really could use some French toast. I had a hankering—a serious one. And when Lunduke gets a hankering, no force in the cosmos can stop him (he says, switching to talking about himself in the third person seemingly at random).
Somehow or another, I ended up convincing the elementary crew (four of them, also at SCaLE, with a booth to promote their system) to join me on my French toast quest.
After searching the streets of downtown Pasadena, we found ourselves in a small, but packed, diner—solving French Toast Crisis 2016—and allowing us to chat and get to know each other, in person, a bit better.
These were...kids—in their mid-20s, practically wee babies.
But, I tell you, they impressed me. Their vision for what elementary was—and what it could be—was clear. Their passion was contagious. It was hard to sit with them, in that cramped little diner, and not feel excited and optimistic for what the future held.
And, what's more, they were simply nice people. They oozed goodness and kindness. Their spirit had not yet been crushed by a string of IT managers that make soul-crushing a hobby.
They were the future of desktop Linux (or at least a rather big part of it). This was evident, even back then. And, that wasn't just the French toast talking.
When the latest release came out (elementary 5, code-name "Juno"), I got ahold of the two co-founders of elementary: Daniel Fore and Cassidy Blaede, both of whom work full time on the project as their day jobs. That's right. This is a free and open-source system, started as a passion project, that is now a small company with full-time employees working on it. It's always nice to see that sort of success in the Linux world.
First, some thoughts on elementary 5, then let's talk to the founders.
Review: elementary 5 "Juno"
I've spent some time with every release of elementary to date, and I've had some pretty glowing words for each. Yet, perhaps oddly, I've never stuck with elementary as my primary desktop system.
After a week or two with elementary I would, invariably, find my way back to the warm embrace of the likes of Debian or openSUSE—mostly, I think, due to familiarity. No matter how much I enjoyed my time with elementary, I just wasn't prepared to commit fully.
That time, I believe, has arrived.
One of the biggest challenges in the Linux (and greater Free and Open Source) world is how to make a good living developing software, when you're just giving the code away for free.
Some companies have pulled off this seemingly magical feat, often through paid support contracts or add-on services. Unfortunately, this tends to work really well only when your market is business-oriented, such as the Enterprise offerings of Red Hat, SUSE or Canonical. Consumer-oriented applications (and games) need a different approach.
For that, you need a place to buy the software—a place that regular people (not businesses) feel comfortable using, be it a physical brick-and-mortar store or a virtual "app store".
Through the years, there have been several attempts at building app stores for Linux. The Linspire/Lindows Click N Run store and the Ubuntu Software Center spring to mind. Both offered the ability to buy and sell Linux software, and both failed to achieve much success before being shelved entirely. Only Valve's Steam store has endured, but since Steam focuses on games (and is closed-source), there has been a major void in the market for a solution that caters to non-game software and is something that open-source and free software proponents could feel comfortable using.
The elementary team thinks they have the answer in their AppCenter.
Figure 2. AppCenter
AppCenter is, as the name suggests, a pretty traditional "app store" in most respects. There are applications organized into categories that you can search through, featured applications and update functionality—all pretty run-of-the-mill stuff.
What truly makes AppCenter exciting are two key points:
- Every application is open source, making this a viable solution for those of us who try to avoid closed-source software.
- Applications are "pay what you want".
That "pay what you want" bit is a pretty big deal, and it goes a long way toward making the AppCenter viable and approachable for folks used to all of their software being "free" (as in cost) as well as those who simply cannot afford to pay for software for whatever reason.
Figure 3. AppCenter, Pay What You Want
It also means that any application within AppCenter is, effectively, "try before you buy", as you can elect to pay zero dollars ($0.00) for something, and then, if you like it, come back later and pay the developer any price you feel the software is worth.
These two key items have been missing from every previous application store for desktop Linux. And, I believe, this is an excellent strategy from the elementary team. Given time and adequate user numbers, this could grow to become a viable revenue stream for independent Linux software developers building consumer-oriented, open-source applications and games.
And that's a very good thing.
Applications Named What They Do
Within elementary, a large majority of the built-in software is named after exactly what the software does. Although this approach may lack originality, it makes up for it in ease of discoverability. People new to the platform will be able to find the exact piece of software needed for a task quickly. The file browser? It's called "Files". "Code" is the code editor. "Music" is the music player. "Photos" is the photo organizer.
Figure 4. Photos
The applications themselves are laser-focused on doing what they say they do. There tends to be very little "feature bloat" with these tools; the "Camera" application takes pictures and video—and that's it.
This modularity really speaks to my UNIX-loving sensibilities of "do one thing and do it well".
There are a few applications included that don't strictly adhere to this naming scheme (such as Epiphany, the included web browser), but the exceptions are few.
I'm typically a pretty "traditional" person when it comes to window management on my desktop. I tend not to use features that "dock" application windows to a side of the screen, or the like. But there's one new feature of elementary that I find rather fantastic. It's called "Picture-in-Picture" mode, and it works exactly like you'd expect it.
Press a hot-key, and select any window you like. That Window now becomes a small, floating, live version of itself—one that you can move and resize however you like and that stays above all other applications, on every virtual desktop (until you close it).
The obvious use for this is if you are watching a video. You can keep it
playing in the corner while working on—whatever else it is you need to
Although I've also found it to be fun to use for things like system monitors
htop running in a terminal, put into Picture-in-Picture mode is oddly
satisfying) and chat applications.
Speaking of hot-keys (elementary calls them Shortcuts), elementary 5 adds a few goodies in that department.
To start with, you can tap the super key (such as the "Command" key on a Mac keyboard, or the "Windows" key) to bring up an overlay showing you the system-wide shortcuts. Handy.
Figure 5. Shortcuts Overlay
Extra nice: at the top of that Shortcut Overlay is a little gear icon. Tap it and up pops the settings panel that allows you to change every Shortcut for the entire system (in case you have a bit of muscle memory from a different operating system).
Figure 6. Shortcuts
It may seem like a little thing, but that's a level of customization that really allows people to make a system their own—to make it home.
elementary makes use of the kernel and hardware support offered by Ubuntu—meaning if you have a piece of hardware that works in Ubuntu, it'll work in elementary. And, nowadays, that means pretty much everything.
I had no issues, with any component, in my testing. NVIDIA graphics cards, HDMI capture devices, wireless chipsets—everything worked right out of the box with absolutely no additional packages, tweaking or compiling required.
One of the cool little features of this release is a new (optional) feature called Housekeeping. It does one thing and one thing only: it deletes temporary files (or files in the trash) after a configurable number of days.
That's it, and I love that. On systems running low on storage, this is handy. But more important, it removes things you don't want around—an obvious need for keeping a system secure.
Figure 7. Housekeeping
The Not-Visible Stuff
elementary has a lot of unique pieces and parts—not least of which is the desktop environment itself, Pantheon, developed specifically for the system.
But, because this is the world of Free Software, people on non-elementary distributions want to be able to enjoy the elementary experience. In the past, getting Pantheon up and running on other systems (such as Fedora or stock Debian) was more than a small headache.
That all appears to be changing. From the elementary 5 release notes:
...with the Juno development cycle we've adopted more cross-desktop standards and improved the cross-distro support for several components. This came with a lot of help from Fedora maintainers and developers. The result is more reusable code for other desktops and users of other distros like Fedora, Arch, openSUSE, etc.
Working with other distributions—I like that. This is how it should be in the Open Source world.
elementary's performance is phenomenal. Interacting with the system, even on lower-end hardware, is snappy and responsive. Considering the emphasis on design and visuals, you'd almost expect the system to become a bit more sluggish (such as what people experience with Apple's Mac OS X). But there simply aren't slow-downs here. It's like you're running a lightweight system, but with all the bells and whistles of the heavier, more resource-intensive systems—an impressive feat.
Stability, likewise, has not been a concern. I've been running the release candidate version on both my laptop and my primary desktop for a week. No crashes. No hangs. Flawless.
The attention to detail throughout the system—from the application designs, to the smallest user interface items—is nothing short of impressive. Every little touch adds up to give the entire experience a polished feel.
As I wrapped up my time reviewing this release, I was left with a question I ask myself after reviewing every operating system:
Will I keep using this? Will this system replace what I've been running?
The answer is, unequivocally, yes. elementary is, in my opinion, shaping up to be one of the brightest stars in the desktop Linux sky, and I see no reason to stop using it any time soon.
Chat with elementary's Founders
After using elementary 5, I had a hodge-podge of questions for the founders (Daniel Fore and Cassidy Blaede).
Bryan Lunduke: What's the current best estimate for user base size?
Daniel Fore: Best guess is somewhere in the hundreds of thousands, likely at least 200k. It's hard to know because we don't have any sort of telemetry in the OS, and we don't generate any kind of unique fingerprint for users. The best guesses we can make is how many times packages were downloaded, which might not necessarily be unique downloads and don't reflect users who haven't run updates, etc. So it could be many more or many less.
BL: How many employees are you at for the company itself, elementary, inc.?
Cassidy Blaede: Three full-time, one part-time [Daniel went full time in...] April, 2015.
BL: Have to ask—how old are you two?
CB: Personally, I'm ageless. I was here before you were born and will be here long after you're gone.
I kid, I'm 26.
DF: I'm 29.
BL: Do you remember the moment you decided elementary would be an operating system? That you needed to make it?
DF: Not really. I think there was always kind of a vision of having a complete package easily installable all together. There had been mockups of a desktop and things for quite a while. I remember the first time using Linux though and knowing that this thing was the future, and that this was the technology that was going to enable me to build the desktop I wanted to see. It was like going from drawing in black and white to color.
BL: What was that moment? And what Linux distribution did you use?
DF: It was the Kororaa LiveCD and XGL demo with Compiz. Coming from Windows XP, it was just amazing to see what you could do and that all the pieces were there, and you could build whatever you wanted.
That had to be in like 2006 or 2007.
BL: Does that mean we'll get wobbly windows and 3D virtual desktop cubes in elementary?
DF: Haha probably not. I think a lot of those flashy effects were interesting for a time when the technology was new, but motion design has matured a lot since then, and now when we use animations, we're using them to convey something meaningful or to provide hints or affordances about the way the UI can be interacted with. Now, users expect animations to be fast and not interrupt their workflow.
BL: Cassidy, talk some sense into Daniel. Wobbly windows for life (tm).
CB: Ha, my first Linux experience was actually a Knoppix live CD, but the first long-term version I used was Ubuntu. I too always would go in and enable the fancy compositor and turn on wobbly windows and exploding closing windows and all that jazz. And in the early days of elementary OS, Compiz actually let us really fine-grain control the motion design of windows and workspaces without having to write code or make our own window manager. So that was a huge boon to getting started. But these days, we have accelerated, composited windowing libraries by default, plus we actually develop the window manager itself. So we can decide exactly how to animate things so that it's all self-consistent.
Wobbly windows were a great tech demo, but I think the performance and, uh, "taste" trade-offs might not be quite up our alley.
BL: Okay. Now an open-ended question: where from here?
DF: To the cloud!
CB: Juno is really about nailing a lot of aspects about elementary OS: refining it, making it more productive and making it even better for developers. But like Dan alluded to, we're also laying the groundwork for much better online accounts integration so users can access their data and accounts no matter where they're stored.
(I also don't know if Dan was just joking or not, but there you go.)
DF: There's been a lot of work with upstream projects on things like Online Accounts and Evolution Data Server. We're working on a brand-new version of Mail powered by EDS. There's work on showing cloud storage devices in Files. We're working on a new installation and onboarding experience, so we'll hopefully get those accounts connected right from the beginning. So overall, I think the next big moves for the whole desktop will be making it much more connected to all the online services that our users are interested in.
CB: There's also AppCenter: we've laid a great foundation for our app ecosystem, and now it's time to really dial in that experience for users. We're always working on ways to enhance discovery of existing apps and also engaging with app developers to bring even more quality apps to the platform.
DF: Cassidy blogged recently about digital well being and how some of our next steps down that path involve content controls, so that's another thing we're really interested in is giving our users control over the kind of content that they and the ones they're responsible for see
BL: Can you say, at this point, what the best-selling app in your AppCenter is?
DF: I'm having a tough time with trying to see if I can get stats for this, but I'm fairly confident the top grossing app is the torrent client Torrential by David Hewitt.
BL: What's the moment where you realized elementary had "made it" as an operating system/distro?
CB: So that's a fun question. I think there are still pretty frequent days when impostor syndrome picks up, and there's this nagging voice telling myself that we're nobodies and are never going to "make it". But on the flip side, there are days when I see that there are hundreds of thousands of people out there using something I've helped make, and that's pretty humbling. I don't know if there has really been an individual moment for me; it's more like a pendulum constantly swinging between those two mental states.
I do remember the first time we got an interview in a physical magazine, and I went to the bookstore where my girlfriend worked, and it was right there on the shelf. That was pretty wild and felt like we'd made it in some sense.
DF: Yeah, I agree with Cassidy that a lot of times I feel like we haven't "made it", and there's so much to go before we can possibly try to compete with the major proprietary operating systems. But then you see a tweet about how elementary OS is being used in a school, or you interact with someone new at a conference who has heard of it or used it. I heard from my cousin recently that her new boyfriend used elementary OS, and seeing stuff like that is really encouraging and makes me feel like we've made a difference and an impact.
CB: Oh yeah, running into users outside an expected situation is always super encouraging. A friend of mine is a teacher, and she recently messaged me that one of her students was using elementary OS and showing it to her. He was super impressed when she told him she hadn't just heard of it, but she knew one of the founders!
So I guess "making it" isn't really this binary thing. We don't have to dethrone somebody to have made it, but we're making it more and more every day.