giovedì 2 aprile 2020

#M3 - Confrontarsi con l'open source

Questo mese ho ragionato sul concetto di Open Source, sul fatto che non riguardo solo il codice, ma che sia un concetto più ampio e riguardi innanzitutto il confronto e la condivisione fra le persone.
L'aspetto che più mi appassiona dell'Open Source è la possibilità di confronto e condivisione di idee e opinioni.
Potrei riassumere il significato che personalmente do all'Open Source con "collaborare con gli altri".


E' con questo spirito che ho portato avanti le attività di questo mese:

  • ho chiesto agli utenti di Resting cosa vorrebbero nella prossima versione maggiore,
  • ho chiesto un'opinine ai creatori di estensioni simili a Resting,
  • ho pubblicato una nuova estensione con il relativo codice,
  • ho iniziato a partecipare a un progetto con altre persone.
  •  

Cos'e' Resting

Resting è un'estensione per il browser Firefox che permette di analizzare e testare velocemente API sia HTTP che REST.


A che punto siamo

 

Cambio licenza

Resting ha cambiato licenza passando da MIT a GPLv3.
Era il mio obiettivo da un po' di tempo e con l'uscita della versione 1.0 i tempi erano maturi.
Sono conscio che sia un progetto puramente personale che non attirerà mai chissà quali attenzioni.
La mia è più un'azione etico-politica: ho creato Resting per risolvere un mio problema e per aiutare persone come me. Sto cercando di creare una piccola comunità di utenti e contribuitori intorno al progetto e vorrei che rimanesse libero e accessibile a tutti per sempre anche se un giorno non me ne dovessi più occupare io.

Resting v2.0

Come discusso nello scorso articolo ho lanciato un piccolo sondaggio di circa 5 domande per raccogliere un po' di dati con due obiettivi:
  • capire che tipo di utente usa Resting,
  • pianificare la versione 2.0 con le funzionalità più utili per chi usa lo strumento.
Mi sono dato l'obiettivo di raggiungere la partecipazione del 5% degli utenti attivi (quindi circa 70 risposte).
Francamente non so se sia una percentuale plausibile o difficilmente raggiungibile, questa è la mia prima esperienza nel mondo dei sondaggi.
Ho fatto un po' di promozione in rete:
Inoltre, cosa più importante per raggiungere il target di utenti giusto, ho integrato un piccolo popup all'interno di Resting.

Al momento, dopo circa un mese dalla pubblicazione, il sondaggio ha totalizzato 19 risposte.

Posso ritenermi già soddisfatto perchè le risposte sono arrivate quasi esclusivamente da utenti di Resting.

Forms response chart. Question title: Did you ever used Resting ?. Number of responses: 18 responses.



Già si può fare qualche considerazione sulla tipologia di utente che usa Resting.


Forms response chart. Question title: How many time do you use them ?. Number of responses: 18 responses.



Forms response chart. Question title: What do you use these tools for ?. Number of responses: 18 responses.



Sono utenti che utilizzano lo strumento per fare test funzionale alle proprie API con un utilizzo almeno settimanale.

Vediamo ora le loro richieste per Resting


Forms response chart. Question title: Where would you like improvements in Resting ?  [1 low - 3 high]. Number of responses: .

 Alcune considerazioni a riguardo:
  • Circa il 50% degli utenti considera importante avere strumenti per creare richieste HTTP più complete e per gestire e organizzare il proprio catalogo di API.
  • Il 30% degli utenti ritiene essenziale migliorare gli strumenti di analisi della risposta delle API ( attualmente un punto poco sviluppato in Resting )
Nell'aggiornamento del mese prossimo farò altre considerazioni sull'andamento del sondaggio

Confronto

Ho scritto un'email ai creatori di RESTED e RESTer, le due estensioni per Firefox simili a Resting, per chiedere un loro parere a proposito del successo dei loro progetti. In particolare ho voluto una loro opinione sulle azioni da compiere per  raggiungere una buona interazione con la propria community.
Ho ricevuto risposta dal creatore di RESTer, ecco i punti più interessanti:
  • ha creato RESTer per risolvere un proprio problema,
  • non ha fatto alcun marketing al progetto: ne ha solo parlato ad amici e conoscenti,
  • non ha idea del perché ha così tanti utenti.
