instrucciones

A los participantes en el certamen de proyectos libres les animamos a que se pasen por nuestra oficina para darles una serie de ideas sobre cómo echar a andar el proyecto y qué hacer para que sea fácil colaborar con él. Es una lista de comprobación de diferentes puntos, que os vamos a poner a continuación por si no podéis pasaros por la OSL. Es también útil para el CUSL.

  1. Lo más importante es la licencia. Si no tiene licencia, no es libre. Una licencia es un fichero llamado LICENSE en el directorio principal y una cabecera en cada uno de los ficheros del proyecto que haga referencia a la misma. Elegir una licencia no es trivial, pero si necesitáis que os echemos una mano, no tenéis más que preguntar.
  2. Los recursos como música, imágenes, iconos y demás tienen una licencia diferente. Conviene que se agrupen en un solo directorio y se le ponga una licencia libre, normalmente Creative Commons
  3. Aunque cada uno puede usar la metodología que quiera, aconsejamos usar desarrollo basado en pruebas (en alguna versión, como desarrollo basado en comportamiento). Eso implica escribir tests unitarios para cada una de las características del sistema, sus funciones, y que la cobertura sea la máxima posible. Todos los lenguajes de programación tienen un marco de test, pero si tienes duda sobre qué usar en tu proyecto, una vez más, pregunta.
  4. Necesitas programar esas pruebas para añadirle integración continua, que consiste en hacer integraciones de código continuamente (en vez de hacer ciclos de programación y ciclos de integración) y, cada vez que se hace, pasar los tests programados anteriormente. Podéis usar sitios como Travis, que se configura simplemente con un fichero en YAML que especifica el entorno y dice como se pasan los tests
  5. Como todos usáis git a estas alturas, podéis considerar la posibilidad de trabajar sobre varias ramas, al menos una de desarrollo y otra `master`. Así podéis trabajar especulativamente sobre la rama de desarrollo y pasar a la máster sólo cuando vayáis a incorporarlo a la publicación final.
  6. En todos los proyectos de software libre es muy importante la comunicación. Abrid una cuenta de Twitter al proyecto, que también podéis configurar en GitHub para tuitear cada vez que se haga un commit. Si ya tenéis un blog, abrid una categoría para el proyecto. Si no lo tenéis, os aconsejamos que uséis GitHub pages. Tras la generación original de la página desde el panel de control, este script te puede configurar el repo para que se actualice automáticamente desde el README.md y, por supuesto, para que puedas añadir lo que desees desde él. GitHub pages usa Jekyll, y se puede usar directamente para crear un blog; Octopress funciona sobre Jekyll y permite trabajar un poco más fácilmente con blogs, pero quizás es un poco más complicado de usar. Podéis usar el que quieras, pero poned historias periódicamente con soluciones que se os haya ocurrido, tutoriales para usar lo que tengáis, tecnologías que hayáis tenido que aprender o, en general, lo que se os ocurra. Esto es imprescindible para contactar con y crear comunidad alrededor del proyecto.
  7. Usad los issues de Github para organizar las tareas. Si usáis alguna otra herramienta, conviene que la conectéis con GitHub para que se refleje vuestra actividad también allí. Los issues permiten también a los usuarios comunicarse con vosotros y ver claramente el avance del mismo. También es importante: los issues se cierran siempre con un commit.
  8. Tened una hoja de ruta, o al menos un fichero TODO donde indiquéis qué es lo que queréis hacer y por dónde vais. La hoja de ruta, además, incluirá cuando pensáis publicar algo y qué va a incluir; la hoja de ruta se traducirá en milestones o hitos que puedes incluir en GitHub y los issues se pueden asignar también a los Milestones. Por ejemplo, si alguien os envía un informe de error se puede asignar a un hito determinado: la versión 0.0.3, pongamos. En la hoja de ruta convendría que hubiera un hito antes del hackatón a principios de marzo y otro antes del final del certamen, a principios de junio.

