Skip to content

Ulysses e WordPress – Storie di troubleshooting

L’odissea è terminata.

Pensavate di risparmiarvela, la battutona, eh?

Davvero ci avevate sperato?

Allora non mi conoscete.

Riferimenti vetero scolastici a parte, ci siamo.

Ultima (sperabilmente) puntata della saga di Ulysses, l’editor di testo Markdown migliore sul mercato che non voleva farsi utilizzare da me.

Riassunto delle puntate precedenti:
dopo una breve ma travolgente passione ai tempi della sua versione III su Mac, avevo accantonato Ulysses per un paio di motivi.
L’impossibilità di pubblicare direttamente su WordPress e la mancanza di una versione per iOS mi avevano spinto tra le braccia di ByWord, che reputo a tutt’oggi il miglio editor di testi Markdown per piattaforme Apple se non necessitate di particolare complessità di gestione.

Con il tempo le due lacune sono state elegantemente ed efficacemente colmate, riaccendendo così la mia curiosità per l’applicazione di The Soulmen.

A costo di sentirmi dare del matto (cosa regolarmente avvenuta, peraltro) investo anche nella versione iOS e mi ritrovo con un sistema di scrittura ancora migliore di quanto lo ricordassi.
Qui infatti emerge la prima differenza sostanziale con Byword (che – se non l’aveste capito – in virtù di quanto scritto sopra fungerà da pietra di paragone più o meno esplicita durante tutto il racconto).

Byword è splendidamente minimalista, con ciò intendendo che ha tutte le funzioni che si possono chiedere ad un editor e nulla in sovrappiù. Potremmo definirlo come appartenente a quella categoria di applicazioni con un focus ben preciso, ma che non sacrificano funzioni o libertà di movimento dell’utente in nome di scelte progettuali esplicite a monte (come invece fa – a mio avviso e per esempio – iAWriter).

Ulysses è diverso.
Organizzazione, flessibilità, personalizzazione.
Che si debba gestire un blog leggero come questo o un romanzo da 1000 pagine e 50 capitoli, l’applicazione mastica tutto in scioltezza.

Tutta questa – lunga, lo ammetto – divagazione iniziale per rendere l’idea di quanto fossi curioso e felice di poter usare finalmente il programma di The Soulmen come base operativa unica (Drafts escluso. Io adoro Drafts, credo di averlo detto qualche volta di sfuggita).

Installo dunque la suite su tutti e tre i dispositivi, configuro il tutto a piacere, attivo la sincronizzazione iCloud e scribacchio due righe tanto per riscaldarmi e fare conoscenza con l’ambiente di lavoro.

Il passo successivo consiste – ovviamente – nel fornire i dati necessari alla pubblicazione su WP self-hosted: nome utente, password, url del sito.
Roba banale, campi compilati in un soffio, tanto da non rendermi nemmeno conto che l’url fornito d’esempio comincia con https.

Test di autenticazione, qualche secondo (un po’ tanti…ma insomma, è il primo accesso) e… Timeout di connessione.
Alternative invitanti: Richiedi assistenza o Annulla.

L’assistenza è per le signorine e per i casi in cui serve il supporto aereo, quindi annullo e riprovo.

Qui noto l’url sicuro richiesto, mi domando per circa 5 secondi se quello strano requisito non sia per caso necessario, e decido di approfondire.
In nessuno degli articoli che trovo online si fa menzione della necessità di un https, quindi deduco (non essendo così automatico il possederlo, nè scopro particolarmente facile o economico) non sia altro che una possibilità.

Decido di sorvolare, e imputo il timeout alle meravigliose tre tacche scarse in 3G che Fastweb – tramite rete 3 – mi offre in campagna. 1

Durante un passaggio radente a casa, forte del Wi-Fi, ritento l’operazione.
Con il medesimo, sconfortante risultato.

Ricorro quindi al metodo di verifica proprio di chi ha a stento il pollice opponibile: copio e incollo il post sul fido ByWord, e procedo spavaldamente alla pubblicazione.

Timeout di connessione.
Ooops.

Una breve verifica con Safari mi conferma che il blog è irraggiungibile, perché “Il server ha smesso di rispondere”.
Eh, beh, ma allora è un problema del server. Facile.
Ulteriore controllo su TopHost, da cui ovviamente risulta che…è tutto a posto.

Perplesso, rimando tutto a domani. (cit.)

