
I have been using Brain.fm for 531 consecutive weeks, as it likes to remind me every time I open it. I have wanted to write this review since the first week, but I first wanted to be sure I arrived at something truly sustainable. I now feel I have enough experience.
Brain.fm has been on my radar for several years, but its previews on YouTube did not interest me too much, and the price turned me away if I ever returned.
However, I frequently struggle with motivation. Sitting down to a daunting task and getting started feels like climbing a mountain if I am under a significant mental load.
Another thing is that I am susceptible to noise. Any talking around me completely throws me off balance and cripples my performance.
One thing that I found really helped was music. It needs a particular type – no vocals, not too lively but also not white noise, slightly rhythmic, and very long. The right music can change the mountain climb into a stroll, sometimes even pleasurable.
Over time, I developed a small collection of music. Here are some of my favourites:
Also, f*ck Ambient Worlds. They saturated the market, but all of their playlists have five songs on repeat.
However, this well of media eventually ran dry, and after several months, I heard everything I had to hear and did not find much more. That’s when I stumbled on Brain.fm and decided to give it a go.
At first, I was over the moon. The music seemed endless, had configurable intensity, different playlists for different tasks, and was play-and-forget – just… perfect.
But after a few weeks, you start recognising tracks. Then you start recognising more. Then you know them by heart.
One year later, do I mind? Yes and no. There is definitely repetitiveness involved. But few tracks are recognisable enough to get appropriately annoying. Some things that also help:

So, overall, do I wish the variability was higher? Yes, but it’s far from a dealbreaker.
Speaking of creativity, a lot of marketing on Brain.fm focuses on improving focus and productivity by hacking the brain with music.
This is my personal experience with my own rather weird brain, and it will probably be different for you. But, overall, after a year of use, I cannot report any mental gains. I tend to hyper-focus quickly and get into a flow state. Brain.fm did not really change the quality of that. What it does help me with is broadening the environments I can operate in and making focus on-demand, making me less of a slave of my current mental state.
However, the one thing it does help is creativity. I love listening on Creativity mode if I am doing graphic design, photo editing, writing, or struggling with a hard coding problem. I am listening to it now on a train and vibing hard, having turned it on after struggling to find sentences in the kerfuffle and overall not enjoying the experience at all. That has been my consistent experience with Brain.fm and creative tasks. Also, the creative tracks are pure bangers.
Note that this experience is not restricted to Brain.fm for me. Any kind of music helped. Brain.fm is just much more consistent.
Another thing that I noticed is that, despite my very enthusiastic and ambassador-prone personality, I am still the only one of my friends who uses it after a year. Some have tried it and did not find it helped them. Some, when they listen to it, say, “Wow, that is the most generic-sounding music I have ever heard”. But I have not yet found anyone whom it helped quite like me.
From the more technical side, the mobile app is very sluggish, being almost unusable on my older phone. It also seems to get features quicker than the web version, i.e., for a long time, it had a Light Work mode that was missing from the web version, which I sorely missed. Even now, it has a Meditation mode that’s not available on the website. If you plan to use the web version primarily, this is a consideration.
Another thing I miss is an offline mode. It buffers quite far ahead, but if you open it on a train with no phone signal, you are pretty much screwed until you manage to load at least something.
But the biggest gripe I have that troubles me deeply is that this tool that greatly increases my quality of life, ability to focus, and makes me a more capable person overall is… subscription-based. The fact that this company could go under tomorrow and leave me with nothing is something I have to solve.
I have no interest in aiding piracy and will gladly pay money for this service for as long as it is available, but if I find a way to backup the whole site I will do so in a heartbeat. If anyone has tried to do this successfully, please email me.
I won’t share the code or the results, but one day, Brain.fm, as all online services, will disappear. After that, who knows, you might find an archive here.
For me, the bottom line is that if you already listen to a lot of study/work playlists, buying Brain.fm will streamline your experience and readily pay for itself.
If you are short on money, did you know they offer a 20% student discount? They do not advertise it much, but it helped me pull the trigger when I had little money to spare.
If you are looking for a way to hack your way to better productivity, your mileage may vary. I say, try it for 30 days (here’s a link3 for an extended 30-day free trial) and see.
I have since broken the streak, but it has been over two years and my opinion has not changed ↩
Who inevitably persuaded me to switch to Brain.fm, fun fact ↩
Disclaimer: This is a referral link and gives me one free month if you decide to buy it. This option did not exist when I originally wrote this review, and it did not influence it in any way. You can also use the old non-referral link if this does not suit you ↩
Another problem is that you have to use Shift to access numbers in the number row, which tends to break the design of smaller layouts, while also requiring you to build up twice as much muscle memory, which is very confusing.
Not long after writing my first blog post on my layout, I concluded that I had had enough and decided to make a hybrid EN/SK layout.
I use the base Miryoku layout and use the outer keys for the accented versions. This guide summarises how to make them work while keeping the core Miryoku intact.
There are three options I considered:
All three have their pros and cons. Using the Slovak layout meant that I could use QMK’s existing language-specific keycodes, but I would have to override all of the 21 shifted symbols.
I also wanted to implement Shift making capital versions of the Slovak keys, which would add another 12 overrides.
That sounded tedious and a waste of firmware space.
Using the Unicode input option would be just slightly annoying when typing (due to the delay and flash of characters) but much simpler (just 12 overrides). However, I wanted it to be cross-platform without having to install any programs.
So I explored using international layouts. My first thought was the US International layout, but the version in Linux did not have the dead keys I needed.
I then stumbled upon the EurKEY layout. It was cross-platform, pre-installed in Linux and supported many of the keys I needed. It also supported adding Shift to make capital versions of the characters, unlike the Slovak layout! That meant no need for overrides.
However, about half of the characters needed to be typed with a dead key. It has a smaller delay and flash than the Unicode option, but it turned out a bit tricky to implement correctly.
If your language only uses keys already present in the layout, the implementation is dead simple. Create macros for all the keys you need.
#define EU_YACU ALGR(KC_R) // ý
#define EU_AACU ALGR(KC_X) // á
#define EU_IACU ALGR(KC_B) // í
#define EU_EACU ALGR(KC_G) // é
#define EU_UACU ALGR(KC_J) // ú
#define EU_OACU ALGR(KC_DOT) // ó
#define EU_ADIA ALGR(KC_A) // ä
You can immediately start using these in your keymap.
For full functionality, you only need to deal with some nuances, like configuring Caps Work to not consider them word breaking, or adding them to the Auto Shift configuration1 if you use it.
The dead keys are a bit more involved. For each one, you need to define a custom keycode. Then, during handling, you need to:
Check my QMK fork for a reference implementation.
An unfortunate reality is that Mod-Taps do not support 16-bit keycodes. This affects both regular (as they are accessed with modifiers) and dead key characters.
I recommend refactoring the functionality into three functions.
Then your process_record_user can look like this:
switch (keycode) {
case EU_OCIR ... EU_ZCAR:
return process_deadkey(keycode, record);
// Mod-taps do not support 16-bit keys; manually set the keycode
case SFT_T(EU_OACU):
return process_modtap(EU_OACU, record);
case GUI_T(EU_OCIR):
return process_modtap_deadkey(EU_OCIR, record);
case SFT_T(EU_NCAR):
return process_modtap_deadkey(EU_NCAR, record);
default:
return true;
}
Prácou na počítači sa živím a už dlhšie ma sprevádza bolesť v rukách. Pri týchto rozloženiach ide o minimalizáciu úsilia (nie maximalizáciu rýchlosti, čo je častá miskoncepcia), vďaka čomu vedia s touto do dlhodoba bolesťou pomôcť.
Avšak žiadne z dostupných analýz sa nevyužíva slovenčinu, takže je ťažké povedať, ako veľmi a či vôbec sa dá profitovať z nejakého rozloženia v slovenčine. Preto som sa rozhodol spraviť vlastnú analýzu.
| Rozloženie1 | Námaha (EN)2 | Námaha (SK)2 | Zlepšenie (EN) | Zlepšenie (SK) |
|---|---|---|---|---|
| Qwerty | 2,383 | 2,389 | — | — |
| Qwertz3 | 2,363 | 2.392 | 0,8 % | 0 % |
| Dvorak | 1,931 | 2,055 | 19,0 % | 14,0 % |
| Colemak | 1,836 | 1,981 | 23,0 % | 17,1 % |
| Workman | 1,806 | 2,087 | 24,2 % | 12,6 % |
| Colemak-DH | 1,735 | 1,937 | 27,2 % | 18,9 % |
Ako vidno, čim špecializovanejšie sú rozloženia na špecifiká angličtiny, tým menej sa prenášajú zlepšenia na slovenčinu.
o, ale v angličtine (a vo veľkom množstve západných jazykov) je to e, čo je smola, lebo e má častokrát jedno z najlepších miestGenerované pomocou interaktívneho nástroja. Ak chcete skúsiť iné rozhrania alebo nastavenia, nájdete ho nižšie.





