En OpenSouthCode

Sábado 7 de mayo. Llega la OpenSouthCode.

Observamos el horario y nos sumamos a algunas charlas, nos encontramos con conocidos como @Linuxeitor y conocemos a otras tantas personas que realmente avivan el espíritu del desarrollo y la libertad de software.

Así que aquí vienen los resúmenes de algunas charlas a las que asistí, ¡empezamos!

Cómo petarlo en los ránkings de GitHub

Petándolo en GitHub, ¿cómo? JJ Merelo nos lo explica de una forma dinámica y divertida, explicando los motivos de por qué mola tanto GitHub

Tras listar varias opciones, como BitBucket o SourceForge, concluye que GitHub es la única alternativa viable en la actualidad. El único inconveniente que muestra es que no es totalmente en código abierto, pero se ha hecho valer por todo lo que aporta.

“GitHub es donde está el software libre”

Y es cierto. Puedes publicar y ver cómo otros publican su software, para compartir, aportar, comentar y valorar. Aprendiendo y enseñando a otros.
Otro gran motivo es… simple y llanamente que as empresas miran a GitHub como tu portfolio de trabajo. Igual que los artistas crean un book con sus diferentes imágenes y trabajos… por eso es importante cuidar nuestra presentación, nuestra imagen.

“Pensad en GitHub es como una red social”

Los mecanismos de redes sociales están cada vez más integrados en GitHub, y por eso es tan positivo a la hora de usarlo así. La comunidad es importante, es el día a día en la plataforma.

“En GitHub no estás sólo para publicar mierdas, si no también para ver qué mierdas publican los demás”

Hay que hacer muchos commits, un commit para un bloque de código, una función o una funcionalidad nueva. Permite al colaborador seleccionar entre tus commits aquello que necesita o va a utilizar para parchear.
Las normas no escritas son sencillas: código empático, prácticas empáticas. A través de interacciones y otras aportaciones de usuarios, se te inculcan buenas prácticas.

Como estudiante de desarrollo de aplicaciones, me enseñaron a olvidarme de la imagen del programador solitario, a oscuras, encerrado en su dormitorio y haciendo magia a base de aporrear el teclado. Es posible, casos concretos donde el desarrollador sea así. Pero sea como sea, programar es una actividad social, y cada vez más.

“GitHub es una forma de vida, es ácrata”

Salir de tu comunidad habitual hace que otras comunidades se unan. Incluso los modelos 3D, para los makers, tienen sitio en la red. Puede que tú, como programador/a, no llegues a los rankings, pero lo importante es que la comunidad crezca.

Ingeniería inversa con APKTool

Fernando se lanzó a otra charla con APKTool para hacer ingeniería inversa sobre una aplicación… necesitarás conocerla, qué hace, qué persigue, qué necesita, cómo se relaciona con el usuario. Mide, estudia su forma.
Abre, explora, une a todos sus componentes para una funcionalidad como la que encuentras en el producto final.

Es posible aunque no una norma que haya más de una forma de hacer ingeniería inversa sobre una aplicación. El parche que encuentra un desarrollador no tiene por qué ser el único. Y así mismo, a veces no es posible debido a las Magic APK

La clave está en seguir el flujo del software en cuestión, que nos dará el conocimiento sobre posible malware, porque será el objetivo final 😉

Gestión de equipos

Como hemos mencionado antes, el desarrollo es una actividad social, colaborativa. Y cuando los proyectos crecen, también puede crecer el número de colaboradores. Por eso es necesario preguntarse, ¿cómo coordinarnos en la creación de código cuando un grupo trabaja en un proyecto? Ahí entran los sistemas de control de versiones.

Miguel Martín nos habló de sistemas varios, entre los cuales se encontraban Subversion (centralizado) y Git (distribuido). Al final, en la actualidad, la tendencia ha llegado a un sistema descentralizado y funcional como es el de Git. Sumarnos a esa tendencia nos ayudará a estar activos con otros desarrolladores y sumarnos a proyectos varios.

Y a medida que se conocen proyectos, de mayor o menor envergadura, se pueden tomar diferentes flujos de trabajo. Pueden funcionar, pero existe una estructura definida, un flujo de trabajo recomendado por Git. ¿Cómo se llama? Gitflow.

¿Cómo funciona, en qué se basa? Aquí una imagen explicativa:.

Consiste en la creación de diferentes ramas, en las que los diferentes desarrolladores se aislan en las posibles funcionalidades para evitar molestar a otros trabajos y evitar conflictos.
También facilita la introducción de algún nuevo contribuyente al proyecto. Se consigue una suma de funcionalidades y la corrección de fallos para producción constante.

La creación de ramas puede parecer tediosa. Pero más tarde, cuando el proyecto crezca en dimensiones, descubriremos que localizaremos errores más fácilmente, se ve el progreso de la aplicación… Consiste en una delegación de responsabilidades entre ramas que, si se respeta por el equipo, resulta en grandes ventajas.

Al final, es crear, crear con otros, en físico o en la distancia. Pero crear un futuro juntos.

Gracias a la organización de OpenSouthCode por hacer posible el evento y a la Térmica de Málaga por ceder sus instalaciones.

Y algunos compañeros se han animado a escribir sus crónicas. Si has escrito o sabes de alguien que tenga más cosas que contar, ¡comenta!

seeU!

Anuncios

2 thoughts on “En OpenSouthCode

  1. La verdad es que fue una grata experiencia. Mereció la pena levantarse a las 6 de la mañana y recibir 10 mensajes por segundo de mi compañero metiéndome prisa para que me presentase en la puerta de su casa y salir cuanto antes.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s