Dopo circa 12 ore, ulteriori indagini (e caffè), il sito sembra essere regolarmente raggiungibile, quindi procedo ad un nuovo tentativo di pubblicazione.
Questa volta, niente timeout, quindi tutt’appos…No. Check, sito irraggiungibile per circa dieci minuti, trascorsi i quali tutto ritorna a posto; del post, però, non c’è la minima traccia.

A questo punto, si sfora nella questione di principio.2

Il problema viene comunicato contemporaneamente al servizio di hosting e agli sviluppatori.
TopHost, pur con qualche inceppamento iniziale, mette in moto la macchina dell’analisi, che però porta a risultati assai scarsi. Complice un difetto di comunicazione (non mi viene minimamente spiegato quali verifiche vengano effettuate, e pare che le mie indicazioni riguardo alle circostanze in cui si verifica il blocco siano considerate poco), tutto ciò che ottengo è una serie di ticket chiusi senza che nulla sia cambiato.
The Soulmen, da parte propria, si dimostra molto disponibile ma abile solo a suggerire una serie di domande da “girare” all’host. Decisamente scomodo e – almeno nell’immediato – poco fruttuoso per i motivi di cui sopra.

Si va avanti così per un bel po’, finché la questione viene presa di petto da TopHost (suppongo anche in seguito ad una mia moderata rimostranza) e si comincia ad intuire l’origine del problema.

Spunta fuori che il server viene paralizzato in seguito all’intervento del “sistema anti hacking”: vengono effettuati “ripetuti richiami ravvicinati al file xmlrpc.php”, comportamento che il sistema interpreta come anomalo e sintomo di un attacco.
Riferisco agli sviluppatori, ed effettivamente mi viene comunicato che Ulysses effettua parecchie chiamate per recuperare dati ed impostazioni dal server: viene anche suggerito di chiedere a TopHost una “deroga” al sistema per impedire che questo venga letto come un comportamento ostile.

Inutile dire che non è possibile.

Ottengo però un “allentamento” dei suddetti parametri, che portano la tolleranza a 20 richiami in 5 minuti.

Tanto basta.

Ulysses ora funziona regolarmente, dopo qualche post ancora non si sono verificati problemi, e la situazione sembra essersi stabilizzata.

Riassumendo: ci sono innumerevoli variabili invisibili che determinano il funzionamento dei sistemi complessi, soprattutto attraverso le reciproche interagenze.
Internet, anche se un sacco di gente si sforza di convincerci del contrario, è un sistema complesso. Con un sacco di interagenze.
Non sappiamo (non so) perché ByWord non effettui così tante chiamate da irritare il server mentre Ulysses (ed altri, a quanto pare) ne hanno bisogno.
Sappiamo che non è possibile, per uno sviluppatore come per un hosting, effettuare un testing esaustivo delle sostanzialemente infinite combinazioni software che è possibile usare per produrre e distribuire il medesimo contenuto.
Sistemi operativi diversi, applicazioni diverse, connessioni e servizi di host diversi, impostazioni diverse all’interno dei medesimi servizi e software che – combinati tra loro – portano ad esiti non prevedibili (non sempre, non del tutto).

L’unica certezza che abbiamo è che un buon processo di troubleshooting sulla nostra macchina, con un software che conosciamo a menadito (magari ne siamo anche gli autori) ed in un ambiente controllato di cui tutto o quasi ci è noto può essere un affare relativamente semplice. 3

Ma in qualunque altro caso – o per meglio dire combinazione di casi – l’unico metodo valido di troubleshooting è la collaborazione tra le parti interessate.
Fornire ogni dato di cui si è in possesso, farlo circolare, al limite anche formulare ipotesi, tutto contribuisce a chiarire il maggior numero possibile di aspetti del problema.

Perché quando la parte tecnologica fallisce, tutto ciò che resta sono le risorse umane.

Stay Tuned,
Mr.Frost


  1. Perché sì, la cosa va avanti da Agosto. 
  2. (Da leggersi con la voce di Villaggio quando fa il narratore di Fantozzi) Era quella una peculiare e pericolosissima condizione che lo assaliva ogniqualvolta si trovava di fronte ad un’apparente cazzata, la quale però assumeva un grado di inspiegabilità pari alle linee di Nazca. Consisteva, più o meno, nel maturare una velata e quasi impercettibile ossessione che svaniva solo con la soluzione del problema. Il processo poteva richiedere: attacchi di panico, furia omicida, isolamento dal mondo, visioni mistiche. Non necessariamente in quest’ordine. 
  3. Attenzione: può. Spesso e volentieri, non è semplice neppure in queste condizioni ideali. Per questo il debugging non è una scienza esatta.