Pre mňa asi nič, ale pre záujemcov je viacero možností:
Túto analýzu som začal, lebo som sa naučil Colemak-DH kvôli angličtine, a chcel som zistiť, či mi to nezhoršilo písanie po slovensky. Myslím, že aj takáto jednoduchá analýza stačí, aby sa dalo povedať, že nie – možno dokonca až to, že to stojí za to.
Budem ešte písať o tom, prečo práve Colemak-DH, ale v skratke:
Výsledky môžete porovnať s originálnou verziou.
Z môjho výskumu sa mi nezdá, že by na Slovensku boli alterntatívne rozloženia nejak populárne, tak tu uvádzam iba zopár najznámejších. Ďalšie sú k dispozícii v interaktívnom nástroji. ↩
Použil som alternatívne rozloženie prstov (viď nástroj), lebo neverím, že niekto skutočne píše s tradičným, ktoré má beztak horšie výsledky. ↩
Qwertz je optimalizované pre nemčinu. Nechal som ho tu len aby som ukázal, aké zbytočné je používať ho v slovenčine. ↩
The easiest1 way is to download the binary from the releases page, mark it as executable and put it into ~/.local/bin.
I used stack for this, but you might prefer to use Docker instead.
git clone git@github.com:kmonad/kmonad.git
cd kmonad
toolbox create kmonad
toolbox enter kmonad
sudo dnf install stack
stack install
This will install KMonad into ~/.local/bin. It does not need to be installed system-wide.
To run KMonad, you will also need to configure some necessary permissions.
First, add the udev rule for UInput, e.g. in /etc/udev/rules.d/90-kmonad.rules:
KERNEL=="uinput", MODE="0660", GROUP="uinput", OPTIONS+="static_node=uinput"
A Silverblue-specific workaround is needed to be able to add the user to the required groups.
grep -E '^uinput:' /usr/lib/group >> /etc/group
grep -E '^input:' /usr/lib/group >> /etc/group
systemctl reboot
Then, add the user to the uinput and input groups:
sudo usermod -aG uinput $USER
sudo usermod -aG input $USER
Log out and log back in, and you should be able to run kmonad.
There is a systemd service available in the repo.
If you want an easier way to control it, I wrote an extension for integrating it into GNOME Shell.
When first writing this guide, I somehow completely missed this option. Sorry for that! ↩
I did quite a lot of experimenting with my own layouts, and when I encountered Miryoku, a 36-key layout, I was really impressed with its thought-through design. Its principles were very similar to the things I derived from my own experiences, and it implemented them meticulously.
This is my 56-key version of Miryoku on the Sofle keyboard.
The inside is a basically unmodified Miryoku (do not these tiny layouts look cute?).

