El curso de programación de Ubuntu Touch es un proyecto que empecé en el verano de 2016. El objetivo era generar documentación actualizada que permitiera programar aplicaciones para esta plataforma. Con independencia del anuncio de Canonical, el curso ha seguido con cierta periodicidad. El tiempo es limitado y necesito ayuda si quiero mantener un ritmo mensual de entregas. Si estás interesado en colaborar, puedes continuar leyendo.

El tiempo dedicado a cada entrega

Cada entrega cuesta aproximadamente 12 horas desde que inicio el estudio de las materias hasta que aparece publicada. Si a este tiempo le sumamos el tiempo dedicado a las traducciones, el número de horas aumenta. Por lo general, cuando trabajo en un capítulo nuevo necesito un fin de semana.

En estos momentos están ayudando varias personas con la revisión / traducción de los capítulos al inglés. No quiero olvidar la colaboración de Fulvio, que ha escrito capítulos muy interesantes que han aumentado la calidad del curso al tratar sobre bases de datos y gráficas con QML.

Tareas que se realizan en el curso

Las tareas siguen el siguiente flujo de trabajo:

  • Índice del capítulo con los conceptos que se van a desarrollar.
  • Programación del código de cada bloque y creación de los commits por ejercicio.
  • Realizar capturas de pantalla para mostrar los pasos.
  • Revisar el documento tanto en gramática como en ortografía.
  • Maquetar el documento en Markdown.
  • Publicar el capítulo y el código en GitHub.
  • Publicar el capítulo en GitBook.
  • Anunciar la nueva entrega en las redes sociales.

Después, por cada idioma se repite parte del proceso. En estos momentos intento que salgan en paralelo las entregas en español e inglés.

Una de las salas de la UbuCon

Una de las salas de la UbuCon

Tareas en las que se puede colaborar

La tarea que más me consume el tiempo es la traducción. No es algo excesivamente complejo pero si que requiere dedicar un par de horas en el proceso. En el curso utilizo Markdown. De forma resumida, Markdown es una especie de lenguaje HTML que utiliza etiquetas simplificadas. GitBook lo utiliza para obtener un archivo HTML, PDF, ePUB o Mobi a partir de un archivo de texto plano.

El código fuente del libro está publicado en mi cuenta de GitHub. Para colaborar con una traducción podéis clonar el repositorio y crear un issue en el proyecto del curso. Con el issue se puede conocer si una persona tiene asignada una traducción y de esa forma evitar duplicar los esfuerzos. Los capítulos son largos y no hace mucha gracia repetir un trabajo que ya se está haciendo.

Colaborar

Octocat (GitHub)

Una vez se ha traducido el capítulo se puede hacer un Merge request solicitando la integración de los cambios en la rama de trabajo. Me aparecerá una notificación y si todo es correcto, se hará la integración. GitBook detectará el cambio y generará a los pocos minutos la actualización de los documentos del curso.

La forma de colaborar no es fija y se puede modificar para que la colaboración sea más eficiente. Si que me gustaría mantener GitBook como herramienta de trabajo ya que es de código abierto y tengo toda la infraestructura del curso configurada. En otros proyectos se utilizan archivos .pot para las traducciones. Para cadenas de texto cortas, los archivos .pot son una herramienta muy útil. Para documentos largos no lo veo práctico.

Conclusiones

En el curso hay varios capítulos en paralelo que tratan las aplicaciones nativas de Ubuntu Touch y las nativas de escritorio. Para escribir una nueva entrega necesito tiempo, principalmente si tengo que estudiar conceptos nuevos y hacer pruebas de concepto. Si conoces varios idiomas y quieres participar en el curso, no dudes en ponerte en contacto conmigo. Ya sea por InnerZaurus o bien usando Telegram (usuario @mimecar).

Aunque la ayuda principal viene por el lado de las traducciones, también es posible escribir nuevos capítulos como hace Fulvio. Antes de empezar a trabajar en cualquiera de las dos formas conviene avisarme. De esa forma se puede organizar mejor el curso y evitar duplicar esfuerzos.

Markdown no es complicado de usar. Podéis ver la estructura básica en el repositorio del curso. También es posible consultar las presentaciones de las charlas que realizaré en la UbuCon próximamente. Después del evento publicaré las presentaciones tanto en español como en inglés.

0 comentarios

Dejar un comentario

¿Quieres unirte a la conversación?
Siéntete libre de contribuir

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.