Estimated Reading Time: 7 minutes
Here is a slightly more personal post, not directly related to the cloud, but rather to the use of computers.
It’s been 3 years since I totally switched to Linux for my work machine. Since all this time, I still have colleagues or clients who wonder about “how is it possible”.
So, here is my feedback! I am not going to go into the eternal “abc vs xyz” war nor try to convince you – I’m just going to be factual about using Linux for my context.
The User : Role & Needs
I am not a developer but an Architect (being Consultant before). Even as an Architect, I still like to get my hands dirty, deep dive in products, automation and scripting.
My usage is composed of:
- Office tooling: presentations (reading and writing), word processor, wire drawings/design
- Web-based interfaces, either for products to internet/intranet for research.
- Java-based interfaces, for some software packages
- Some specific software clients (postgresql client, keypass, remote presenter, …)
- Console for several CLI (git, go, ssh, kubectl… )
- Remote access through RDP- Communication with others : emails, Zoom, Slack, MS Teams, Whatsapp, Signal, …
- Scan and print
- Virtual Machines, created with VMware Workstation/Player/Fusion
- Work securely : VPN connectivity, encryption, authentication, antivirus…
My daily use of each of these tools is quite varied, but I use each one at least once a week.
Over the years I’ve done different jobs in IT, I’m curious and keen to explore. I’m also very interested in communities, sharing with others, opensource, DIY.
I like to challenge choices and needs, including my own. Professional distortion or parental reality, anyway, I often wonder “why”
Choose the Operating System?
First of all, why changing or choosing the operating system (OS)?
We (all computer users) are used to not choose our system but choose between “a PC or a Mac”, meaning Windows or MacOS. It also works with smartphones, you have either iOS or Android (with additional vendor’s software layer). This ties the user to the hardware, but also to the ecosystem (products that are easier to connect and interact with a system).
To me, being able to choose the operating system is as important as the choice of hardware. One should not block the other. So, we choose the OS to be the most suited to our needs, but also our habits or our expectations.
And this is one of the human psychological realities: we go towards what we are comfortable with. If your childhood was lulled by people having more of one material or the other, you will naturally go towards this. On my side, I’m a “Xenial”, born in an analogic world, used to “tweak” my first machines, 386 & 486 – meaning I’m well versed in DOS (old times!) and Windows. I have tried Apple’s machines too, even OS/2 Warp.
3 years ago comes the choice: I order a new machine. PC or Mac? …why not another OS? The main families for a laptop are Windows, MacOS, Linux, ChromeOS. Add iOS plus Android for tablets. From my needs listed previously, any OS can do that, with different approaches and challenges however.
Path to Linux
I decided to go with Linux, more precisely an Ubuntu (Debian) flavor. Why choosing Linux? I have no big complaints against Windows or MacOS, they are stable and long-term systems.
But I had several issues with the ecosystem and all the additional software, integrations, components installed on those systems in the past, for example I lost an install because of BitLocker unlock keys were not working, or huge behavioral differences between applications supposed to be very close (Office for Mac and Windows)
Linux is no longer this system for your super geek friend, so difficult to install and configure. It’s really fast to install, works out of the box with all the hardware (wifi, touchscreen, flip screen, IR webcam, etc.), and… just works, like others!
Let’s go back to my needs and how it fills the requirements:
- Work securely: wide choice of VPN, including the OpenVPN for PaloAlto and IPSec for customer’s. Disk encryption with dmcrypt, password-protected at boot. User’s profiles with privilege escalation, password-protected account and unlock session with “howdy” using face detection with camera.
- Virtual Machines: VMware Workstation is available.
- Scan and print: cups for printer management, drivers exists. My Epson scanner is compatible with common software.
- Communication with others: Zoom, Slack, MS Teams, Whatsapp, Signal… either native apps or electron-based clients such as Hamsket or Ferdi, it even manages multiple MS Teams accounts in parallel.
- Email: O365 is basically an online offer. Outlook online just works, through my browser (Vivaldi).
- Remote access through RDP: Remmina is really good at that.
- Console for several CLI: Wait, are we asking for console on Linux? Indeed it’s included. Guake is a perfect tool for me.
- Some specific software clients: Didn’t find native or alternative softwares.
- Java-based interfaces: open-jdk, a basic of Linux.- Web-based interfaces: use the browser.
- Office tooling: LibreOffice is great there. For designs, online tools (Draw.io, Miro) are very valid.
It’s extremely stable, Ubuntu is an easy distro with a huge community. There are many good reasons to me, but to quote a few, freedom, choice and adaptability are my top3. Followed by ease of update (in seconds/minutes!) and community for any troubleshooting.
These 5 points listed above are really unique to Linux and are worth some sacrifices for me. Yes, you would have some challenges when you’re used to (another) Operating System.
Using LibreOffice is the most obvious one: Difficulties to work with heavy PowerPoint slide decks, or with complex Word document, then you could face some compatibility issues or graphic glitches. Then it’s time to learn, that maybe my pptx/docx complex files are… too complex, that may not be used that way.
Using more simple MS Office/LibreOffice files, there are no issues, everything works well.
Other challenge is about using the right tool for a feature. With Windows / MacOS, I used the existing applications with their functionalities as much as possible. With Linux, it’s a different approach: use whatever works best for you and sometimes do it by yourself. Example, to change the background regularly, why using software that will overload the system when a few lines of bash can achieve the same?
And that’s the Linux mindset: freedom, community, share. You may find a software which makes the job, you could participate and donate.
Discussing with developers and freedom defenders
Having a laptop PC (supposedly with Windows) running with Linux leads to interesting discussions, especially with opinionated people. I’m always surprised when a developer starts by “with your Windows you can’t understand our opensource strategy”. It’s even funnier when the same people uses MacOS (which is more “closed” than Windows to me) and tend to confuse opensource and freeware.
I like to discuss on that with different people, teams- development and opensource are as much welcome in Linux than in Windows or MacOS. It’s not the system by itself which is a constraint, but the associated mindset.
With “closed” and “full packaged” systems, the habit is to buy software for your needs, and to have a set of freemium and “small tools”. Instead, I use several opensource projects, I code the last mile automation that fits my needs.
Once the first biases and questions have been passed, having a Linux laptop to talk to developers is “reassuring” because this implies both that you master your work tool, and you’re invested in the opensource mindset.
After more than 3 years of daily use, I can confirm that using Linux in a professional desktop is fine.
But this must not be motivated by pretext like “because xyz s*cks”, or you’ll go back to square one. If you’re opensource-minded, promotes community/collaboration, and are not afraid to type command lines sometimes, then you’re set to go.
On a more personal note, I installed the previous laptop of my wife with Ubuntu as a test. She’s not close to any computer job, just using the computer for personal needs. When we bought a new one, she asked me to swipe the operating system and install Ubuntu instead, without any hesitation.
Don’t focus on specific software to achieve “xyz” feature set, but think of what you need and get what works best, might be different softwares. If something you’d like to have does not exist, don’t panic and code it. Don’t incur, act.
That was my 2 cents, feel free to comment and share your experience!