Rationalising Desktop Efficiency

Over the last 30 years I have used all three major desktop operating systems in my daily regime. I have done this to a high level of proficiency in each, so thought I would share my thoughts in terms of general productivity and cost.

The Windows Era

I have used Windows since version 3, with all the iterations across the DOS and NT based platforms. I’m not going to lie, it’s been a challenge, especially in the early days. The first really usable version was Windows XP, moving away from the DOS base and adding a slightly more pleasing interface on top of the Windows 2000 core. There were still some driver issues, depending on your hardware, but overall the stability and performance was much improved.

Having said that, the general resource management was still woeful, and that still continues to this day. As a very heavy user, I simply could not go through a single day without having to reboot the system as it got bogged down with remnants of my activities. I could not run an installation for more that about a year before having to re-install from scratch, which was about a two day exercise to bring it up to working standard.

More recent versions are slightly improved, but now have the unforgivable traits of forced update (including reboot) and constant nagging about using a cloud based identity. As a person who frequently runs batch files and processes that can literally take days to complete, and takes my privacy very seriously, this has simply become a platform that I cannot use.

The Power of Linux

I’ve been using Linux in one form or another since 2007. I’ve used several distributions in search of the ideal platform, looking for stability, efficiency and extensibility. All the varieties seem to excel in one or more category, but none of them really tick all the boxes. While they are all exceptionally good at underlying functions, like running web servers, databases, development tools and automation, they vary in terms of interface, human interaction and productivity.

My go-to for simplicity and compatibility is LinuxMint, for stability it’s CentOS and for usability it is currently Manjaro (but that may change soon). While I have found that using Linux on a daily basis is very effective, I have now moved on because of challenges around upgrade paths, migration paths and environment retention. These elements of daily use tend to be rather expensive in terms of the time required to manage the platform.

I still use Linux almost daily, but focus more on what it is really good at, which is not a daily desktop.

MacOS to the Rescue

The introduction of OSX in 2001 was a game changer in so many ways. Before then, finding an Apple computer in the corporate world was almost unheard of, outside of graphic design studios and recording studios. Two things changed this: dual boot and Parallels. Both of these allowed corporate elites to sport a shiny Apple computer while still being able to run Windows or Windows applications in a corporate environment. As nice as that seems, it defeats the whole object of the exercise, which was to provide a better user experience in the desktop space. It’s a bit like putting a lawnmower engine in a Rolls Royce; looks nice, but doesn’t really operate the way that it should.

Apple hardware is strictly controlled, and is generally of exceptional quality. This allowed the operating system to be rock-solid, as they could focus all their attention on interfacing with a defined set of devices that they architected themselves. As a result, the system is very reliable and Apple have spent a considerable amount of effort focusing on usability and interoperability.

OSX is actually built on a UNIX derivative that closely resembles the modern Linux core. This really extends the usefulness of the platform to allow many of the functions typically only possible on a Linux workstation. It has also made porting some applications from Linux possible, so the application availability has been far greater than before. Graphics applications like GIMP, Blender and Inkscape are all available, as well as open source productivity suites like LibreOffice, not that you need it.

The core applications that are shipped with OSX are perfectly usable for a daily workstation, and in many cases, far better that alternatives from other vendors. Microsoft Office is available for OSX, but in true Microsoft style, is incredibly resource hungry, so I almost never use it. The best feature by far is the ability to resume your work in the event of a failure, whether it be a power failure or a system/app failure. Not all applications support this, but I have had several occasions where I have lost power, only to be returned to exactly where I was before once power is restored, including unsaved documents. This alone has saved me many hours of lost productivity.

For all the non-standard things I do, I have the terminal. As one might guess, I’m an obsessive scripter, and OSX does not disappoint. Many of the mainstream Linux executables are available on OSX via Homebrew or MacPorts. This allow me to do just about anything that I can do on Linux. Base applications like MySQL, PHP, Apache all work in exactly the same way. Add some AppleScript for other automation and you have a winner.

Then there is the interoperability. Apple allows you to hook up your other Apple devices through various mechanisms to allow things like cross-device copy and paste. If you have an iPhone, you can make and take calls on your computer. When allowed, iCloud sync allows photos and voice recordings to be instantly accessible on all your devices. Add to that the ability to back up your devices wirelessly and you’re smiling, not to mention the easiest system backup function I’ve ever seen.

In terms of stability, OSX has on occasion failed. In nine years of using it on a daily basis, I’ve seen it crash twice, presumably because I was doing something I probably shouldn’t. If I was a normal user, I would be surprised if it would ever happen. I also never reboot my computer unless it need a kernel update. This means that reboots only happen once or twice a year, or when there is a power failure. This is a far cry from the daily reboots of my Windows days.

It’s Conclusive

