267 - Control de versiones y GitJournal
Como tener tus notas, incluso tu diario, hospedado en GitHub, Gitlab o en tu propio servidor, con control de versiones gracias a GitJournal
Cuando descubrí por primera vez el control de versiones me pareció una idea fantástica. Pero sobre todo, me sorprendió y me sigue sorprendiendo que esta tecnología no esté aplicada en muchas mas disciplinas. Vamos, que me parece raro que con todo lo que tiene que aportar no esté en cualquier cosa que puedas imaginar, y se circunscriba casi por completo al mundo de la informática. Lo cierto, es que podría aplicarse a cualquier documento sin formato, o lo que vulgarmente denominamos texto plano. Sea como fuere, lo cierto es que dentro del amplio uso que yo le doy a esto de control de versiones, me faltaba una pata. Me faltaba meter a mi móvil Android dentro de la ecuación. Y digo me faltaba, porque ya está solucionado con GitJournal.
Pero no solo de GitJournal, te quiero hablar en este episodio del podcast, también quiero hacer mención al último directo, en el que además de otras cuestiones te hablo sobre, como llevar listas todo con Vim.
Control de versiones y GitJournal
Sobre el control de versiones
Como te decía en la introducción, cuando descubrí esto del control de versiones, me quedé ojiplático. ¿Como podía ser que existiera el control de versiones y yo no tuviera conocimiento?. Pero voy mas allá, ¿porque no se utiliza para todo?. Eso es lo que me planteé en ese momento.
Tan es así, como te lo estoy contando, que por aquel entonces, se lo quería aplicar a cualquier cosa que pasara entre mis manos. Gracias a Dios, poco a poco, esta fiebre pasó a mejor vida, aunque de vez en cuando me da la neurosis de nuevo, ¿que le vamos a hacer?.
Desde luego que si no conoces el control de versiones, o simplemente piensas que no es para ti, te recomiendo que le des una oportunidad. No es necesario que profundices en exceso, solamente lo que necesites.
Markdown y el control de versiones
Por supuesto, que el problema que me podrías plantear es ¿como trabajo con mis documentos ofimáticos?, ¿como trabajo con mis documentos de LibreOffice o Microsoft Word?. Pues no puedes. Para utilizar un control de versiones como Git, tienes que hacerlo con documentos sin formato. Y para esto tienes al todopoderoso Markdown.
Y aquí viene mi siguiente sugerencia si no conoces Markdown, si no utilizas Markdown, o si piensas que Markdown no es para ti, dale una oportunidad al Markdown.
De verdad, el Markdown es un lenguaje de marcado ligero, muy sencilla de aprender, pero que te va a permitir ser infinitamente mas productivo, y conseguir unos resultados, sinceramente espectaculares. Sinceramente, mejor de lo que puedas conseguir tanto con Microsoft Word, como con LibreOffice, como con cualquier otro editor ofimático.
También es posible que me digas, que tanto Microsoft Word como LibreOffice, ya cuentan con un control de versiones integrado. Sin embargo, sigues teniendo el mismo problema, porque ¿que sucedería si cualquiera de estas dos suites ofimáticas decide abandonar su formato? Te has quedado sin documento.
Con Markdown no dependes de ningún fabricante, ni desarrollador, ni nada. Solo dependes de ti. Un documento en markdown es para toda la vida. Y Markdown con git se potencian.
GitJournal
Uno de los problemas que me he encontrado hasta el momento es la dificultad de tomar notas en mi ordenador y pasarlas al móvil. Si, ciertamente existen muchas herramientas, para hacerlo, pero algunas se apoyan en servicios de terceros, otras, necesitan de sincronización externa, otras no permiten el control de versiones…
¿Que te parecería una herramienta que te permitiera tomar notas, con control de versiones, donde pudieras elegir como sincronizar, y que la sincronización fuera fácil?. Pues todo esto que te comento, lo tienes y lo has tenido siempre al alcance de tus manos con Git, solo faltaba la sincronización con el móvil, sincronización que te proporciona GitJournal.
GitJorunal, es una herramienta para tomar notas en Markdown con tu móvil, integrado con Git. Pero además, dado que utiliza ssh, esta herramientas puede trabajar con cualquier repositorio, ya sea que esté alojado en GitLab, GitHub, Gitea o en tu propio servidor. Con lo que no solo puedes tomar notas de forma sencilla, además lo puedes gestionar con tu sistema de control de versiones, y lo sincronizas de forma fácil, ¿que mas se puede pedir?.
Entre otras características, GitJournal tiene las siguientes,
- Te permite varios modos para mostrar las notas que tienes guardadas
- Puedes elegir diferentes editores para modificar tus notas
- Es posible enlazar unas notas con otras utilizando la misma sintaxis que en la Wiki. Este punto a mi no me termina de convencer porque me parece mezclar churras con merinas, pero, para gustos los colores.
- Utiliza la variante de Markdown de GitHub.
¿Que es lo que no tiene GitJournal por el momento?. Actualmente no tiene cifrado. Sin embargo, esto es algo que no me preocupa demasiado, porque al fin y al cabo, prácticamente todo lo que hago es de dominio público.
vim-todo-lists
La otra de las herramientas sobre las que te quería hablar es vim-todo-lists. Un complemento para trabajar con listas todo en Vim. Esto me surgió recientemente en el último directo. La cuestión era plasmar un guión de lo que iba a hacer durante el directo para que todo el mundo pudiera seguir de forma sencilla lo que estábamos haciendo. Si bien el complemento fue todo un éxito, la mano ejecutora (la mía), no lo fue tanto, así que una de cal y otra de arena.
Este complemento de Vim, tiene algunas características que lo hacen realmente interesante,
- Permite diferentes niveles, llamando padre al nivel inmediato superior.
- Cuando cambias el estado del nivel padre cambia el estado de todos sus hijos.
- Si todos los hijos son marcados como completados el padre es marcado como completado
- Si el padre es marcado como completado y uno de los hijos se marca como no completado el padre se marca como no completado
- Al marcar un elemento completado este se pone el último en su nivel de jerarquía
Aunque se trata de un complemento realmente sencillo, y cumple a la perfección su cometido, todavía tiene algunos detalles que es posible personalizar y modificar para mejorar y adaptar tu experiencia. Por ejemplo, puedes insertar la fecha de forma automática, por ponerte un ejemplo.
Sinceramente, espero que te haya gustado este nuevo episodio del podcast. Si puedes, te agradecería una valoración en iVoox y/o en Apple Podcast.
Más información
Imagen de portada de Bruce Hong en Unsplash