NeoVim e compagnia cantando

Il post di oggi è solo un modo per raccogliere le idee sul flusso di lavoro che uso per passare il tempo e per generare quanto qui pubblicato, e idealmente prosegue il discorso iniziato qui.

Gli ingredienti informatici sono sempre gli stessi:

  • un text editor
  • markdown
  • LaTeX
  • R

Sembra poco e invece sono strumenti potenti, in alcuni momenti facili da usare, in altri un po’ ostici. Ma il divertimento è trovare la soluzione per superare l’ostacolo.

Il text editor #

Personalmente propendo per Neovim e Vim online è una questione del tutto personale, altri preferiscono GNU Emacs - GNU Project, ma veramente basta un editor di testo semplice come nano, se si vuole rimanere a lavorare da terminale, o console, chiamatela come volete. È da tenere conto che Vim, EMACS e nano sono presenti su tutti i sistemi *nix.

Dunque dicevo di NeoVim, che uso con veramente pochi plugin aggiunti, per non rendere troppo complicata la faccenda, ma ognuno può personalizzare l’installazione come crede. Ricordare che più plugin si usano, maggiori le probabilità di incorrere in incompatibilità e errori.

Attualmente uso

  • autozimu/LanguageClient-neovim
  • jalvesaq/Nvim-R
  • SirVer/UltiSnips
  • honza/vim-snippets
  • vim-pandoc/vim-pandoc
  • vim-pandoc/vim-pandoc-syntax
  • vim-pandoc/vim-pandoc-after
  • iamcco/markdown-preview.nvim
  • lervag/vimtex
  • vim-airline/vim-airline
  • vim-airline/vim-airline-themes
  • chrisbra/csv.vim
  • NLKNguyen/papercolor-theme
  • neoclide/coc.nvim

Il linguaggio di scrittura #

Lavoro con solo testo. Ho abbandonato i wordprocessor, spesso dei pachidermi sproporzionati e con risultati qualche volta spiacevolmente inattesi. Per i documenti più semplici basta Markdown, al dialetto base preferisco la versione Pandoc. Markdown è un cosiddetto linguaggio markup, come html, ma più semplice e più leggibile. Pandoc è anche un grande strumento per preparare documenti in formati vari. In input abbiamo il documento in formato testo, in output può essere un pdf, un docx, un tex, un html e così via.

Per documenti molto strutturati e in cui si cerca una cura tipografica si deve andare di LaTeX. LaTeX è conosciuto soprattutto nel mondo scientifico per la capacità di scrivere bene formule matematiche anche complesse, ma trova spazio anche nelle scienze sociali e nelle discipline umanistiche.

La statistica #

Sempre per curiosità e divertimento ogni tanto mi cimento con semplici problemi di statistica e la rappresentazione grafica degli stessi. R: The R Project for Statistical Computing è il programma che mi piace usare. È open source, ha una grande comunità che sviluppa pacchetti per potenziarlo, può fare conti, ma anche presentarli bene. E infine, ma non da ultimo, si può usare NeoVim come Integrated Development Environment per R, combinando anche formule e testo.

La sezione che segue è frutto di queste elucubrazioni.

Rapportino #

Uno sguardo al mondo #

La fonte dei dati delle due tabelle che seguono è Our World in Data, che riporta qualche dato demografico in più. Se li trovaste interessanti, potremmo provare a fare qualche confronto.

La tabella è ordinata per numero di abitanti. Ho tenuto conto solo dei Paesi con più di 5000000 di abitanti.

Paese Casi/m Popolazione
World 960 7 794 798 729
China 59 1 439 323 774
India 216 1 380 004 385
United States 6 113 331 002 647
Indonesia 129 273 523 621
Pakistan 570 220 892 331
Brazil 3 777 212 559 409
Nigeria 71 206 139 587
Bangladesh NA 164 689 383
Russia 3 443 145 934 460
Mexico NA 128 932 753
Japan 137 126 476 458
Ethiopia 23 114 963 583
Philippines 221 109 581 085
Egypt 388 102 334 403
Vietnam NA 97 338 583
Democratic Republic of Congo 50 89 561 404
Turkey 2 063 84 339 067
Iran 2 145 83 992 953
Germany 2 216 83 783 945

