Visto che ogni tanto qualche parente o amico chiede consigli su Parigi, me li segno da qualche parte così non devo ripartire da zero ogni volta.

Paris 2013

Aereo e aeroporti

Inevitabilmente la mia esperienza in materia è limitata alla zona tra Milano e Verona:

  • Verona: c’è un volo AirFrance ma è sconsigliato. Piccolo, se non ricordo male atterra a CDG terminal 2G (aka “in culo ai lupi”), costoso.
  • Bergamo: Ryanair ha orari assurdi. Se essere in aeroporto alle 5 non è un problema, è una buona scelta, specialmente se volete sfruttare il primo giorno. Non ho mai volato a Paris Beauvais, credo ci voglia un bel po’ di tempo per arrivare in città e non ho idea di come sia servito dai mezzi.
  • Linate: personalmente viaggio spesso con Easyjet. Ci sono voli intorno all’ora di pranzo, e rientro in prima serata.
  • Malpensa: se non fosse a 160 km di distanza sarebbe anche un’opzione valida.

A differenza di altre città europee, atterrare a Charles de Gaulles (CDG) o Orly (ORY) non fa molta differenza, sono entrambi ben serviti dai mezzi e relativamente vicini alla città.

Mezzi di trasporto

Siete scesi dall’aereo e dovete raggiungere la città. Come fare?

  • A CDG seguite le indicazioni per il treno RER B (si trova sotto il terminal 2). Potete acquistare il biglietto per la città prima di accedere alla stazione TGV. Châtelet Les Halles è una buona stazione di scambio per passare alla metropolitana.
    Se siete diretti in zona Opéra, il RoissyBus è un’ottima soluzione: niente bisogno di spostare le valigie da un mezzo all’altro, si può acquistare il biglietto online o ai distributori in aeroporto, tenete però conto dell’orario e del potenziale traffico.
  • A Orly potete prendere il trenino sopraelevato chiamato Orlyval (si prende all’interno, non uscite dove ci sono i bus anche se l’accesso è lì vicino). Alla stazione Antony prendete il treno RER B in direzione CDG e scendete dove è più comodo (come sopra, Châtelet Les Halles è probabilmente la scelta migliore per passare alla metro).

Discorso biglietti: per entrare in città servono biglietti da 5 zone (sono in comune tra treno e metro), per viaggiare in città bastano quelli da 3 zone. All’entrata di ogni metropolitana ci sono i terminali per acquistare i biglietti, cercate sempre di acquistare i carnet da più biglietti (più convenienti), non i biglietti singoli.

Un’altra opzione, specialmente se avete in programma di usare molto i mezzi, è quella di acquistare i biglietti Paris Visit, anche online (ad esempio li ho acquistati su questo sito). Fate i vostri conti in base al programma.

Consigli in ordine sparso:

  • Ci sono mappe del metro in tutte le stazioni. Prima di passare i tornelli è buona cosa sapere quale linea dovete prendere ma soprattutto in quale direzione volete andare (il capolinea). Plus: tenete il PDF dei mezzi sul telefono.
  • Quando la stazione indica la presenza di altre linee, non significa che scendete dal treno e in due passi siete all’altra linea. Se va bene camminate qualche minuto, se va male dovete trottare per 15 minuti su tapis roulant e scale. A proposito di tapis roulant e scale mobili: imparate a tenere la destra! I francesi sono incazzosi, hanno fretta, quasi peggio dei milanesi.
  • Se dovete viaggiare con un trolley gigantesco, il cambio treno-treno (es. RER A – RER B) è solitamente più agevole di quello treno-metro.

Musei

Il mio consiglio personale, a meno che abbiate intenzione di visitare un solo museo, è quello di acquistare il Museum Pass. A differenza del Paris Visit, è praticamente sempre più conveniente rispetto ai biglietti singoli.

