Quando ho iniziato a lavorare in Microsoft alcuni anni fa, una delle prime cose che ho fatto è stata creare un file OneNote per tenere traccia di tutto. Ho dovuto conoscere le procedure interne e gli strumenti, i partner, i progetti e tante altre cose. La natura gerarchica dei file di OneNote ha reso facile organizzare queste informazioni vagamente correlate in un insieme ben organizzato di documentazione a cui potrei fare rapidamente riferimento. Quando ho lasciato Microsoft per accettare un lavoro in Red Hat, volevo continuare a utilizzare il concetto, ma con uno strumento open source. Ho trovato subito CherryTree, un'applicazione per prendere appunti con licenza GPLv3.
In Linux, tutto è un file; in CherryTree, tutto è un "nodo". I nodi possono essere di testo normale, RTF o avere l'evidenziazione automatica della sintassi per una varietà di linguaggi di programmazione e markup comuni. Ogni nodo può avere nodi figlio, consentendoti di organizzare facilmente le tue informazioni. I nodi figlio possono avere i propri figli con proprietà indipendenti.
Nel mio ruolo di program manager Fedora, conduco diversi meeting IRC. Il mio file Fedora CherryTree ha un nodo per le riunioni di rilascio. Ogni versione è un figlio sotto quello, con un nodo figlio successivo per la beta e le riunioni finali. Sotto quei nodi figlio, ho nodi per ogni iterazione della riunione. Ho un modello per i comandi IRC in uno dei nodi di livello superiore, che copio nei nodi figli con i dettagli appropriati compilati. In questo modo ho a disposizione le note per ogni riunione senza dover utilizzare il controllo della versione.
Il modello nodo per istanza funziona bene per me quando ho note lunghe o ho bisogno di apportare modifiche allo script per riunione. D'altra parte, utilizzerò un singolo nodo in esecuzione per riunioni di contenuto breve. Quando ho il mio faccia a faccia settimanale con il mio manager, prendo appunti in un unico nodo, utilizzando le intestazioni con la data per separare le riunioni.
CherryTree può anche essere un pratico quaderno di laboratorio. Poiché è possibile eseguire blocchi di codice, può essere un modo utile per condividere la documentazione con i collaboratori. Puoi includere la documentazione, inclusi testo, immagini e tabelle, insieme al codice in un unico file. I file possono essere SQLite (che è più veloce per l'avvio e più lento per la ricerca) o XML (che è più lento per l'avvio e più veloce per la ricerca).
Sebbene CherryTree possa essere utilizzato per condividere informazioni, non dovrebbe essere utilizzato per la collaborazione dal vivo. CherryTree può rilevare quando il file è stato modificato sul disco e ricaricare il contenuto, ma non è progettato per l'uso simultaneo. Allo stesso modo, non ha un meccanismo di archiviazione cloud integrato:dovrai salvare il file in una directory sincronizzata automaticamente o utilizzare manualmente i comandi Git per archiviare il file in entrata e in uscita da un repository.
CherryTree è attivamente sviluppato su GitHub. Una delle aree chiave di sviluppo in questo momento è il passaggio da Python 2.7 a C++. Se stai cercando un notebook multipiattaforma facile da usare, CherryTree è una buona scelta. Ora devo iniziare a usarlo per i miei articoli su Opensource.com.