In questa tabella l’ordinamento è per numero di decessi per milione di abitanti. Ho tenuto conto solo dei Paesi con più di 5000000 di abitanti. La mediana della nostra età e gli over 70 costituiscono un primato tra i paesi con maggior numero di decessi per milione di abitanti.

Paese Decessi Densità popolazione Età mediana over_70
Belgium 831 376 42 12,8
United Kingdom 608 273 41 12,5
Spain 580 93 46 13,8
Italy 565 206 48 16,2
Sweden 477 25 41 13,4
France 450 123 42 13,1
Netherlands 353 509 43 11,9
United States 344 36 38 9,7
Canada 212 4 41 10,8
Ecuador 211 67 28 4,5

I dati seguenti sono forniti da ECDC e, almeno per l’Italia, corrispondono a quelli comunicati dalla Protezione Civile il giorno prima.

Uno sguardo ai continenti.

Continente N casi N decessi
America 3639394 196069
Europe 2134496 181518
Asia 1481097 37627
Africa 216622 5838
Oceania 8758 131
Other 696 7

Stati europei.

Paese N casi N decessi
Russia 502436 6532
United_Kingdom 291409 41279
Spain 242707 27136
Italy 236142 34167
Germany 185674 8763
France 155561 29346
Belgium 59711 9636
Belarus 51816 293
Sweden 48288 4814
Netherlands 48251 6044
Portugal 35910 1504
Switzerland 30961 1674
Ukraine 29070 854
Poland 28201 1215
Ireland 25238 1703
Romania 21182 1369
Austria 16964 674
Armenia 14669 245
Serbia 12102 252
Denmark 12035 593

Stati extra-europei.

Paese N casi N decessi
United_States_of_America 2023347 113820
Brazil 802828 40919
India 297535 8498
Peru 214788 6109
Iran 180176 8584
Turkey 174023 4763
Chile 154092 2648
Mexico 133974 15944
Pakistan 125933 2463
Saudi_Arabia 116021 857
Canada 97519 7994
China 84216 4638
Bangladesh 78052 1049
Qatar 75071 69
South_Africa 58568 1289
Ecuador 44440 3720
Colombia 43682 1433
United_Arab_Emirates 40986 286
Egypt 39726 1377
Singapore 39387 25

Nei due grafici che seguono è posto a confronto l’andamento dei decessi in alcuni Stati europei. Nel primo sono considerati i valori assoluti, nel secondo i decessi per milione di abitanti. La prospettiva cambia radicalmente, soprattutto per la Svezia, pochi abitanti e misure di lockdown molto rilassate. Da notare anche che il picco in Italia ha preceduto quello degli altri Paesi e ci sono delle valli subito seguite da picchi dovute all’irregolarità di comunicazione de dati, per es. nei fine settimana.

La situazione italiana #

Attenzione! C’è stato un ricalcolo dei positivi in Regione Campania (-229) per cui il totale dei positivi in Italia è inferiore al numero dei nuovi positivi della sola Lombardia

Dati Protezione Civile

Per ogni regione la scala è diversa.

Questa tabella indica la variazione settimanale del totale dei positivi.

settimana min mean max
1 0 194 528
2 258 687 1 326
3 529 2 086 2 853
4 2 648 3 906 4 821
5 1 648 3 587 4 492
6 1 941 2 523 2 972
7 880 1 490 1 996
8 -20 660 1 189
9 -851 -346 256
10 -3 106 -833 -199
11 -6 939 -2 499 -836
12 -4 370 -2 276 -1 222
13 -2 377 -1 608 -1 158
14 -2 980 -1 990 -730
15 -1 474 -948 -532
16 -1 858 -1 433 -1 073

Rappresentazione grafica della tabella. Più le barre si estendono verso il basso, meglio è.

La tabella che segue riporta la variazione del numero dei decessi per settimana. Notare la colonna centrale. A seguire il grafico corrispondente.

settimana min mean max
1 2 4.86 8
2 18 47.43 133
3 97 224.00 368
4 345 559.86 793
5 662 787.71 969
6 525 704.57 837
7 431 563.14 619
8 433 521.29 602
9 260 409.00 534
10 174 300.29 474
11 165 237.14 369
12 99 181.14 262
13 50 124.29 162
14 60 85.43 117
15 53 69.86 88
16 53 64.75 79