Escribir y usar software abierto no es solo una forma de programación (también conocido como `piratería` en el mundo de los programadores), es una especie de filosofía. Aunque solo necesita saber un lenguaje de programación para poder programar, este artículo trata sobre cómo puede unirse a la comunidad, hacer amigos, colaborar en grandes proyectos y convertirse en un especialista respetado con un perfil que no puede obtener en ningún otro lado. En el mundo del software abierto, es muy fácil que se le asignen tareas que solo la élite, los programadores de alto nivel, pueden realizar en una empresa. Solo piensa cuánta experiencia puede traerte esto. Sin embargo, una vez que haya decidido convertirse en un programador de software abierto, debe estar dispuesto a invertir tiempo en este objetivo. Esto también se aplica si ya eres estudiante de TI. Eso sí, este artículo no trata sobre cómo convertirse en un hacker o cracker.
Pasos
1. Descarga una buena distribución Unix. GNU/Linux es uno de los más populares para la programación, pero GNU Hurd, BSD, Solaris y (hasta cierto punto) Mac OS X también se usan comúnmente.
2. Aprende a usar la línea de comandos. Puede hacer mucho más con los sistemas operativos similares a Unix cuando usa la línea de comando.
3. Aprende algunos lenguajes de programación populares hasta alcanzar un nivel más o menos satisfactorio. De lo contrario, no puede contribuir con el código (la parte más importante de cualquier proyecto de software) a la comunidad de software abierto. Algunas fuentes sugieren comenzar con dos idiomas a la vez: un lenguaje de sistema (C, Java o similar) y un lenguaje de secuencias de comandos (Python, Ruby, Perl o similar).
4. Para ser más productivo, necesita NetBeans o un entorno de desarrollo integrado similar.
5. Aprenda a usar un editor avanzado, como vi o Emacs. Tienen una curva de aprendizaje más alta, pero puedes hacer mucho más con ellos.
6. Más información sobre el control de versiones. El control de versiones es probablemente la herramienta más importante de la colaboración en el desarrollo de software compartido. Comprender la creación y aplicación de parches. La mayor parte del desarrollo de software abierto en la comunidad se realiza mediante la creación, discusión y aplicación de varios parches.
7. Encuentre un pequeño proyecto de software abierto adecuado al que pueda unirse fácilmente para ganar experiencia. La mayoría de estos proyectos se pueden encontrar en SourceForge en estos días.sólo. Un proyecto adecuado debe:
Usa el lenguaje de programación que conoces.Mantente activo, con lanzamientos recientes.Ya para constar de tres a cinco desarrolladores.usar el control de versiones.Tenga una parte en la que pueda comenzar a trabajar de inmediato, sin tener que cambiar demasiado el código existente.Además del código, un buen proyecto también tiene listas de discusión activas, informes de errores, obtiene e implementa solicitudes de mejora y actividades similares.8. Contactar al administrador del proyecto seleccionado. En un proyecto pequeño con pocos desarrolladores, su ayuda generalmente será aceptada de inmediato.
9. Lea atentamente las reglas del proyecto y sígalas más o menos. Es posible que las reglas del estilo de programación o la necesidad de documentar sus cambios en un archivo de texto separado le resulten ridículas al principio. Sin embargo, el propósito de estas reglas es permitir el trabajo compartido, y la mayoría de los proyectos funcionan con él.
10. Trabaja en este proyecto durante varios meses. Escuche atentamente lo que el administrador y otros miembros del proyecto tienen que decir. Además de programar tienes muchas cosas que aprender. Pero si realmente no te gusta algo, simplemente detente y pasa a otro proyecto.
11. No te demores demasiado en el proyecto subterráneo. Una vez que descubras que puedes trabajar con éxito en ese equipo, es hora de buscar algo más serio.
12. Encuentre un software abierto serio de alto nivel o un proyecto de código abierto. La mayoría de estos proyectos son propiedad de organizaciones GNU o Apache.
13. Porque estamos dando un salto serio aquí, hay que tener en cuenta una recepción mucho menos cálida. Probablemente se le pedirá que ejecute sin acceso directo de escritura al repositorio de código por primera vez. Sin embargo, el proyecto clandestino anterior debería haberte enseñado mucho, así que después de unos meses de ser productivo, puedes reclamar los derechos que crees que deberías tener.
14. Asume una tarea seria y resuélvela. Es la hora. No tengas miedo. Continúe incluso si encuentra que la tarea es mucho más difícil de lo que pensó inicialmente; en este paso es importante no darse por vencido.
15. Si puede, presente su solicitud a Google "Verano de código" para ahorrar algo de dinero en esta aventura. Pero no se preocupe si la solicitud no es aceptada porque tienen posiciones mucho menos financiadas que programadores realmente buenos.
dieciséis. Encuentre una conferencia adecuada que se lleve a cabo cerca ("Linux days" o algo similar) e intente presentar su proyecto allí (todo el proyecto, y no solo la parte que programa). Después de decirles que está representando un proyecto serio de código abierto/libre, los organizadores a menudo lo liberarán de la tarifa de la conferencia (si no, es probable que la conferencia no sea adecuada de todos modos). Traiga su computadora portátil Linux (si tiene una) y muestre algunas demostraciones. Pregúntale al director del proyecto sobre los materiales que puedes utilizar para preparar tu presentación o póster.
17. Busque en Internet anuncios sobre un evento de instalación cercano e intente participar primero como usuario (tenga en cuenta todos los problemas que surgen y cómo los hackers los resuelven) y la próxima vez ofrezca instalar programas.
18. Complete la tarea, verifique su trabajo con pruebas automáticas y contribuya al proyecto. Estás listo! Solo para estar seguro, intente conocer a algunos de los programadores del proyecto en persona y levanten una cerveza por el resultado juntos.
19. Para una mejor comprensión, mire un ejemplo de la vida real del historial de desarrollo de un proyecto de software abierto (arriba). Cada curva ascendente representa una contribución (líneas de código) de un solo desarrollador. Los desarrolladores tienden a volverse menos activos con la edad, pero el proyecto a menudo se acelera incluso cuando se unen nuevas personas. Entonces, si llega con algunas habilidades útiles en su bolsillo, no hay razón para que el equipo no lo invite.
Consejos
Antes de hacer una pregunta sobre los aspectos prácticos del proyecto, debe buscar la respuesta en la documentación del proyecto y en los archivos de la lista de correo.Siempre sigue tratando de terminar la programación que comenzaste. No se puede compilar, no se puede ejecutar, el sistema falla? ejem son razones para todo, y si tiene el código fuente, generalmente significa que tiene el sistema bien obligarlo a hacer lo que quiere, especialmente con la ayuda de algunas investigaciones en línea. Esta regla tiene límites, por supuesto, pero es muy importante nunca darse por vencido con demasiada facilidad.Solo llámese programador (o hacker) después de haber sido reconocido como tal por parte de la comunidad hacker real.Al principio, elija una clase, módulo u otra unidad en la que nadie esté trabajando actualmente de forma muy activa. Trabajar juntos en la misma clase o incluso en un puesto requiere más habilidad y cuidado por parte de todos.Los empleadores de algunos piratas informáticos/programadores parecen lo suficientemente motivados como para permitir contribuciones durante las horas de trabajo (generalmente porque la institución utiliza el programa gratuito/de código abierto que desarrolla el programador). Piense, tal vez pueda obtener al menos parte del tiempo necesario de esta manera.Si aún no te sientes lo suficientemente seguro de ti mismo, comienza con alguna parte del código que creas que falta y que se puede escribir desde cero. Los cambios en el código existente serán criticados mucho más rápido.Advertencias
- Tu estatus de hacker dentro del proyecto comunitario refleja tu presente más que tu pasado. Si desea una recomendación o similar del líder del proyecto, pregunte si todavía está contribuyendo activamente.
- No entre en optimizaciones de código menores, comentarios adicionales, mejoras de estilo de codificación y otras cosas similares de "pequeña escala". Esto puede encontrar muchas más críticas que una contribución seria. En su lugar, puede incluir estos cambios en un solo parche de `limpieza`.
- Si planea conocer a los piratas informáticos de software abierto en persona, deje su computadora portátil con Windows en casa. Mac OS es un poco más tolerado, pero tampoco bienvenido. Si trae su computadora portátil, debe ejecutar Linux o algún otro sistema operativo que consideren `software abierto`.
- Si su cliente de correo electrónico admite mensajes HTML, será mejor que deshabilite esta función. Nunca adjunte documentos que solo el software comercial (como Microsoft Word) puede abrir correctamente. Los hackers consideran esto ofensivo.
- No se ofrezca como voluntario para ningún proyecto de la empresa cuyo código no esté cubierto por un aprobado caída de la licencia de código abierto. En tales casos, es probable que las partes realmente importantes del proyecto permanezcan a puertas cerradas del propietario, lo que le impide aprender algo útil.
- Evite cualquier pregunta sobre fundamentos de programación o herramientas de programación. El tiempo de un programador de software abierto es precioso. En cambio, discuta los conceptos básicos de la programación en grupos para programadores principiantes o principiantes.
- Los proyectos establecidos y altamente exitosos pueden tener políticas escritas o no escritas sobre nunca pagar por su trabajo (sin dinero, sin capacidad para promocionarse, sin estatus elevado independientemente de su contribución, etc.). -- ver : No_esperar_recompensa Wikipedia). Si no puede estar de acuerdo con esto, quédese con proyectos más convencionales que no puedan permitirse esa actitud.
- No te embarques en un proyecto propio a menos que quieras pasar siempre una soledad orgullosa. Por la misma razón, no deberías embarcarte en un intento de revivir un proyecto ya abandonado que su equipo anterior ya perdió.
- En el caso de una reunión informal sobre el proyecto en la que nunca has aportado ningún código, tendrás la desagradable sensación de ser completamente ignorado. No se preocupe, algunos piratas informáticos pueden convertirse en buenos amigos más tarde, después de ganarse su respeto con su propio código.
- Los principales proyectos de software abierto, especialmente aquellos relacionados con el dominio GNU, no traten su trabajo como su negocio personal. Después de conseguir el trabajo en una empresa relacionada con el software, le piden a su empleador ciertos acuerdos [1] firmar, que la empresa firmará o no firmará. Esto puede obligarlo a seleccionar un proyecto con requisitos menos estrictos.
Artículos de primera necesidad
- linux. Muchos proyectos de software abierto son más complicados de construir bajo Windows, o no se construyen correctamente. Esto es especialmente cierto para proyectos avanzados, dedicados a la programación de teléfonos móviles, Llaves USB y otros dispositivos.
- Una computadora con una conexión a Internet relativamente buena. Si desea un arranque dual con Windows, una segunda unidad de disco duro o partición para Linux podría ser una buena solución.
- Conocimiento básico de al menos un lenguaje de programación y una fuerte intención de aprender más. Los idiomas más populares actualmente parecen C y ser Java.
- Una cantidad significativa de tiempo, al menos cinco horas a la semana (un programador experto típico contribuye con hasta 14 horas).
- Si bien la educación formal en TI hará que su camino sea mucho más fácil, este no un requisito obligatorio y ninguna comunidad de hackers te preguntará nunca al respecto. Los programadores/hackers se juzgan entre sí por la programación de alguien, no por criterios falsos como calificaciones, edad, raza o posición. Eso sí, al menos el 60% de los piratas informáticos de código abierto que revisan sus parches tienen el título universitario `correcto` y no permitirán que su basura contribuya al proyecto.
- Durante los últimos pasos (conferencia y `fiesta de instalación`) puede aprovechar su propia computadora portátil. Pero no es bueno trabajar en él en casa, así que solo compre uno si puede pagar la segunda máquina.
- El camino descrito para convertirse en un `hacker` de software de código abierto tarda al menos dos años en completarse.
Artículos sobre el tema. "Convertirse en un programador de software abierto"