Por qué es importante que las aplicaciones sean open source
Si soy desarrollador ¿Qué motivos existen para hacer mi aplicación Open Source? ¿Qué beneficios me aporta? ¿Y a los usuarios?
30 enero, 2016 21:03El software es el encargado de dar vida a nuestros dispositivos electrónicos. Gracias al software, nuestro teléfono es capaz de ejecutar aplicaciones (que también son software) y juegos, es capaz de conectarse a Internet y todo lo que podemos hacer.
Tanto los sistemas operativos como las aplicaciones son software. El software es desarrollado por programadores y diseñadores, y existen numerosos tipos de clasificaciones, ya sea por funcionalidad o por cualquier otra característica. Hoy vamos a hablar de una de ellas, el Open Source. ¿Qué es y por qué es tan importante para las aplicaciones?
Qué es el Open Source
En el mundo de las aplicaciones, existen categorías según la utilidad o su precio, pero no son los únicos casos existente. Una aplicación también se puede clasificar en si su código es abierto o cerrado.
Para aquellos que se pregunten que es el código, se tratan de las órdenes que los desarrolladores programan para que las aplicaciones funcionen como funcionan. El código es necesario para que las aplicaciones funciones, por lo que tiene una gran importancia.
Cuando nosotros subimos una aplicación a Google Play, no nos estamos descargando un código, sino ya la aplicación ensamblada. El código es necesario para construir la aplicación, pero generalmente no suele incluirse. Cuando descargamos una aplicación a la que no tenemos acceso a su código significa que es una aplicación de código cerrado.
Por otro lado, cuando podemos acceder al código con el que una aplicación fue creado, significa que esa aplicación es de código abierto, u open source, con licencias libres como Apache o CC.
¿Qué gano si una aplicación es open source?
Como hemos descrito en las líneas de arriba, una aplicación open source es una aplicación a la que podemos tener acceso al código que fue usado para crearla. Pero lo más importante del asunto es ¿Por qué me interesa que una aplicación sea de código abierto?
Las principales ventajas de que una aplicación sea de código abierto, es que cualquiera tiene acceso al diseño interno de la aplicación. Cualquiera que tenga acceso al código puede ver la aplicación, mejorarla, o incluso copiarla directamente. Como usuarios, esto no nos interesa lo más mínimo, pero tiene unos beneficios que si que nos deberían de importar.
En primer lugar, si las aplicaciones contienen errores de programación, como cualquiera puede revisar el código, es más fácil que cualquiera pueda echar una mano al desarrollador y corregir los errores con más rapidez. La consecuencia de esto es que las aplicaciones open source a menudo reciben más actualizaciones y corrigen con mayor velocidad los errores.
Otro aspecto que nos importa sobre las aplicaciones open source es la fiabilidad de estas. Cuando una aplicación es open source, su desarrollador nos da acceso al código de la aplicación. Si comprobamos el código, tendremos la certeza de que el desarrollador no está haciendo trampas ni está utilizando nuestros datos con fines fraudulentos. Es cierto que como usuarios no vamos a revisar el código de una aplicación, pero al existir gente dispuesta a hacerlo, tendremos una garantía de calidad.
Dónde puedo conseguir aplicaciones open source
Si los argumentos del Open Source nos han convencido, es posible que sintamos interés en descargarnos aplicaciones que sean open source. ¿Podemos conseguir aplicaciones open source en Google Play? Sí, pero con algunos peros.
En Google Play existen aplicaciones que son de código abierto, pero la gran mayoría son de código cerrado. No obstante, existe una tienda de aplicaciones donde podemos conseguir aplicaciones con la garantía de que sí son de código abierto. Esa tienda es F-Droid, un market de aplicaciones dedicado al software libre.
Como desarrollador ¿Qué gano si mi aplicación es open source?
El open source es capaz de aportar algunas ventajas a los usuarios, pero realmente son realmente los desarrolladores los principales beneficiados del código abierto. El primer motivo por el que las aplicaciones de código abierto son buenas para ti es que te sirven como actividad formativa. Si eres un desarrollador novato, la mejor manera de aprender rápido es viendo como los demás hacen las cosas, y eso no es posible con el código cerrado.
Por otro lado, si quieres crear una aplicación, no tienes porque desarrollarla desde cero. Los programas de código abierto generalmente tienen una licencia que nos permite copiar el código que ha creado, siempre y cuando nuestra aplicación también sea de código abierto. Por ejemplo, si queremos crear nuestro propio navegador web, podemos tomar la base de un navegador libre, ahorrándonos trabajo.
Pero estas ventajas solo son aplicables para aprovecharnos del código libre. La pregunta más importante entonces es ¿Por qué mi aplicación debería ser open source? ¿Qué gano de ello?
Pues lo primero que consigues creando software de código abierto es devolverle el favor a la comunidad. Gracias a personas desconocidas aprendiste a programar como un desarrollador de primer nivel, y ahora es turno de pasar el testigo, y que nuevos desarrolladores aprendan de ti.
Por otro lado, si nuestra aplicación es de código abierto cualquiera puede aprender de ella, pero también tomarla por completo y mejorarla. A priori, esto puede parecer algo negativo, ya que directamente no nos beneficia, pero aporta muchos beneficios:
- Si mejoran la aplicación que tu has creado, también será libre y podremos tomar esas mejoras para nuestra aplicación original.
- Cuando alguien toma nuestro código, esta persona nos suele dar crédito, lo que aumenta nuestra fama.
- Sirve para demostrar al mundo que ese trabajo lo hemos hecho nosotros, demostrando nuestra valía.
Como podremos observar, la primera ventaja es la que más nos puede aportar de forma directa, mientras que la segunda y tercera son una apuesta de futuro, y nos puede ayudar a conseguir un trabajo.
Mostrar tu trabajo abre puertas
A la hora de contratar a alguien en el mercado laboral, a las empresas les interesa contratar a gente que no solo tenga talento, sino que disponga de experiencia. Mientras que el talento es algo inherente de cada uno, la experiencia solo se puede conseguir mediante trabajo.
Y claro, si para conseguir un buen trabajo necesitas experiencia pero para tener experiencia necesitas un trabajo ¿Cómo conseguimos un trabajo entonces? Pues creando aplicaciones de código abierto.
Crear aplicaciones de código abierto es un buen camino para conseguir un trabajo. Cuando creamos una aplicación de código abierto, estamos demostrando un trabajo que nosotros hemos hecho, que lo convierte en una experiencia válida. Cada día más empresas lo tienen en cuenta, hasta el punto que si tenemos un gran número de contribuciones en el software libre (ya sea creando aplicaciones de código abierto como contribuyendo a otras aplicaciones) conseguir un buen trabajo será una tarea fácil.
Android, cuanto más libre mejor
Es difícil emitir un veredicto negativo sobre el código abierto, y es que aunque parezca mentira, le debemos mucho. Gracias al código libre el proyecto de GNU-Linux pudo conseguir la presencia que tiene hoy en día, y sin Linux, Android nunca podría haber nacido.
El código abierto permite que los desarrolladores mejoren sus aplicaciones y aprendan, algo que nos beneficia a tanto a usuarios, como a desarrolladores.