In terms of productivity and cost, OSX wins hands down. This is for several reasons:

  • Technical support is minimal (especially compared to Windows)
  • Excellent system stability
  • Unrivaled compatibility
  • Great interoperability
  • Effective user interface (once you get used to it)

Despite the additional cost of the hardware (which is not always more), cost savings are easily recovered in terms of better productivity, reduced support costs and system longevity (my daily workhorse is a 2009 iMac which still does everything I need, although I’m sure I’ll get around to upgrading at some point).

There are still some things that I cannot do on OSX, specifically related to storage devices and partitioning, plus a few applications that are not available on OSX (although Parallels is an option), but these are not things I need very often. I do still run both Windows and Linux workstations for when I need them, but find myself yearning for my Mac. On the whole, I spend a lot less time fighting with my computer than I did before, I swear less and my general stress levels are reduced. These are the real reasons I will stick with Apple, despite my many misgivings about their activities and privacy concerns. These devices simply make life a little bit better, one small step at a time, and I’m all for that.

Enter Linux

A few years back I decided to take the plunge and strip my computer of the Windows OS to replace it with Linux. I did this in an effort to force myself to discover whether it really could be a complete replacement for Windows. It took a while to familiarise myself with some of the quirks, but I have never looked back. Not only can I do anything that I need to do with the vast selection of free software, I can also do many things that I simply cannot do on Windows. I won’t go into the finer details here, but I have to say that whenever I am faced with having to use a Windows machine I end up being very, very frustrated.

Linux is not new to me, I’ve been actively trialing it since the 90’s. My first encounter was when I actually bought a copy of Red Hat Linux 5 (for a whole £30 if I remember correctly). This was a bit of a challenge. There was no such thing as auto-configuring hardware, drivers were not plentiful and you needed to know how your computer was configured. Ah, the good old days: 386, 486, Pentium was the latest and greatest of the day, IRQs being set with jumpers on the board, how I miss it (not). Obtaining and compiling drivers was a bit hit and miss. You were pretty lucky to get the graphics card to work, let alone a network card. I did manage to get it running though, but in the end, it was all just too hard for general use.

Thankfully, things have moved on, and we now have very capable distributions of Linux, most of them pretty easy to install and use (thanks in part to amazing advances in hardware technology). While I kept my finger on the pulse all the way through, testing each new distribution, I felt that Linux had finally gotten to the point where it was ready for general consumption, and I was right.

If I remember correctly, Mandriva was the first to be taken on. I actually liked it, a lot. It was very polished with a pleasing interface and it included everything the average person may need. The problem was that on the hardware I had at the time, it just wasn’t stable enough. I decided to move to the ‘obvious’ choice, Ubuntu. The early Ubuntu was a pretty solid distribution, and very stable for the most part. Hardware support was good, performance was also very good. I did try Kubuntu for a bit, but KDE was too much of a beast for my laptop, so I had to drop it.

I stuck with Ubuntu for a couple of years, and actually made it into a very effective workstation for what I needed it to do. Much of my work at the time was developing web sites and doing database work, while also doing graphics for the web and other media. When they released the new ‘Unity’ interface, it fell out of favour with me because I just didn’t find it to be effective enough for the way I worked. I’m pretty old school, I know, but that’s just the way it is.

This was when I switched to Linux Mint. Mint offered the stability and compatibility of Ubuntu, but with a slightly different approach. It was very customisable, allowed me to do fun things like install Compiz Fusion and Cairo Dock (both of which could misbehave on occasion, but it was worth the frustration). I had lots of fun with these. I’ll never forget sitting at my desk, flipping workspaces with the cube effect. On more than one occasion, I was asked if it was the new version of Windows which was soon to be released. I couldn’t contain my laughter, and still have a good chuckle whenever I think about it. Shame, they’re probably still stuck with just one workspace.

In the end, I did prove to myself that Linux was a suitable alternative to Windows. Even with the fact that my day job was entrenched in the provision of Windows infrastructure architecture and solutions, I kept my promise of using it exclusively, and even found that I was using it in the Windows environment for more and more tasks, simply because it was more effective and/or less time consuming. I suspect this will continue, mostly because the Linux community focuses on continuous improvements, and Microsoft tends to focus on new features.

Site Migration

OK, I finally got around to migrating this site to WordPress. I decided to do this as I want to focus more on periodic ‘blog’ type entries to cover the different things I find myself doing these days. I hope this works out and allows for a more ‘content rich’ site. Also, I think it was time to let go of the old Mambo installation. Thanks to the folks who put Mambo together, it’s worked pretty well over the years. I still use the newer ‘Joomla’ CMS for some of the sites I do, and it just keeps getting better.

My host provider also seems to manage the WordPress installations much better. They also do a managed WordPress hosting solution, which I believe is pretty good. You should check it out here if you’re in need of no-fuss WordPress hosting.