In this post I recount the health problems I had last summer (caused by the excessive use of computers), and as a tutorial, the installation of the Colemak layout on Linux.

In questo post racconto dei problemi di salute che ho avuto (causati dall'uso eccessivo dei computer), e come tutorial, l'installazione della disposizione Colemak su Linux.

Installation of the Colemak layout on Linux

In July 2015, I developed the administrative section of an university project related to a web site, in short, for an exam. When it comes to projects, unfortunately, I have the bad habit to get obsessed over them until completion. It took me a month (starting from scratch, I never programmed PHP before then), if not 24 hours a day, then almost, to complete it.

The result of that craziness? In August, after completing, my right shoulder took the habit to curse at me. If I ever tried to get near a workstation, keyboard or mouse, I had the following symptoms all together:

  • Nausea
  • Headache
  • Shoulder and hands pain

The doctor's prescription? To rest a week, away from technology (it seems like a bad thing, but I can guarantee it's not, on the contrary, now I think we have too much technology around, we should cut it out), with an ointment for muscular pain. I'd like to say that I preferred to call it "fresh water", not "ointment".

Until then, I never thought about "health", when it comes to be in front of one of these machines.
Probably, this happened because of the reassuring but dangerous idea, that young people like myself have, that is, the sentence "I am young", useful to justify anything, with the only purpose to do things without worrying about consequences.
After healing, I decided to make some research to document myself, I had the impression I've been doing something wrong on the correct posture to assume before a computer. I didn't need to search too much in reality, one of the first pages in the results cleared everything, ironically, it's Microsoft itself explaining. Here's the document, if you never happened to read it.
If you're not satisfied by the fact it's Microsoft speaking, here are some other suggestions:

Unfortunately, in my workstation (the room you often see in the videos), I can't do much about the lighting, but I was able to get an office chair and a support to raise the laptop at the needed height.
I use these settings since September, I'm fine with them, even though I had some difficulties in getting used to.

Afterwards, I've made other researches and I learnt about the existence of different layouts (=keys disposition) for keyboards.
We all know the typical QWERTY layout, a legacy from typewriters. It was conceived with the aim to overcome some technical limitations of the time, as the jamming of the typebars (levers connected in correspondence of the keys, which, once pressed, they made them moving and imprint the letters on the sheet), and to make this possible, the most frequent letters were arranged very far apart, so that it was more difficult to cause jams.
Even though the problem of typebars did not exist anymore in personal computers, this standard was kept, and nowadays it's still proposed and produced, with a few variations depending on the language (think about the French AZERTY or the German QWERTZ).
In 1936, August Dvorak, patented a more efficient layout (in respect to the English language) which positioned the most frequent keys in close proximity: the "Dvorak" layout.

Unfortunately to this day, there is no proof that the use of one or the other layout, reduces what is called RSI (Repetitive strain injury). We only know it may help, because of the proximity of the letters, but what it determines the health, is the correct posture on the keyboard.

Despite that, today I propose to you the installation and the use of an alternative layout on GNU/Linux distributions.
The layout in question is "Colemak", developed in 2006, it is an improvement over the Dvorak, according to the author it's perfect for those who used only QWERTY, because it keeps all the option keys (Ctrl-Z, Ctrl-C, etcetera). Dvorak, on the contrary, is more difficult to learn.

The Colemak official website explains how to set the layout.
We first need to get the necessary.
In the moment I am writing, you can buy letter stickers on eBay. These can be attached on keyboards, in practice, together with preprinted QWERTY keys, you can "add" the letters from Colemak, and have both of them. Now, I have three different usb keyboards available, so the idea to have stickers is a bit "unoriginal". I went for a "radical" solution, that is, changing keys position physically to one of the keyboards.

Once you've performed your modification, whatever it is, it is possible to proceed to the layout change.
My personal advice is to set the Colemak layout as the default one, and have a "way out", in case you need to return to QWERTY, even just for a moment.

Colemak is installed on all the modern distributions, you only have to type on a terminal window:

setkbmap us -variant colemak

I want to make you notice that this is a variant of the American layout.
In this page, an user proposed some layout tips for people that have a different language's keyboard.
Of course the question that arises here is "how to change keys settings?". Luckily for us, Linux uses simple text files to handle these information, all we need is a guide like this one, that introduces us to the subject.
Now, what I've done was to take the American Colemak, keep all the Italian basic keys (grave accents ùàòè included) and I simply changed the positions of the letters. The file is available on my Sourceforge page under the name of "it_colemak" in the project "Sample Programs" (If you're reading this post in English, I highly doubt you'll find this file useful though).
To use the file, you first want to perform a backup of the file "/usr/share/X11/xkb/symbols/it", after that, download "it_colemak", open it, copy the entire content, open the file "/usr/share/X11/xkb/symbols/it" as root, paste the the content at the end of the file and save it.
Finally, open a terminal window and type:

setkbmap it -variant colemak

to use the Colemak layout based on the Linux basic Italian keyboard.

The "way out" I was talking about earlier, can be the use of a script like this one:

if [ $# -ne 1 ]
then
    echo "Expected argument \"standard\" or \"colemak\""
    exit
fi

if [ "$1" = "standard" ]
then
    setxkbmap it #Here goes your language

elif [ "$1" = "colemak" ]
then
    setxkbmap it -variant colemak #Here goes colemak
else
    echo "Expected argument \"standard\" or \"colemak\""
fi

To set the default layout to Colemak you need to open the file "/etc/default/keyboard" and set the XKBVARIANT variable to "colemak".
Here's an example:

Before:

# KEYBOARD CONFIGURATION FILE

# Consult the keyboard(5) manual page.

XKBMODEL="pc105"
XKBLAYOUT="it"
XKBVARIANT=""
XKBOPTIONS=""

BACKSPACE="guess"

After:

# KEYBOARD CONFIGURATION FILE

# Consult the keyboard(5) manual page.

XKBMODEL="pc105"
XKBLAYOUT="it"
XKBVARIANT="colemak"
XKBOPTIONS=""

BACKSPACE="guess"

on the next boot, you'll use Colemak.

Personally I use Colemak since the end of November 2015, and to this day I can say I'm doing well with it, even though I'm still not completely used to it.
It is true that the fingers movement is lowered, but I don't know if this automatically means "better health".
Whatever the case, that's all for this month, I hope I opened the doors to you about the world of layouts.

Greetings from Antonio Daniele.
See you next month.

Go back to the top, Share, Look at the comments or Comment yourself!

Installazione della layout Colemak su Linux

In Luglio 2015, ho sviluppato la parte amministrativa di un progetto universitario relativo ad un sito web, insomma, per un esame. Quando si tratta di progetti, purtroppo, ho il brutto vizio di fissarmici, finché non lo completo. Ho impiegato un mese (partendo da zero conoscenze, non avevo mai programmato in PHP prima d'allora), non dico 24 ore su 24, ma quasi, per completarlo.

Risultato di tale pazzia? Ad inizio agosto, dopo aver finito, avevo la spalla destra che bestemmiava. Se mai azzardavo avvicinarmi ad una postazione, tastiera o mouse, avevo in contemporanea i seguenti sintomi:

  • Nausea
  • Mal di testa
  • Dolori a spalla e mani

Prescrizione del dottore, una settimana a riposo, lontano, da una qualsiasi tecnologia (che, può sembrare una cosa brutta, ma posso garantirvi che così non è, anzi, ora son dell'opinione che siamo fin troppo circondati dalla tecnologia, sarebbe meglio darci un taglio netto), e con una pomata per i dolori muscolari che, ahimè, si chiama "pomata", ma l'avrei ridenominata volentieri "acqua fresca".

Fino ad allora, non mi sono mai posto il problema della "salute", quando si sta davanti ad una di queste macchine.
Probabilmente, ciò è successo, a causa del discorso rassicurante, ma pericoloso, che noi giovani spesso facciamo, ovvero, la famosa frase "sono giovane", utile, a giustificare qualsiasi cosa, col solo scopo di farla, senza preoccuparci delle conseguenze.
Dopo essermi ripreso, ho deciso di fare qualche ricerca, per documentarmi, visto che, avevo l'impressione di aver sbagliato qualcosa sulla corretta posa davanti ad un calcolatore. Non ho avuto bisogno di cercare molto in realtà, una delle prime pagine nei risultati di ricerca mi ha chiarito parecchie idee, ironicamente, è la stessa Microsoft a spiegare. Il documento ve lo propongo qui, se non vi è mai capitato di leggerlo.
Se non siete soddisfatti del fatto che sia Microsoft a dirvelo, eccovi qui qualche altra proposta:

Purtroppo, nella mia postazione di lavoro (la stanza che spesso si vede nei video), non posso fare molto per quanto riguarda l'illuminazione, ma sono riuscito tranquillamente a procurarmi una sedia d'ufficio e un sostegno, che mi permette di innalzare il portatile fino all'altezza necessaria.
Uso queste impostazioni da settembre, e devo dire che mi trovo bene, anche se all'inizio ho fatto un po' di fatica ad abituarmici.

In seguito ho fatto altre ricerche, e sono venuto a conoscenza della disponibilità di diverse disposizioni per le tastiere.
Tutti noi conosciamo la tipica disposizione QWERTY che ci portiamo dai tempi delle macchine da scrivere. Venne concepita con lo scopo di superare alcuni limiti tecnici dell'epoca, ovvero, l'incepparsi dei martelletti (leve collegate in corrispondenza dei tasti, che, una volta premuti, le azionavano, ed esse imprimevano le lettere sul foglio), e per far questo, le lettere digitate più di frequente, vennero disposte molto lontane tra loro, cosicché, fosse più difficile provocare inceppamenti di questo tipo.
Nonostante nei personal computer non ci fosse più il problema dei martelletti, si è comunque mantenuto questo standard, e ad oggi, viene ancora proposto e prodotto, con poche varianti a seconda delle lingue (si pensi ad esempio, all'AZERTY francese o alla QWERTZ tedesca).
Già nel '36, August Dvorak, brevettò una disposizione più efficiente (rispetto alla lingua inglese) che posizionava i tasti più frequenti in stretta vicinanza: la disposizione "Dvorak" appunto.

Purtroppo, ad oggi, non ci sono vere e proprie prove, che l'uso dell'una o dell'altra disposizione, comporti una riduzione di quello che in inglese viene chiamato RSI (Repetitive strain injury o Disturbo degli arti superiori). Si sa soltanto che possono aiutare, vista la vicinanza delle lettere, ma quello che determina la salute è principalmente la buona postura sulla tastiera.

Nonostante ciò, quest'oggi vi propongo l'installazione e l'utilizzo di una disposizione alternativa su distribuzioni GNU/Linux.
La disposizione in questione è "Colemak", sviluppata nel 2006, miglioria della Dvorak, a detta dell'autore, perfetta per chi ha usato solo la QWERTY, poiché vengono mantenuti tutti i tasti relativi alle opzioni (Ctrl-Z, Ctrl-C, eccetera). Al contrario, la Dvorak risulta di più difficile apprendimento.

Il sito ufficiale della Colemak, in inglese spiega come impostare la disposizione.
In primo luogo dobbiamo procurarci l'occorrente.
Nel momento in cui scrivo, su eBay si vendono adesivi da attaccare sulle tastiere, nella pratica, assieme ai tasti QWERTY già prestampati, è possibile "aggiungere" quelli della Colemak, così da avere ambedue le cose. Poiché mi ritrovo tre diverse tastiere usb a disposizione, l'idea degli adesivi mi sembra "poco originale", così ho optato per una modifica più "radicale", cioè, cambiare fisicamente le posizioni dei tasti, ad una delle tre.

Una volta fatta la vostra modifica, qualunque essa sia, è possibile procedere al cambiamento della disposizione.
Un mio consiglio personale, è quello di impostare come predefinita la disposizione Colemak, ma avere una "scappatoia", in caso abbiate la necessità di tornare alla QWERTY, anche solo per un momento.

Colemak è installata su tutte le moderne distribuzioni, dovrebbe bastare digitare su un terminale:

setkbmap us -variant colemak

Vi faccio notare che questa, è una variante della disposizione americana. In questa pagina, un utente ha proposto alcuni consigli di disposizioni per chi, invece, si ritrova una tastiera di un'altra lingua.
Ovviamente, la domanda che sorge spontanea è "come cambiare le impostazioni dei tasti?". Per nostra fortuna Linux utilizza dei file di testo semplice per gestire queste informazioni, tutto quel che serve è una guida come questa in inglese, che ci introduca all'argomento.
Ora, quel che ho fatto io è stato prendere la Colemak americana, mantenere tutti i tasti base italiani (inclusi gli accenti gravi ùàòè) e cambiare le posizioni delle lettere. Il file è disponibile sulla mia pagina Sourceforge, sotto il nome di "it_colemak" nel progetto "Sample Programs".
Per utilizzare questo file, dapprima effettuate un backup del file "/usr/share/X11/xkb/symbols/it", dopodiché, scaricate "it_colemak", apritelo, copiate l'intero contenuto, aprite il file "/usr/share/X11/xkb/symbols/it" come utente root, incollate il contenuto alla fine del file e salvate.
Infine, aprite una finestra di terminale, e digitate:

setkbmap it -variant colemak

per usare la disposizione Colemak basata sulla tastiera italiana di base di Linux.

La "scappatoia" di cui parlavo prima, può essere l'uso di uno script di questo tipo:

if [ $# -ne 1 ]
then
    echo "Expected argument \"standard\" or \"colemak\""
    exit
fi

if [ "$1" = "standard" ]
then
    setxkbmap it

elif [ "$1" = "colemak" ]
then
    setxkbmap it -variant colemak
else
    echo "Expected argument \"standard\" or \"colemak\""
fi

Per impostare la disposizione Colemak come predefinita, dovrete aprire il file "/etc/default/keyboard" e impostare la variabile XKBVARIANT al valore "colemak".
Ecco qui un esempio:

Prima:

# KEYBOARD CONFIGURATION FILE

# Consult the keyboard(5) manual page.

XKBMODEL="pc105"
XKBLAYOUT="it"
XKBVARIANT=""
XKBOPTIONS=""

BACKSPACE="guess"

Dopo:

# KEYBOARD CONFIGURATION FILE

# Consult the keyboard(5) manual page.

XKBMODEL="pc105"
XKBLAYOUT="it"
XKBVARIANT="colemak"
XKBOPTIONS=""

BACKSPACE="guess"

al prossimo avvio, utilizzerete Colemak.

Personalmente, utilizzo la Colemak da fine Novembre 2015, ad oggi posso dirvi che mi trovo bene, seppur ancora non mi sia abituato del tutto.
C'è effettivamente minor movimento delle dita, tuttavia non so se questo in automatico significhi "miglior salute".
In ogni caso, questo è tutto per questo mese, spero di avervi aperto le porte al mondo delle disposizioni.

Saluti da Antonio Daniele.
Ci si vede il mese prossimo.

Torna in cima, Condividi, Guarda i commenti o Commenta tu stesso!