Cosa visitare? A voi la scelta:

  • Se arrivate nel tardo pomeriggio potete fare un salto a Montmartre e alla Tour Eiffel. Cercate di essere in zona Trocadéro allo scoccare dell’ora per vedere lo spettacolo di luci.
  • Il Louvre e Versailles sono i musei che aprono per primi (alle 9). Se andate al Louvre non usate l’entrata dalla metropolitana (dove c’è il Carousel di negozi), ma uscite nel piazzale con la piramide, di solito c’è meno coda (ma sembra il contrario durante la giornata).
    Una buona idea è quella di spezzare la visita in due – la prima volta ai piani alti (andate direttamente alla galleria degli italiani per schivare la ressa, e non perdete la Galerie d’Apollon lì vicino), la seconda volta ai piani bassi (sculture). A Versailles ricordate che i musei esterni (Trianon e Petit Trianon) aprono solo a mezzogiorno, e se decidete di prendere il “trenino” tanto vale fare il biglietto (direttamente dall’autista) al palazzo.
  • Quando uscite dal Louvre fermatevi al Musée de l’Orangerie (è nei giardini dei Tuileries appena fuori). Sempre in zona programmate almeno un paio d’ore al Muséè d’Orsay (il mio preferito).
  • Dopo aver visitato Notre-Dame fermatevi alla Saint-Chapelle. Già che ci siete potete fermarvi anche alla Conciergerie (la prigione a fianco), ma non è all’altezza della cappella.
  • Se siete appassionati di arte moderna, fate un salto al Centro Georges Pompidou (con il museum pass si accede solo al quarto e quinto piano) e alla casa di Picasso. Non essendo un appassionato del genere, non li ho trovati particolarmente entusiasmanti.

4 giorni sono l’ideale per riuscire a infilare tutte le visite nel programma.

Ristoranti

Parigi è cara, mettetevi il cuore in pace. Per colazione tenete conto che spesso i bar aprono tardi (dopo le 7.30), e quasi mai sono aperti la domenica.

Il consiglio è di cercare un bar dove hanno il menu petit dejeuner: con 9/10 € di solito vi danno una bevanda calda (caffé latte, tè o cioccolata), croissant, baguette con burro/marmellata, succo d’arancia. Un cappuccino può tranquillamente costare 5/6 €, meglio berlo quando tornate a casa. In zona Opéra conosco il Café de l’Opéra, oppure poco più in là ce n’è uno all’incrocio tra Rue la Fayette e Rue du Faubourg Montmartre (di fronte a “Au Général La fayette”). L’alternativa è cercare una pasticceria (boulangerie) che faccia anche il caffè (sembrano essere aumentate di recente).

Un ristorante caratteristico a prezzo molto economico per gli standard parigini è Le Bouillon Chartier: è sempre aperto (dalle 11.30 fino alle 24), e molto frequentato. In zona Grand Boulevards c’è solo l’imbarazzo della scelta per quanto riguarda i ristoranti. Evitate la pizza, a meno che non riusciate a vederne una ordinata da altri clienti prima di entrare nel ristorante 😉


Scrivevo giusto ieri

Vivaldi è un progetto interessante e coraggioso, per cui sono davvero curioso di vedere se avrà successo, al contrario di Brave (per quanto rispetto abbia per Brendan): non credo che il loro modello di business – sostituire pubblicità brutte, sporche e cattive con le proprie – sia eticamente apprezzabile. Personalmente ho anche qualche dubbio sulla legalità dell’approccio – la tua pubblicità viene visualizzata tra i contenuti del mio sito, e non è la pubblicità che io ho scelto di mostrare, mi stai privando di un ritorno economico e stai guadagnando in qualche modo dalla visualizzazione dei miei contenuti  – ma visto che nessuno ha ancora fatto causa ad AdBlock Plus, immagino non sia un problema così facile da definire.

E leggo oggi:

A group of the biggest US newspaper publishers — including Dow Jones, The Washington Post, and The New York Times Co. — have cosigned a cease and desist letter (read it in full below) sent to the former Mozilla CEO’s new browser company.

Mi chiedo che bisogno ci fosse di buttare in mezzo Mozilla nel titolo, ma tant’è.


Vivaldi (il browser)

7 aprile 2016

Visto che tanti ne parlano in questi giorni, stamattina ho deciso di dare una rapida occhiata a Vivaldi sul mio Mac.

Primo momento di smarrimento: per aprire il .dmg è obbligatorio accettare un accordo di licenza (EULA). Francamente non ricordo l’ultima volta che sia successo per un browser. Firefox, ad esempio, ha about:rights, ma si tratta di una barra informativa visualizzata al primo avvio e non impedisce all’utente di utilizzare il software.

Siccome l’EULA non è lunghissima, decido di leggerla. Ed ecco il secondo momento di smarrimento:

Without limiting the foregoing, you are neither allowed to (a) adapt, alter, translate, embed into any other product or otherwise create derivative works of, or otherwise modify the Software ; (b) separate the component programs of the Software for use on different computers; (c) reverse engineer, decompile, disassemble or otherwise attempt to derive the source code for the Software, except as permitted by applicable law; or (d) remove, alter or obscure any proprietary notices on the Software, or the applicable documentation therefore.