Overall, I really like the layout. Here are my condensed thoughts on it.
PERMISSIVE_HOLD helps a lot to reduce the increased strainPERMISSIVE_HOLD will not work either, so you always have to hold them for the full delay, which is quite taxing on the fingers/, Enter, Backspace etc.), and the symbol layer does not have all sympols, and they are oddly spaced (like the parantheses, or the common curly brackets)But overall, the best layout I tried so far. I do recommend reading the whole reference manual to learn it more quickly.

I left it as-is, except for the outermost keys, which are too far away to be useful, and do not contain interesting keys for me anyway. If I need them, I can use them in the Miryoku layers.
I also included the Slovak legends here to give an idea just how important these keys are to me.

These were the interesting ones. Miryoku already includes an elegant and easy-to-remember solution on the number layer. The left and right columns contain all the leftover keys. The keys that already existed on the three main rows ([, ; and ]2) have their positions unchanged. The three remaining keys are placed arbitrarily, but I found them comfortable to use.
I returned the left column to its original place. The right column then went on the opposite side; this took some getting used to, but I quickly adapted and found it comfortable.
The only change I made was to swap the backtick (a semicolon on the Slovak layout) for a caron dead key (ˇ), which is needed for some of the letters that do not fit, such as ď, or capital letters.
This leaves us with 4 remaining keys (discounting the two top corner keys, which I only include in my tap/gaming layer) and two encoders.
I just flung whatever I found personally useful there.

