I'm changing everything
No one likes changing their routine, but this time I'm switching up everything in my home office, like never before.
Office layout
Back in September I wrote about my home office. And I believe that writing it down made me realize that the whole office layout we had was meant to be temporary because the original layout was impossible to achieve at the time we moved in.
This was totally on me, because after measuring and designing the office, I managed to order the wrong size desk tops, which made it impossible for them to site side by side—as it was initially intended.
Instead, they had to be placed one in front of the other. Both placed in the middle of the office. I was facing my wife. And my wife was facing me.
Well, almost. Let’s not ignore that we both had quite generous displays to look at right in front of our faces. Which made it absolutely impossible to actually see each other. But truthfully told, with a 2 year old daughter at home all the time, we rarely have the time to sit at the office at the same time.
So this time, I went with the original plan.
Two desks, side by side, facing a wall, with the window on our side and a small couch behind us.
Except this time the couch, and the whole “chilling zone”, actually serves two purposes: one, being a zone we can comfortably seat back to read or think, and two, being a kid friendly zone. Not sure how lunatics we’re being, but we’re hoping our daughter will be able to find some comfort being closer to us while we work right next to her.
Wish me luck.
Desk
Our old desks were a couple of white soul-less slabs from IKEA, likely mode of cardboard or something similar. Served the purpose at the time and honestly held up quite well for around 4 years.
This time, I got a 3.6 meter wide solid wood top—which is actually made for kitchens—trimmed it down to 3.1 meter, so that we could actually bring it through the door into the office later on, sanded it and applied a water repellent finish. It’s absolutely beautiful!
It’s not mirror finish, and I didn’t want it to be. I like the matte finish on wood. I feel like it shows more of the actual wood identity. And being reflective would only introduce more distractions in an environment that needs to have as few as possible.
I posted my setup on Reddit. So, if you’re curious, you can take a look at it.
This was no easy task. Sanding is never a pleasant task, especially when you have to do it over multiple days and you’re still pressured by weather because you’re doing it outside.
But after all that sanding and finishing, we still had to carry a 60 kg solid wood table top up the stairs and into the office. That was honestly the step I was most afraid of. Even though I had measured quite a few times and have gone through the path we’d go to carry it up into the office, I was afraid it would be too big or too heavy.
But it wasn’t!
Measure twice, cut once.
Turns out the old saying is still valid!
Monitor
The previous monitor I had—which I had been using since 2017, I believe—was the LG 34UC88W. Or, in other words, a 34 inch super wide slightly curved display. With a resolution of 3440x1440 it means it has around 110 PPI. That’s quite low. And it was especially noticeable when comparing it to the builtin display of the MacBook Pro I was using, which has a value of 250 PPI.
I still like the 34 inch form factor. And I still see the value in a slightly curved display. But the issue is, nowadays, curved displays are too curved for my taste. They’re more targeted towards gamers, who take advantage of the display curve as a means to immerse themselves in the game. All fair, but that’s not what I’m looking for. Plus, it would take too much space on my desk.
And the issue with the 34 inch form factor is just the fact that there aren’t 34 inch displays with a resolution above 5K—which would be needed to meet a comfortable PPI value—at a reasonable price point.
So I settled for the BenQ PD2730S which is a 27 inch display with a resolution of 5120x2880 which means a PPI of 218—much better than the 110 PPI of the LG. It’s also a reflection-free display, which is very much appreciated now that I’m much closer to the window than before.
If you want to learn more about monitors and why certain monitors might not be ideal, even though they are big, you can check bjango’s article.
Computer
As I mentioned above, my previous computer was a MacBook Pro. A 14" M1 Pro from 2021. For my taste a 13 to 14 inch laptop is the idea size. Actually, this 14 inch one is very similar in size to my first MacBook Air which had an 11 inch display, but huge bezels around it.
The one I’m currently using? A Framework Desktop.
So not only I changed from a laptop to a desktop, I also inevitably changed to another operating system, as this is no Mac—more on that later.
This Framework Desktop is powered by an AMD RYZEN AI MAX+ 395, with 32 cores at 5.19 GHz, and an AMD Radeon 8060S integrated GPU. As well as 64 GB of RAM.
Numbers aside, this is one hell of a beast. Way more powerful than I need. I mean, way more powerful. I don’t game, I don’t edit video and I don’t do 3D either. I do edit photos but I don’t plan on editing them on this machine as I already have a nice workflow defined, with an iPad.
All in all, this was whopping 1.800€ investment, and I don’t plan to replace it anytime soon. That’s actually one of the benefits of a Framework computer—although, not so much in case of a desktop, but more of a laptop—they’re user repairable!
Operating system
Now, since I’m not using macOS anymore, I can almost hear you asking: what the hell are you using then?
Linux! More specifically, Omarchy.
If you never heard about it and don’t want to watch a 20 minute long video, let me summarize it for you.
Omarchy is a highly opinionated, Arch-based, Linux distribution that uses a tiling window manager called Hyprland and relies heavily on keyboard shortcuts.
It was developed by DHH, the creator of Ruby on Rails and one of the co-founders of 37signals—creators of Basecamp.
I’m not going to try to sell you on Omarchy, or Linux, for that matter. Instead, I’m just going to touch on how the past few weeks have been for me, as a new Linux user.
I bought my first Mac on 2007 and I have been using macOS ever since. Almost 20 years of habits and keyboard shortcuts aren’t going away in just a few weeks. So let me tell you this as clearly as I can: this is no walk in the park!
Unlearning is likely one of the most challenging tasks my brain has ever gone through.
You know, things as common as copying and pasting are now behind different shortcuts—not anymore, after the latest Omarchy update, but you get the point. And DHH did a good job binding keyboard shortcuts that are similar to macOS, like super + space toggles the app launcher as it would toggle Spotlight on macOS—the super key is the same as cmd for macOS. And super + w closes the current window.
But on Omarchy, there’s no dock to see the open apps. And there’s no System Settings to tweak the system either. But instead you get a ready to work operating system in less than 5 minutes. Yes! It does take less than 5 minutes to install a whole operating system. Mine actually took half than that.
Besides, if you don’t like something, you can always change it. Most configs are just text files easily accessible to you.
For instance, I tweaked my lock screen to include the time, the current date, the signed-in user as well as some quick actions like play/pause the music playing on Spotify, suspend, restart and shutdown. None of which were there in the default lock screen settings. And none of which were absolutely needed for a lock screen, let’s be honest.
You can see how mine looks like and how I built it, in this Reddit post.
So far, my biggest gripe with Omarchy, or Linux in general, is the lack of good looking native apps. It’s just absolutely mind boggling to me how so many people who use Linux daily get by using interfaces so bad that it actually motivates me to learn how to develop for Linux. And I have no intent what so ever to start developing for Linux.
Just do a quick exercise and search for an email client for Linux yourself. Find one that looks good, however subjective that may be.
The most acceptable one I found was Geary. But Geary is made for GNOME desktop environments. Omarchy uses Hyprland, which is based on Wayland.
I got it to install and load, but I couldn’t use it because it needed configs that come from a package called gnome-control-center and that just doesn’t run in Omarchy. So I could open Geary but it asked for account details but couldn’t do anything with the details I provided.
I ended up settling for Betterbird, which is a new take on the famous Thunderbird. Truthfully told, I managed to tweak the layout into something that’s more acceptable to me. But it’s just not clean looking. There’s no such thing on Linux, I find.
Another one—and I promise I’m going to shut up about Omarchy already—was a Calendar app. Omarchy comes with none. You really have to look for one.
Betterbird has a Calendar pane too. So I could just include my calendar details in there and use Betterbird as a one-stop-shop. That’s actually what I did for some time. But I didn’t like it. I like my apps to cover a single responsibility.
So I went looking for a Calendar app and found good looking one called GNOME Calendar. See the pattern? Recent GNOME apps are somewhat good looking.
But I also couldn’t use this one as it needed account details to come from elsewhere.
I found out that by installing and configuring Evolution—yet another one-stop-shop for email, calendar, tasks and god knows what else—the GNOME Calendar app would then be able to drink from these configs. And it actually worked!
But the “final boss” in this Calendar journey was LC_TIME. The env variable that defines how Linux should display time strings. The whole system is attached to a en_US locale by default—or that was just the one I picked when installing Omarchy.
And for some weird reason, in the US, the first day of the week is Sunday. For all my life I always thought Sunday was part of the weekend. Week. End. The end of the week. Not the beginning. But I digress…
GNOME Calendar was displaying Sunday as the first day of the week, and there was no way I would be using it like that. And as far as I can tell there is also no way to change it in the app. Instead, the app uses the system locale for it. I had to try a few times, but eventually setting LC_TIME to en_GB fixed it, and that’s currently my calendar app.
An ending note on Linux
This is actually my third time trying Linux. And I don’t think I had ever spent this much time with it. I wrote about this Linux journey before, back when I thought Squarespace was the ideal blogging platform. Silly me. That post is offline now, but I remember it was sometime around 2019 and 2020.
I tried Fedora first. And had issues with WiFi, sound and drives formatted in APFS or HFS+. At the time I was running a Hackintosh and I would like to be able to dual boot Linux and macOS and use some extra drives on both systems. Couldn’t make it.
Then a year later I tried Elementary OS. The much more visually refined interface got my attention and the experience was indeed better than the first time. But it also didn’t stick as the experience wasn’t that great for a noob like me. You see, I secretly hoped that Elementary OS—which is visually closer to macOS than anything else—would be closer to macOS in terms of user experience. But it just wasn’t. There were still some visual inconsistencies. And I still needed to rely on the terminal more than I would like.
This time, 5 years later, I really think I’m here to stay. For multiple reasons. For one, macOS is just harder and harder to look at for me. The whole liquid glass thing is nice to look at as an exercise and as a technology achievement, but as an interface, it’s far too distracting. Remember that this is the interface I’m going to be looking at for the whole day while I’m actually trying to accomplish my own tasks, instead of admiring how light bends around glass, as beautiful as that may be.
Besides, as it’s common for Apple, you can’t change anything! Don’t like how it looks? Hum… Too bad?
On the other hand, Linux, and specifically Omarchy, is very flexible. If you don’t like something, you can change it. Hyprland has a well written documentation and plenty of plugins to enhance your experience.
It’s easy to adapt to your preferences. And harder to justify going away because of them.
As the ongoing meme puts it: 2025 is going to be the year of Linux! That’s true at least for me, let me tell you.
Text editor
As if all these changes weren’t enough for just about anyone to adapt to, I also decided—because why the hell not now—to dive into VIM.
At this point I had used plenty of text editors in my career. Off the top of my head I can remember TextMate, Coda, Sublime Text, Atom and most recently VS Code.
I feel like I got plenty fast over time. Like using Ctrl key to jump between words, and Cmd key to jump to the end or beginning of the line, along with Shift for selecting what I needed. But still, VIM has so many key bindings for just about anything, and is so well supported that once you learn it, you unlock the ultra fast mode. That’s my expectation at least.
But truthfully told, speed is only half the story. You see, when you want to move your text cursor around you usually rely on the cursor keys (left, up, down, right). To use the arrow keys you have to lift your hand off the keyboard and reach for them. Or even worse, you reach for the mouse. Over time, it can take a toll on your wrist. So the other half of my motivation from moving to VIM is ergonomics.
I plan to be faster and rely less on cursor keys and the mouse.
So far, I’m impressed by how easily some of the most common keybindings have already stuck to my head. Like yy to copy the whole line, or p to paste from the clipboard, or dd to delete the whole line, o to add a new line below and change to insert mode, $ to jump to the end of the line, _ to jump to the first char in the line or 0 to the very first char in that line, just to name a few off the top of my head. Remember that I’ve been using Omarchy for less than 15 days by now. And I’m not always in VIM.
Lastly, things like d2w or d$ or even dt( may look random at first but make total sense once you learn them. That’s what makes them stick so easily!
d2wdeletes 2 wordsd$deletes everything until the end of the linedt(deletes everything up to the next(
Right? Imagine doing these all day to move around and edit your text files!
Keyboard layout
This one has a bit of a history to it. You see, I’m Portuguese! So when I started typing on a keyboard, I used the ISO PT keyboard layout. Every time I needed a laptop or a keyboard I searched for ISO PT. But once you start looking for a bit of a specific type of keyboard, you suddenly realize how small of a market Portugal really is.
When I started looking at mechanical keyboards I noticed that I would have a significantly larger choice pool if I went for a more common layout like the ANSI US.
But the thing most people don’t realize is that there are 2 layouts! The physical one, and the digital one.
What I mean is that your operating system uses whatever keyboard layout you tell it to use. And most people just sync the physical one to the digital one, because that’s what makes most sense. That way, when you need to search for a {, you just look down and search for it.
But for a very long time, I had been using an ANSI US keyboard—the NuPhy Halo 65 I mentioned in my home office post—along with the pt_PT digital layout.
This way I could rely on my muscle memory to hit the right keys, and also make many more keyboards available by using one of the most common layouts.
The issue with this approach, as you may have guessed, is that if you don’t know where your keys are, looking down isn’t going to help as your key caps have labels for a different layout than the one you OS is using.
So this year I’m syncing my key caps to my OS, effectively switching to an all-new layout for me: en_US.
The worst part is that I still write Portuguese from time to time. So I need chars like ~ or ^. But especially, I need to be able to compose—key word—chars like ã, é or ç. Besides, when I write in English I also need chars like the dashes and ellipsis.
How the hell do I do these… In Linux!
Turns out it’s actually really simple. Linux has this concept of a Compose key. In Omarchy it’s set to Caps Lock. Nice thinking because I never used Caps Lock anyway. So to do and em dash (—) what I need to do is press Compose (Caps Lock) once, and then 3x the - key. And to do the ellipsis I press Compose + 2x ..
But the more interesting one are the latin chars. Pressing Compose followed by , and then c will output ç. Pressing Compose followed by ~ and then a returns ã. Lastly, the Euro sign (€), which is also understandably absent from an American keyboard layout is obtained by pressing Compose followed by e and then =.
These all make sense! It’s quite easy to remember keybindings when they make sense. The Compose key concept was new to me, as that’s not used in macOS as far as I’m aware of, and I can’t even remember last time I used Windows, let alone if Compose was a thing back then.
Design tool
This one hits hard…
A few years after I started using macOS I came across Sketch. At the time, just like most designers, I was using Adobe to design my interfaces. Both Illustrator and Photoshop. But I wasn’t completely happy with them.
Illustrator was clearly never meant for designing digital interfaces.
And using Photoshop to design interfaces always felt like driving an F1 car to go get groceries.
Not in the sense that it was too fast for the task, but rather in the sense that it had too many configs, too many buttons and too many tools for someone who just wanted to… drive forward.
Ever since I started using Sketch, I never went back. But if there’s one thing this whole post should teach you—and me, quite frankly—is the fact that you should never pick a tool that exists only in a single environment.
Sketch is a macOS tool.
There isn’t, and I highly doubt there will ever be, Sketch for any other OS. And this isn’t any inside knowledge from me having worked at Sketch. It’s just my gut feeling.
I would have picked any Sketch alternative for Linux, if there was one. A real alternative.
Akira looked very promising, but as far as I can tell it hasn’t seen any attention for the past couple of years. So I wonder if it’s actively being developed by now.
But again, that would be Linux-specific. And although I’m not planning to move away from Linux any time soon, I was also not planning to move away from macOS when I first started using Sketch. Heck, even 6 months ago!
So I got my options down to Figma and Penpot. These are both web-based so I wouldn’t need to port my file if I ever decide I need to change my OS again in the future.
And I hate to be this guy, but since the whole industry seems to be moving to Figma, I think that’s the wrong place to be.
Plus, Penpot is open-source and has a self-host option, which I’m not going to take advantage of right now but we never know when I may. So I’m betting on Penpot!
Notes app
A few years ago, when I went back to the Apple ecosystem, I dove head-first right into it. Convinced that I would never go back to Android, I replaced every single app I was using with the official Apple alternative.
Today I can see how dumb that was.
Not being able to conceive a reality in which I would be using something other than a Mac on a daily basis was very shortsighted of me. But hey, at least I’m doing it today and not 30 years down the road.
Either way, I used the Notes app on my iPad to write blog posts. These ones. It was easy for me because I would remember a topic I would like to cover, pick up the phone and create a new note with a title. At a later point, when I would pick up my tablet or computer, I would be able to schedule it and write it.
Sometimes I even wrote part of it on the iPad and finished it on the Mac.
Although this workflow wasn’t perfect, because only recently had Apple introduced Markdown support for Apple Notes, and I use Markdown for my blog, it provided the flexibility I needed.
But guess what, Linux has no Apple Notes. I mean, I could of course go to icloud.com and use it there. Just like Calendar and Mail. But that’s not what I want.
I’m changing everything after all. So I’m taking this opportunity to also switch to Obsidian. I was always very curious about Obsidian, especially due to the “mind mapping” feature in which one can connect notes to each other. Just like we do with in our brain.
But I had never considered the fact that Obsidian could be a better note taking app. Actually, a writing app.
Obsidian supports Markdown out of the box. So as I’m writing this blog post, it’s already written in the exact same format I’ll need for the actual blog code base. Which makes it super easy to just copy the text from Obsidian and paste it on my blog.
Another great feature of Obsidian is that it works with vaults. A vault is like a repo. It’s a single place where you store all your notes. You can have multiple ones. For instance, I have one just for the blog posts, where I’m currently writing this post. And another one where I store knowledge bits like how to format a drive in Linux, for instance.
To keep the ability to write these posts on multiple devices I’m using github-gitless-sync—a community plugin for Obsidian that syncs your notes with a GitHub repo. So not only am I able to keep all my devices in sync, I also have a versioned “backup” in GitHub.
If you don’t want to bother setting this up, Obsidian provides the sync feature behind a 4$ subscription. But you know, yet another subscription. And this one happens to be easy to escape from.
Browser
Just like the Notes app, when I migrated to iOS, I adopted Safari as my main browser. And—you guessed it—there’s no Safari in Linux either.
I wondered about Firefox and Brave.
I had used Brave in the past. And this time I actually wanted to go with Firefox, just because it’s a completely Google-less browser. But the reality is that most people nowadays use a Chrome-based browser.
That’s relevant for me as a user, but also as a developer. As a user, this means that my experience on most websites will be better, assuming that most developers take analytics into account. And as a developer, this means that I will be using the same engine most people have behind their browsers, and developing for it first.
Of course we’ll always have to deal with all the other browsers, but at least the majority of users is covered. That’s an arguably better approach than focusing first on the browser that only 5% of the users is using.
What’s next
Well, I hope this whole journey serves as a lesson, at least for me, that one can never say “never”.
I remember that a few years ago, I switched from the OnePlus 9 Pro to the iPhone I’m currently using, mainly because of software. OnePlus had pushed a software update that messed with plenty of things in the OS that I liked. Making it worse in reliability and less pleasurable to use for me. The perfect combo for me to switch.
I ended that blog post with this:
Let’s hope I won’t be bashing on Apple in about 1 year’s time.
It took me a bit more than 1 year—3 years, actually. But it’s still amazing to me how companies can just ruin the user experience with a single OS update.
Liquid Glass is not responsible for all these changes in my life. But boy, did it help push me into it!
For better or worse, I’m not an avid phone user. My average wonders between 3 to 4 hours per day for the past week. And although I would love to get rid of Liquid Glass, what’s the alternative?
Until Linux phones are stable and reliable for every day use, I don’t think I will be switching from iOS.