Uhm, OK. Poco sopra dicono che il browser è Open Source (EDIT: vedi commenti, in realtà dicono che Vivaldi utilizza codice Open Source di altri progetti, ma NON è Open Source), andiamo a cercare il codice: niente GitHub o link a VCS (male), c’è un link per scaricare un malloppo di quasi 600 MB, e non è nemmeno la versione che ho installato (1.0.303 vs 1.0.435).

Poi subentra la deformazione professionale: qualche stringa in inglese qua e là nelle preferenze, inconsistenze e piccoli errori (es. “Cerca Bing” invece di “Cerca con/in Bing” nella barra di ricerca), qualche decisione non condivisibile (“trasferimenti”, “dati riservati”), ma tutto sommato al di sopra delle mie aspettative per un browser appena nato.

Ho anche provato a cercare i file della localizzazione all’interno del sorgente (superficialmente), ma non sono riuscito a trovare nulla.

VivaldiLa prima impressione? La quantità di opzioni è devastante. Ricorda molto i primi tempi di Firefox, dove tutto era personalizzabile, perfino all’eccesso.

Vivaldi è un progetto interessante e coraggioso, per cui sono davvero curioso di vedere se avrà successo, al contrario di Brave (per quanto rispetto abbia per Brendan): non credo che il loro modello di business – sostituire pubblicità brutte, sporche e cattive con le proprie – sia eticamente apprezzabile. Personalmente ho anche qualche dubbio sulla legalità dell’approccio – la tua pubblicità viene visualizzata tra i contenuti del mio sito, e non è la pubblicità che io ho scelto di mostrare, mi stai privando di un ritorno economico e stai guadagnando in qualche modo dalla visualizzazione dei miei contenuti  – ma visto che nessuno ha ancora fatto causa ad AdBlock Plus, immagino non sia un problema così facile da definire.


Sono passati quasi 2 anni dal mio primo tentativo di corsa all’aperto (5 km @ 8:00/km, cinque pause a giudicare dal tracciato del cardio) e, contrariamente a ogni mia previsione, continuo a correre e soprattutto continua a piacermi farlo.

Visto il tipo di lavoro che faccio (sedentario) devo fare attività fisica, e la corsa rappresenta la soluzione ideale in termini di tempi (1-2 ore al massimo) e forma (esci all’aperto, staccati dalla tecnologia, libera la testa).

Dal mio ultimo post sull’argomento sono anche riuscito a togliermi qualche soddisfazione.

Bacheca

Mi sono reso conto di aver raggiunto un punto di stasi a inizio 2016, in cui faticavo a raggiungere 10 km di corsa, per cui ho iniziato a seguire un piano di allenamento su Strava per la mezza maratona per darmi uno stimolo. L’obiettivo è di correre la distanza sotto le 2 ore, poi magari penserò anche a iscrivermi a qualche gara (se riesco a decifrare il delirio tutto italiano su certificati agonistici, iscrizione ad associazioni sportive, ecc.).  Il record attuale in allenamento è 2:02:06.

Ho anche avuto la fortuna di correre in giro per il mondo durante le trasferte di lavoro:

  • Portland: mi sono limitato a correre sul lungo fiume, freddo becco in dicembre. Voto: 6,5
  • Bucarest: ero abbastanza terrorizzato dalle letture sui cani randagi, non ne ho praticamente visti. Voto: 6 (guidano come pazzi, marciapiedi non sempre percorribili)
  • Vilnius: città molto bella, verde, una marea di piste ciclabili, bellissimo percorso lungo il fiume per correre immersi nella natura. Voto: 7
  • Whistler: ho il rimpianto di non aver esplorato più sentieri e percorsi. Ambiente assolutamente favoloso. Voto: 7,5
  • Corvara (Trentino, vacanze): bella lei, peccato che o da una parte o dall’altra la salita assassina te la becchi. Voto: 7
  • Istanbul: pessima la parte Sultanahmet, dopo aver schivato pedoni e traffico in centro ti ritrovi sul lungo mare, su una strada dove passano auto a 90 km/h, con cani randagi e il marciapiede che finisce improvvisamente. Decisamente meglio Kadıköy, peccato per i branchi di cani (uno ha cercato di assaggiarmi una chiappa). Voto: 5 Sultanahmet, 7 Kadıköy.
  • Orlando: monotona. Non riesci a fare un percorso oltre i 5 km senza girare come una trottola. Nota a margine: per la prima volta ho visto l’America che vediamo in televisione, con orde di trasportini elettrici e persone enormi. Voto: 6
  • Singapore: ho “corso” 5 km solo per giustificare il fatto di essermi portato scarpe e abbigliamento. A oggi sono convinto che conti più come nuoto che corsa. Voto: 5
  • Dublino: bellissima, magari un filo meno vento, e meno clima da pinguini la prossima volta? Voto: 6,5