Alt+` same-app window switching shortcut. This is the single most annoying downside of switching to Miryoku, as I cannot figure out an elegant one-handed solution to it; this is my best workaroundAlt+Space to switching application windowsPageUp and PageDown by default, for quickly scrolling long documents. When pressed, it switches to edit mode, where it scrubs edit history instead (which is a bit awkward in Miryoku with one hand). Both of these are incredibly useful, especially one-handedI hope you found some of this information useful for designing your own layout.
You can find the newest version of my keymap on my QMK fork. Since the time of writing, I had made several changes. The core design principle is the same but it has many quality-of-life improvements. You can find the newest visualisation on my Figma!
…of which 3 are digraphs (ch, dz, dž), so I guess actually only 43, but how would you call them then? Grapheme clusters? ↩
Note that Miryoku swaps the apostrophe and the semicolon ↩
So here is my current boiled-down ritual I go through with any monitor I have to work with, in roughly the order of importance.
Get a monitor stand or at least a stack of books if the top of the screen is not level with your eyes. There is no use in tweaking the monitor if you can’t use it like a human.
Get a digital cable. With old monitors and an abundance of VGA cables (like I had), one can be tempted to just use analogue. However, analogue cables suffer from signal degradation1. Digital cables also do not need image adjustment to work.
If you can, use DisplayPort (preferred – open standard, desktop-focused), HDMI or DVI‑D. If your monitor does not have a digital port, prefer thicker and shorter cables.
If you use HDMI, use the full range of RGB. I was once working on a monitor that should have been good but had absolutely no detail in the blacks. I found out that it was set to limited RGB, which is a mode used mainly by televisions that limits the detail in shadows and highlights. If your input and output settings are mismatched, you will drastically reduce your image quality. For desktop, you always want full.
Switch the picture mode to ‘user’ (or at least ‘standard’). A mode that lets you set up as much as possible is preferred, as ‘standard’ modes sometimes tend to have unadjustable settings, such as tint compensations. Disable any dynamic contrast or colour enhancements. Sometimes it’s good to start with a reset, depending on the previous owner.
Remove software sharpening. The Lagom LCD test pages have a great test image for this. On analogue, you will probably never get a truly neutral image (the setting is actually there for compensating sharpness loss). On digital, you should be able to get a completely flat grey image that you do not have to squint hard at for it to be completely uniform. Neutral typically means ‘50’2.
Set gamma to sRGB (and neutralise contrast changes). The contrast setting affects the gamma, but AFAIK, there is no clear test for it. Try the Lagom contrast test page for a quick adjustment. Keep in mind that some monitors are just plain bad and are not capable of differentiating colours at the extremities. If the numerical middle does not yield a neutral image, go for neutral-ish.
Gamma is better, however. There is a separate test on Lagom, but I prefer the sharpness test; it just seems a little easier to see. To properly reproduce sRGB images (i.e. images on the web), the gamma should be set to roughly 2.2. If your monitor has an sRGB setting, use that, otherwise, use whatever produces the best results.
Some monitors do not have a setting equivalent to sRGB. If that is the case, you can emulate it in the OS. You can either use the Windows display calibration tool (you can leave the rest of the settings at default) or your drivers.3 However, I did not have good experience with this.
Remove colour casts. Most monitors I have come across have some sort of colour tint when completely neutral. Manufacturers compensate for this with default settings. However, unfortunately, these default settings are not necessarily neutral. They can be either warmer or colder by default, moreover, LCDs tend to yellow over time, so if your monitor is not new, these default settings (and also any sRGB profiles if present) are basically useless.
Fortunately, you can calibrate this pretty well yourself with just a sheet of white paper. Since we are trying to recreate the D65 white point which was created to best represent average midday light, let some sunlight in (just not directly on your screen and paper), open a completely white screen (i.e. the Eizo defective pixel test) and try to match the paper colour by lowering the individual RGB channels4.
Tweak overdrive. Overdrive (or response time compensation) is a technique for improving the speed at which LCD pixels change colour by initially increasing voltage, which improves the response times of screens (sometimes by quite a bit). You’ll see it under many different names, as manufacturers tried to avoid paying royalty fees to the patent holder in the past.
It works similarly to how you would put a pan on high heat at the start to make it reach the target temperature more quickly. If you are not careful, you will miss the target temperature and go higher than you want. Similarly, in screens this creates artifacts (‘coronas’), so you may want to tweak the parameters to reach a balance. You can use the ghosting test on Blur Busters.
Some monitors include a light strobing mode (or they insert black frames) which lowers blurs down to a minimum, but I would probably recommend against this unless you do competitive gaming, as flickering lights (commonly experienced as PWM for controlling brightness on screens) have been linked to eye strain and headaches. If you have a flicker-free backlight, this negates its advantages.
Bonus: Turn on the night light feature and auto-dark mode in your OS. You need good eyes to see your properly-setup monitor! Night filters are standard nowadays. For auto dark modes, there is Windows Auto Dark Mode or the Night Theme Switcher extension for GNOME.
I hope you found this guide useful.
Of course, if you are a professional and need truly accurate colour reproduction, then you will need to do a calibration with a colourimeter.
And now that you have an accurate, neutral image, why not try accurate, neutral sound as well?
I was really surprised at how big the difference in sharpness was when I switched. ↩
If you are lucky. Sometimes neutral is ‘5’ or ‘0’, but in the end, you will have to use your own judgment. On my old Samsung monitor, the neutral for contrast and sharpness is somewhere around 60. ↩
I am not aware of any simple way of doing this in Linux; if you do, please contact me. ↩
Some argue that this should only be done if you need this for your work (i.e. you do photography, graphic design or video editing), but for casual use cases, you should use the full range of colours, so that movies and games are more vibrant.
I do not necessarily agree. I think colour casts generally do not look good and degrade your experience, especially if you have a dual monitor setup or you use the screen during the day. Even manufacturers prefer compensation (and thus limiting the colour vibrancy) to a colour cast. Do you want every movie you watch to be yellow or green?
However, if you have a really bad (or old) monitor, doing this calibration will leave you with very bland colours. In that case, I would only compensate slightly (i.e. not going below 40 if 50 is neutral), or just simply roll with it. Might as well see at least some colours! ↩
My first ‘split’ keyboard was the C-Tech Ergo KB-113E, also known as the Nulea Ergonomic Keyboard. I bought it for 20€; it was by far the cheapest ergonomic keyboard I could find. It is also by far the ugliest keyboard I have ever seen. It looks fine in the photos, but it is just a big black dust-prone slab that covers most of your desk when you use it.
It functions exactly as you would think a cheap membrane keyboard would. The experience is standard at best. It gets the job done, but after 6 months, the palm rests have now been permanently molded into the shape of my hands, the ABS keycaps are shiny, and the apostrophe key either does not work or produces two apostrophes. The tenting is quite low, and the keyboard itself is very large, so it is uncomfortable to use a mouse with it.
The actuation force is also quite high, around 65g from my (amateur) measurements. My pinkies tend to hurt from prolonged use.
However, it was a good introduction to split keyboards. It took me a week or two to get used to it, and I will probably never return to a traditional keyboard.
Cold made my pain worse, and my desk was not exactly the best sliding surface for my mice, so I decided to get a desk mat.
Got the grey Logitech Studio Mat. Incredibly cheap (around 8€ at the time of writing, but has got up in price since then), surprisingly small but big enough for work (which I think I prefer, sometimes the desk needs to tend to non-soft matters). My only complaint is the 2mm is a bit hard; I wish they had a 3.5mm1 version.
The Ikea Flintan was the only one that fit my budget. Recently sky-rocketed in price (from 80 to 120€), but I managed to get it almost new for 50€. Extremely happy. The armrests completely changed how I sit at the desk, but they do not get in the way of sitting cross-legged. Also, the seat is big enough to sit cross-legged. The back support helps me sit better for longer. I thought I would miss the option to lock the back tilt, but so far, I do not mind; the resistance is just enough to keep my position without strain. However, YMMV, as the resistance is not adjustable.
Update 01/2024: I have been sitting on this chair for a year, and while I am still happy with the purchase, I need to add a few things.
Get a monitor stand, any monitor stand (and a monitor). I got a simple Stell SOS 1010. You do not need a fancy adjustable one – a fixed one will do if your screen is of any useful size. I got this one for 20€, am very happy.
I had an adjustable one before, but the problem with the classic approach is that it varies two axes when changing height; it either goes sideways or changes your distance to it.
Changing my devices was only a factor. Changing my habits was an equally large one. E.g., I was influenced a lot by Cal Newport’s Digital Minimalism, which helped me cut down my smartphone habits, which in turn reduced stress on my wrists. I started rigorously applying the Pomodoro technique to enable my muscles (and eyes) to rest between work sessions. I started exercising, which helped my wrist pain as well.
Exercise. It makes all the difference. I currently do the minroutine from r/bodyweightfitness and it does what it promises – helps me move more without complicated schedules, apps or timers.
I also started bouldering. It is much more expensive than exercising at home, but turned out worth every penny, as the fun and complexity of the exercise made it easily sustainable if you can spare the money.
Long screen sessions got me a slight dry eye syndrome that started to temporarily worsen my eyesight. Eye drops are good for relief; regular pauses (for prevention) are better. I currently have Artelac TripleAction on hand. If you get some, choose the ones with the special air-proof design, which are more expensive but do not have any preservatives (but still last for ages). Ones with oil provide much longer relief. However, I recommend you read the instructions carefully, as I have been applying them incorrectly for a year.
In my opinion, in terms of ergonomics, laptop touchpads are the worst input device available. I am careful to always carry a mouse with me nowadays.
I have considered the Microsoft Sculpt Ergonomic keyboard, but it cost almost twice as much as the C-Tech, even second-hand, which seemed too much for an experiment.
I reconsidered it since the C-Tech is really wide, and I would prefer my mouse closer, but I have seen reviews, and it seems the keyboard has its quirks – like the large dongle and the Fn switch – and I was unpersuaded it was worth the money.
I am not aware of any other commercial budget split keyboards in my market. But that is not the only option (stick around for part 3)…
If you are starting to experience pain, I strongly suggest you start working on mitigating it as soon as possible. I am aware the products in this series can quickly add up; it is not the only thing you can do.
If you are reading this, chances are you are also experiencing pain. I hope the insights in this series will prove helpful to you and that you manage the pain better than I did. To the rest of you – may this be a cautionary tale. Take care!
My body has been giving me hints that it was not taking the load of work at the computer I threw at it well for about two years before then, but I did not listen.
The first pain that became so severe that it prevented me from working was from the carpal tunnel1 after intensive graphic design sessions, programming, guitar playing, and working with digital devices in general.
After unsuccessful naïve attempts (wrist rests2, wrist wraps), I was forced into a more direct approach.
In this series, I aim to give a rundown of what I tried and what ultimately stuck, hopefully helping you spend your time and money more effectively battling your pain.
Disclaimer:
The first products I tried were from Connect IT, which had a long-term marketing campaign focusing on ergonomics.
I bought the Verti ErgoMax – since it looked like it would fit my large hands well – and a mouse pad with a wrist wrest, which they marketed for use with their vertical mice for heightened ergonomics.
You cannot use a mouse pad with ergonomic mice; it does not work. Try laying your hand on the table as if you were holding one. There is no space.
The mouse was okay, but nothing stellar. The shape was mostly good at looking weird. After several months of use, the mouse broke down, and I returned it. After several experiences, I would recommend avoiding this company.
I have heard good things about the Anker Vertical mouse. It’s almost impossible to get it in Europe, but I later found out that the Trust Verto was the exact same mouse, down to the renders they used to market it.
It was my daily driver for six months and eliminated my wrist pain. I became a big advocate of vertical mice – this article was initially supposed to be about them.
After six months, the honeymoon ended. The mouse wheel started malfunctioning to the point of being unusable, and more importantly, health issues started arising.
While the vertical mouse model works wonders on the carpal tunnel, it introduces excessive stress on the forearm muscles, which are used to press the buttons, as you have to squeeze your hand slightly to prevent your mouse from moving when clicking.
After almost a year of usage, I could no longer use a vertical mouse. Around the same time, the mouse broke down. After a year, I returned it and got a replacement, which I occasionally use.
Due to this fact, I got interested in trackballs. I considered the Logitech M575 and the Logitech MX Ergo, the only sub-100€ options I could find.
I slightly impulsed-bought the MX Ergo when I found a listing for around 60€ on a local second-hand market.
It was the better choice, albeit more expensive, in the long term. I semi-regularly use the customisable tilting, but usually on the higher setting. But since the higher tilt is basically vital for me, I am glad for this feature (I even 3D-printed the ‘Plus’ version stand to additionally increase the tilt).
I became a huge proponent of trackballs.
After around five months, I landed with a repetitive strain injury on my right thumb. A thumb-operated trackball is inherently imprecise – do not let the marketing fool you. On high-precision operations, you have to strain your thumb a lot to achieve the desired accuracy, or you have to use the high-precision mode button, which slows down the mouse speed but also slows down your speed.
This started around the time I signed up for two courses in graphic design after a lengthy break. I realised very soon that you just cannot do graphic design with a thumb-operated trackball unless you want to risk losing your hair and your thumb.
Around this time, I also started experiencing pain in my index finger due to the high amount of scrolling I had to do while working on web design.
Since I needed high precision and a better way to scroll, I started looking at Logitech’s hyper-scroll. I also realised that my past issues with mice were partly caused by their size, which was too small to support my palms, which further incentivised me to try full-size standard mice.
My first choice was the M720 Triathlon, which had the functionality I needed but at half the price. I called off the buy at the last moment as I found out the mouse was too small for my large hands. My girlfriend currently owns one, and she is very happy with it. To my dismay, however, I found that it does not have SmartShift, which would have been a dealbreaker for me, but she doesn’t mind.
I borrowed an MX Master 2S from a friend, and I liked it a lot – it just about fit my hands, but it was lower than I had hoped. I got my hands on an MX Master 3, which seemed much higher, so when I found a listing for it for 45€, I bought it right away.
It has been a part of my daily driver set for 4 months now. I am not entirely satisfied with the scroll wheel, which is too heavy for me and has a muddy feel due to the magnets. However, while I like the mechanical qualities of the scroll wheel on the 2S, it is too light to be practically used in free-scroll mode, and I do prefer the silence of the 3.
I got this pen tablet as a gift from a good friend when she upgraded to a higher model.
I tried several times to use it as a supplement for a mouse. My experience is mixed.
Using the pen is relatively slow, especially while typing, and can be inaccurate. The driver support on Linux is fine, but not much more. There is no scrolling support, and I did not have time to try to file a bug report for it. I have mainly used this option during transitional phases.
Another big disadvantage is that a pen tablet is not very portable, so I usually only use it at my desk.
Currently in the mail. Am very excited, as a whole-hand operated trackball is something I wanted to try for a long time now.
Of course, I have considered the Logitech MX Vertical, but the price is so high and its features so standard that unless I get it at most at a third of its price, I will never buy it. I would really like a thumb rest, however.
I have considered the Microsoft Sculpt Ergonomic mouse, but I do not want to support Microsoft I am worried that the mouse would be too small for my hands.
The single biggest takeaway is that no mouse is a panacea. I currently mostly use the MX Ergo and the MX Master 3; I have even created a travelling case so that they would not get damaged on the frequent hauls to the campus and back. I switch between them as often as every two hours, depending on the signals they send me.
An unforeseen consequence of thumb-operated trackballs is that they are perfect for travelling, especially on trains. You do need a little extra space to get the advantages of a mouse workflow – unless you mind the rather bulky weight of the metal plate.
I rarely supplement them with the Trust Verto, which sits on my desk.
My pain has stabilised, but it is not perfect. If I am not careful, it quickly comes back. I was recently stuck with a regular mouse, and within 30 minutes, the pain became paralysing.
Several attempts integrate Grammarly into Overleaf, but they all deviate from how the platform is meant to be used and are slightly cumbersome.
If you can settle for an offline setup – which I can wholly recommend – there is a more ergonomic solution. It involves a combination of three tools:
Since VSCode is very extensible, the exact details of your workflow may differ. I can recommend the Markdown All in One extension, which eases working with Markdown files quite a bit. I use its preview to check for Markdown errors before having to deal with TeX. I’ve also had varying levels of success with the markdownlint extension to help keep my Markdown files clean.
You can stop here and already get several good use-cases – for example, the way this workflow clicked into the way I write blog posts was an unexpected but welcome bonus.
I cannot comment on the usage with LaTeX, but I have heard good things about the LaTeX Workshop extension (the numbers speak for themselves).
ConTeXt support in VSCode is finicky, but so is ConTeXt support everywhere else, so it is good enough. I use the ConTeXt Syntax extension with custom build tasks and problem matchers, but that is the subject of a future blog post.
To integrate the markdown you produced into your TeX document, you will have to dive into the documentation of the TeX markdown package, as its feature set is quite extensive. It has support for probably everything you will need, like citations, footnotes, figures, and you can also enable hybrid mode to mix in TeX syntax, such as math. Big shoutout to (our very own) Vít Novotný, as his work does most of the heavy lifting in this setup.
Although few rough edges need honing – e.g. the support for alt-text in images (used in the markdown package to display figures with annotations) triggers a Grammarly error if you use it to check curly quotation marks – but the overall functionality is highly usable.
A final thing to note is how the Grammarly editing process perfectly fits into the VSCode user experience – Ctrl+. to apply and F8/Shift+F8 to jump arround issues is such a nicer way to edit documents than the default Grammarly clicky experience.
It wasn’t.
This only applies if you have a LUKS-encrypted root partition. To see if it is correctly set up, run
$ sudo dmsetup table
…
luks-123abcdef-etc: 0 1234567 crypt aes-xts-plain64 000etc000 0 8:2 4096 1 allow_discards
…
If you see allow_discards on every relevant entry (like above), you’re all
set. If not, run
$ rpm-ostree kargs --append=rd.luks.options=discard
This applies the ‘discards’ flag1 at boot time, enabling it for all partitions
on the root drive. (If you only want this for some, use
rd.luks.options=<LUKS partition ID>=discard). Restart and run
fstrim.service. On my machine, it was a difference between light and day.
This has some security implications. For me, security is not paramount, so I do not mind this – you might. ↩