Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Cómo colaborar en GNOME

1,446 views

Published on

Charla sobre cómo iniciarse como colaborador de GNOME y breve descripción de GNOME shell

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Cómo colaborar en GNOME

  1. 1. Cómo colaborar en Juanjo Marín Fase Final del IV Concurso Universitario de Software Libre Cádiz, 14 de mayo de 2010
  2. 2. - Tradicionalmente los proyectos universitarios parten de cero y se desechan tras su finalización. - Crear un comunidad es una árdua tarea: <ul><li>Gran parte del tiempo se consume en el desarrollo
  3. 3. Se necesitan habilidades especiales para recrutar, motivar y gestionar una comunidad
  4. 4. Según sourceforge.net el 68% de los proyectos solo tienen un contribuidor y el 15% sólo dos. </li></ul>versus
  5. 5. Videos - proyectos finalistas IV CUSL - proyectos de GNOME > GNOME shell > Evince
  6. 7. Mi experiencia con GNOME - En concreto me “enrolé” em uno de sus subproyectos, Evince, el visor de documentos. - Mis primeras contribuciones en GNOME fueron para mi PFM del Master Software Libre de la UOC.
  7. 8. Problemas iniciales <ul><li>Definir los objetivos </li><ul><li>“ Scratch your personal itch” suele funcionar </li></ul><li>Calcular el tiempo necesario para su ejecución </li><ul><li>Enfrentarse a código fuente hecho por otros
  8. 9. Tu trabajo necesita ser revisado por otros para su aceptación </li></ul></ul>
  9. 10. Manos a la obra <ul><li>Hay que aprender una nueva plataforma
  10. 11. Para arreglar un bug o añadir una nueva funcionalidad hay que comprender el código existente
  11. 12. El importante respetar el “Coding Style” para trabajar en comunidad
  12. 13. Los parches más simples son más fáciles de aplicar y se aplican antes
  13. 14. Es posible que tengas que interactuar con otros proyectos </li></ul>
  14. 15. GNOME 3 is made of easy Lo que está por venir
  15. 16. - Una plataforma más sencilla y “limpia” - GOBJECT Introspection
  16. 17. + Anotaciones (metadatos) gir-scanner gir-compiler gcc Arquitectura de GOBJECT Introspection foo.h foo.c foo.gir (xml) foo.typelib libfoo.so libffi.so libgirrepository.so Bindings (Vala, Gjs, Seed, PyGI, ruby-gir-ffi, ...)
  17. 18. /** * nombre_funcion: (annotacion1) (annotacion2) * * @primer_param: (annotacion1) (annotacion2) (...): documentacion 1er parametro * @segundo_param: (annotacion1) (annotacion2) (...): documentation 2º parametro * * Returns: (annotacion1) (annotacion2) (...): Documentacion salida funcion */ /** * mylib_get_constant1: * * Return value: (transfer full): a constant, free when you used it */ gchar * mylib_get_constant1 (void) { return g_strdup(&quot;a constant&quot;); } /** * gtk_widget_get_size_request: * @width: (out): Int to store width in * @height: (out): Int to store height in */
  18. 19. GNOME shell demo
  19. 20. Colaborar en la comunidad GNOME es una experiencia única para aprender de primera mano los entresijos del desarrollo de software libre.
  20. 21. Oportunidades de trabajo: Existen un tejido empresarial nacional que trabajan con tecnologías GNOME
  21. 22. ¡Gracias! Juanjo Marín [email_address] ¡Hazte amigo de GNOME! www.gnome.org/friends

×