Python, virtual environment e nuovi strumenti

Sto facendo un po’ di ordine tra i miei vecchi progetti in Python, non per una vera necessità, ma essenzialmente a scopo (auto) formativo, per rivedere ed aggiornare gli strumenti di sviluppo.

Il primo obiettivo è passare a Python 3. Oramai, dal 1 gennaio 2020, Python 2 è definitivamente sul viale del tramonto, molti strumenti smetteranno di supportarlo, tra cui pip.

Il secondo obiettivo è fare ordine nella gestione delle librerie e adottare finalmente un sistema di virtualizzazione dell’ambiente di sviluppo, in modo da separare le librerie utilizzate in ogni progetto. Mi sto trovando bene con pipenv, che raggruppa pip e virtualenv in uno strumento comune.

pipenv

Dopo qualche lustro con Eclipse (Java è un vecchio amore che non si scorda mai) sto passando a Visual Studio Code e si fa presto a capire come mai è così diffuso anche nel mondo Linux. Sono disponibili moltissime “extensions”, tra cui anche quella per supportare i multi environment con Python e pipenv.

Per non aggiungere troppa carne al fuoco, mantengo il mio fidato Subversion. A dire il vero, sono evidenti i benefici di un “distributed” VCS come GIT per lo sviluppo di progetti open-source di portata internazionale, meno in ambito aziendale, a parte il famoso “lo usano tutti”..

 

Nuova vita, nuova tastiera..

Dopo anni con una tastierona Logitech “gommosa”, arrivata oramai a fine vita, mi sono concesso una piccola soddisfazione.

Varmilo Va88M

Varmilo Va88M

Quasi un desiderio di rinnovamento. Lascio la mia vecchia attività e voglio aggiornare i miei strumenti di lavoro.
Ho ordinato direttamente dalla Cina una testiera meccanica Varmilo VA88M, personalizzata con layout ISO italiano.
Ho scelto degli switch Cherry Mx Brown, i keycaps sono in PBT con colorazione custom e retroilluminazione light-blu. Formato TKL, senza tastierino numerico.

VA88M ISO layout italiano

VA88M ISO layout italiano

La qualità è notevole, la si percepisce appena si inizia ad usarla sul serio. Sono consapevole che avrei dovuto scegliere un layout ANSI US, più adatto ad un programmatore, ma oramai sono anni che non uso più quel layout e sinceramente mi piaceva avere un oggetto che non si trova sul mercato, se non su personalizzazione.

Con Windows 10 non ci sono problemi, tutto funziona bene, anche i tasti multimediali funzionano correttamente,  richiamabili usando Fn+F7~F12. 

Purtroppo per il firmware della Varmilo qualsiasi OS che non sia Windows è MacOS. Perciò nella mia Ubuntu 20.04LTS, il comando lsusb restituisce:

Bus 001 Device 002: ID 05ac:024f Apple, Inc. Varmilo Keyboard

Il risultato è che la tastiera viene gestita dal modulo hid_apple, il quale per default lascia in prima battuta i tasti multimediali (che uso raramente) e per ottenere i tasti F1~F12 si deve premere Fn.
La soluzione però è semplice e definitiva:

echo options hid_apple fnmode=2 | sudo tee -a /etc/modprobe.d/hid_apple.conf
sudo update-initramfs -u -k all

Sembra ci sia anche la possibilità di modificare il firmware della tastiera e disabilitare definitivamente il supporto Apple.