Mi ha anche gentilmente allegato il grafico dei suoi utenti attivi nel tempo, dalla prima pubblicazione a oggi.
Osservando il grafico si vede una crescita quasi verticale degli utenti a inizio novembre 2017.
In quel periodo Mozilla ha rilasciato la prima versione del nuovo Firefox Quantum (la v57.0) e ha deprecato ufficialmente tutte le estensioni che si basavano sugli standard precedenti a webExtension disattivandole.
RESTer, che supportava già il nuovo standard, ha ricevuto le attenzioni dei molti utenti che utilizzavano estensioni non più funzionanti.

Al momento nessuna risposta dal creatore di RESTED, ma mai dire mai.

 

Content marketing

Un anno fa con l'aiuto di Alberto ho pubblicato su Medium una piccola serie di articoli per promuovere Resting.
Devo ammettere che questi articoli non hanno avuto granché successo: ogni articolo ha ricevuto al massimo una ventina di visualizzazione nel corso di un anno.
A sorpresa, a inizio 2020, uno di questi articoli ( Create hello world REST API ) ha iniziato ad avere un piccolo traffico di visualizzazioni (circa 20 visualizzazioni settimanali).




A inizio mese ho modificato l'articolo introducendo dei collegamenti ad altri articoli della serie per sperimentare se potessero aumentare anche le visualizzazioni di questi.

Il risultato a un mese è deludente: le persone che visitano l'articolo, non visitano gli altri articoli segnalati.

In generale le visualizzazioni non si sono mai concretizzate in download di Resting.

Numeri del mese

 

Utenti attivi (+3,5%)

Febbraio:1.383
Marzo 1.431


Download (-11,2%)

Febbraio: 537
Marzo: 482

 

Piani futuri

  • Organizzare una piccola maratona di refactoring per Resting, su consiglio di un membro del gruppo locale SoCraTeN di cui faccio parte.
  • Analizzare i dati del sondaggio e pianificare la versione 2.0 in base a quanto raccolto.

 

Cos'è exercism/java

Exercism è una piattaforma educativa per imparare/migliorare a programmare.
Propone problemi da risolvere in molti linguaggi di programmazione con la possibilità di esercitarsi da soli oppure confrontarsi con un tutor.
Fra i linguaggi supportati c'è Java (che da ora chiamerò exercism/java)

A che punto siamo 

Ho scoperto exercism/java durante l'Hacktoberfest di due anni fa facendo un paio di contributi.
Ho continuato saltuariamente a contribuire dopo l'evento e durante l'Hacktoberst dell'anno scorso ( una volta presa confidenza con il funzionamento di un progetto è un peccato non sfruttarla).

A inizio gennaio ho risposto alla chiamata di ricerca di nuovi gestori per
exercism/java: intorno a giugno uscirà la nuova versione della piattaforma e il progetto ha un gran bisogno di partecipazione.





L'obiettivo che mi sono dato per questa esperienza è collaborare con altre persone, confrontarmi con altri modi di pensare e imparare da chi gestisce un progetto strutturato e con grande partecipazione di utenti, gestori e contribuitori.
Ammetto che le cose non stanno andando come pensavo all'inizio: tutti i maintainer di lunga data del progetto exercism/java hanno lasciato nell'esatto momento in cui noi nuovi abbiamo dato disponibilità a partecipare.
Rimane molto però da imparare, soprattutto per quanto riguarda l'organizzazione dei vari team e dei progetti in sè.

Piani futuri

  • Terminare la prima versione del tool che mi sono offerto di sviluppare seguendo i requisiti del progetto.
  • Partecipare al canale slack dedicato a exercism/java confrontandomi con gli altri gestori.

 

Cos'è ts-converter

Ts-converter è una piccola estensione per browser che permette di trasformare un timestamp in una data leggibile.
E' un progetto free software con licenza GPLv3.


 

A che punto siamo 

Ts-converter nasce con due obiettivi:
  • Risolvere un mio problema: ogni giorno lavoro con un sacco di timestamp e ho bisogno di uno strumento:
    •  velocemente accessibile,
    •  disponibile offline,
    •  con una interazione semplice.
  • Iniziare a giocare con Elm su un progetto piccolo ma reale 

Piani futuri

  • Raccogliere qualche feedback (se mi volete aiutare potete scaricare l'estensione qui)
  • Pubblicare l'estensione per Chrome

 

 Puntate precedenti

 

Risorse