Ho anche fatto le mie prime ripetute. Meglio non aggiungere commenti su questo strumento del demonio 🙂


Let’s encrypt e nginx

22 dicembre 2015

Durante l’ultima workweek Mozilla a Orlando ho assistito a una breve presentazione di Let’s Encrypt da parte di Eric Rescorla (:ekr). Mi ero ripromesso di fare qualche prova al ritorno e, complice il passaggio da dedicato+debian+apache a vps+ubuntu+nginx, mi sono finalmente deciso a farlo.

Che cos’è “Let’s Encrypt”: un’autorità di certificazione indipendente e aperta che permette al proprietario di un sito web di ottenere gratuitamente dei certificati. Per ulteriori dettagli consiglio la lettura del post inaugurale del blog.

Veniamo al dunque: come ottenere un certificato per il dominio che ospita questo blog e configurare nginx per utilizzarlo.

Per prima cosa bisogna clonare il repository (non esiste ancora un pacchetto per Ubuntu):

git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt

Come spiegato nella documentazione: letsencrypt-auto è un wrapper che si occupa di installare le dipendenze e creare un ambiente virtuale per Python, e il plugin per nginx è ancora altamente sperimentale (al contrario di Apache).

Nel mio caso voglio:

  • ottenere solamente il certificato senza modificare alcuna configurazione;
  • utilizzare il webserver “standalone” per recuperare il certificato. Siccome il plugin occupa la porta 80 o la 443, potrebbe essere necessario bloccare temporaneamente il server nginx.

Questo è il contenuto del file di configurazione per evitare una linea di comando infinita (modificare l’indirizzo email)

# Use a 4096 bit RSA key instead of 2048
rsa-key-size = 4096
email = YOUREMAIL@EXAMPLE.COM

# Standalone authenticator on port 443
authenticator = standalone
standalone-supported-challenges = tls-sni-01

E questo il comando da lanciare (modificare il dominio e il percorso al file di configurazione)

./letsencrypt-auto certonly --config /root/cli.ini -d EXAMPLE.COM

La prima volta verrà chiesto di accettare le condizioni di servizio. Dopo pochi istanti il certificato verrà salvato in una sottocartella di /etc/letsencrypt/live/.

A questo punto bisogna aggiornare la configurazione del dominio in nginx. Personalmente ho utilizzato il generatore messo a disposizione da Mozilla, modificando

    ssl_dhparam /etc/nginx/dhparam.pem;
    ssl_certificate /etc/letsencrypt/live/www.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/www.example.com/privkey.pem;

E rimuovendo la linea ssl_session_tickets off; (non compatibile con la mia versione di nginx).

Per utilizzare questa configurazione, la prima volta bisogna generare una chiave Diffie-Hellman:

cd /etc/nginx
openssl dhparam -out dhparam.pem 2048

Se riuscite a leggere questo post, significa che non è esploso nulla.


Normalmente utilizzo Debian stable e Apache su tutte le mie VM. In questi giorni sto facendo qualche prova in locale con Ubuntu Server LTS (14.04) e NGINX, giusto per capire come funzionano le cose.

La prova è semplice: prendi una VM con risorse limitate (1 core, 2GB di RAM), installaci sopra WordPress (per la precisione un backup di questo blog), e prova a vedere come gira.

$ siege -c 100 -r 10 -b http://localvm/blog

Transactions:               2000 hits
Availability:             100.00 %
Elapsed time:               3.24 secs
Data transferred:          14.23 MB
Response time:              0.16 secs
Transaction rate:         617.28 trans/sec
Throughput:             4.39 MB/sec
Concurrency:               96.03
Successful transactions:        2000
Failed transactions:               0
Longest transaction:            0.69
Shortest transaction:           0.00

Poi mi è venuto in mente di provare a disattivare WP Super Cache.

$ siege -c 100 -r 10 -b http://localvm/blog

Transactions:               2000 hits
Availability:             100.00 %
Elapsed time:             138.59 secs
Data transferred:          14.15 MB
Response time:              6.61 secs
Transaction rate:          14.43 trans/sec
Throughput:             0.10 MB/sec
Concurrency:               95.39
Successful transactions:        2000
Failed transactions:               0
Longest transaction:           14.90
Shortest transaction:           0.00

Mentre nel primo caso il load era intorno a 0.2, nel secondo ha raggiunto piuttosto rapidamente 5. Morale della favola: utilizzate un plugin per la cache, c’è l’imbarazzo della scelta.