Empathy, por Fabián Seoane (by jmerelo)Supongamos que eres estudiante de alguna carrera técnica en la UGR y quieres hacer un proyecto fin de carrera libre. Pues bien, en unos cuantos sencillos pasos te explicaremos como hacerlo:

  1. Casi previo al propio proyecto, tienes que elegir con quién hacerlo. Lo más normal es que ningún profesor te ponga pegas a la hora de hacer un proyecto libre (y si lo hace, avísanos); pero como es natural habrá unos cuantos profesores que lo hagan de forma más habitual. Si quieres que te aconsejemos a alguien, escribe a la OSL o bien deja un mensaje por la lista de correo sobre software libre en la UGR, donde hay diferentes profesores que están dispuestos a dirigir proyectos.
  2. Primero, tienes que tener la aprobación explícita de todos los participantes en el proyecto: el tutor y todos los que participéis en el mismo. En principio no es necesario que la obtengas por escrito, pero si la tienes, mucho mejor. Ten en cuenta que la propiedad intelectual del proyecto es de todos.
  3. Antes de liberarlo tendrás que decidir qué licencia usas. Con licencias populares como la GPL no vas a pillarte los dedos, pero si tienes algún tipo de dependencia de librería, o incluyes código de otro proyecto, tendrás que respetar siempre la licencia. Por supuesto, si es GPL, por su naturaleza viral, tendrá que seguir siendo GPL
  4. Busca un repositorio público para el proyecto. Tienes muchos sitios donde elegir: Sourceforge, Google Code, OSOR, Savannah, La Forja de Rediris, y así sucesivamente. Conviene que te informes antes sobre los sistemas de control de código. Cuando abras la forja, avísanos a la OSL, nos gusta saber lo que se va desarrollando y a lo mejor podemos echarte una mano
  5. Conviene que desde la primera línea de código lo liberes; así puedes atraer atención sobre el mismo, y que la comunidad participe en el mismo; desde esta OSL también haremos lo posible por difundirlo.
  6. Conviene también que en cuanto que tengas algún tipo de producto semi-completo, saques una nueva versión. Conviene que tengas nuevas versiones pronto, y las saques a menudo; así atraes también a la comunidad de compañeros de la UGR y otras universidades
  7. Conviene también que abras algún sitio para ir informando de novedades sobre el proyecto. Puede ser tu propio blog o tu cuenta en Twitter, o bien usar los propios mecanismos del sitio en donde estés alojando el proyecto; muchos tienen un sistema para noticias y actualizaciones que puedes usar; por ejemplo, mira las noticias del proyecto Cool Imaging.
  8. Cuida a la comunidad: haz caso a la lista de correo y/o foros que el propio sitio te suele proveer, monitorízalos y contesta a las dudas o sugerencias que se hagan.
  9. Cuando entregues el proyecto o saques alguna versión usable, infórmanos también a la OSL, y deja clara en la exposición por qué camino puede seguir el desarrollo. Si vas a seguir encargándote del mismo, estupendo; si no, dalo en adopción a algún compañero de cursos posteriores o a la propia OSL (simplemente envíanos un email)

Algunos proyectos fin de carrera liberados recientemente son Visuse y Cool Imaging, échales un vistazo para que veas que no si algo aporta la liberación es calidad y participación.

Web Jornadas de Software Libre
Logo y enlace Web Jornadas de Software Libre 2018
Web SereIngeniera
Logo y enlace Web SereIngeniera 2018
Web Campus Infantil 2018
Logo y enlace Web Campus Infantil 2018
Calendario
junio 2018
lunes martes miércoles jueves viernes sábado domingo
28 mayo, 2018 29 mayo, 2018

Categoría: General10:00 am: #SereIngeniera18 - Sto. Tomás de Villanueva

10:00 am: #SereIngeniera18 - Sto. Tomás de Villanueva
30 mayo, 2018 31 mayo, 2018 1 junio, 2018

Categoría: General12:00 pm: Admisiones provisionales Campus de Chicas

12:00 pm: Admisiones provisionales Campus de Chicas

Categoría: General12:00 pm: Cierre III Campaña de Donación

12:00 pm: Cierre III Campaña de Donación

Categoría: General10:00 pm: Pre-inscripción Campus de Chicas

10:00 pm: Pre-inscripción Campus de Chicas
2 junio, 2018 3 junio, 2018
4 junio, 2018 5 junio, 2018 6 junio, 2018 7 junio, 2018 8 junio, 2018

Categoría: General12:00 pm: 1ª asignación III Campaña de Donación

12:00 pm: 1ª asignación III Campaña de Donación

Categoría: General12:00 pm: Admisiones definitivas Campus de Chicas

12:00 pm: Admisiones definitivas Campus de Chicas
9 junio, 2018 10 junio, 2018
11 junio, 2018

Categoría: General12:00 pm: 2º Asignación III Campaña de Donación

12:00 pm: 2º Asignación III Campaña de Donación

Categoría: General12:00 pm: Admisiones provisionales Campus Infantil

12:00 pm: Admisiones provisionales Campus Infantil
12 junio, 2018 13 junio, 2018 14 junio, 2018 15 junio, 2018

Categoría: General12:00 pm: Admisiones definitivas Campus Infantil

12:00 pm: Admisiones definitivas Campus Infantil
16 junio, 2018 17 junio, 2018
18 junio, 2018 19 junio, 2018 20 junio, 2018 21 junio, 2018

Categoría: General10:30 am: Taller de la III Campaña de Donación

10:30 am: Taller de la III Campaña de Donación
22 junio, 2018 23 junio, 2018 24 junio, 2018
25 junio, 2018

Categoría: General9:00 pm: Campus Infantil - 1º turno

9:00 pm: Campus Infantil - 1º turno
26 junio, 2018

Categoría: General9:00 pm: Campus Infantil - 1º turno

9:00 pm: Campus Infantil - 1º turno
27 junio, 2018

Categoría: General9:00 pm: Campus Infantil - 1º turno

9:00 pm: Campus Infantil - 1º turno
28 junio, 2018

Categoría: General9:00 pm: Campus Infantil - 1º turno

9:00 pm: Campus Infantil - 1º turno
29 junio, 2018

Categoría: General9:00 pm: Campus Infantil - 1º turno

9:00 pm: Campus Infantil - 1º turno
30 junio, 2018 1 julio, 2018
Archivos
Categorías