¿Qué habilidades necesito para ser seleccionado en GSoC? ¿También cuándo y cómo puedo postular?

Hay ciertos rasgos que todos deben poseer si realmente quieres divertirte y tener un gran impacto mientras contribuyes al código abierto, rasgos como la perseverancia, la disposición a aprender cosas nuevas son algunos muy importantes.

Me gustaría dar ejemplos en los que estos rasgos me ayudaron en mi viaje de código abierto. Luego procedería a hablar sobre el camino que seguí para ser seleccionado para GSoC 2016.

Las bases de código fuente abierto tienden a ser monolíticas. Casi siempre son masivos, hay un sinnúmero de partes que trabajan en conjunto, varios niveles de abstracciones. Estas bases de códigos tienden a ser trabajadas por personas de diferente calibre. A veces son trabajados por expertos, a veces por novatos (como tú y yo) y muchos otros tipos. Cada uno tiene su propio estilo, hay una gran cantidad de soluciones de “hackeo” hechas, que hacen las veces de soluciones temporales. Esto sucede más a menudo de lo que piensas y lo he presenciado personalmente mientras contribuía a mi organización (OpenAstronomy / Sunpy). Para comprender con éxito cuáles son sus objetivos, qué está tratando de implementar y lograr, debe poder leer bien el código de los demás, esto requiere mucha persistencia y perseverancia. Intente tomar una organización aleatoria (que use un idioma que conozca), elija un módulo aleatorio y comience a leer el código. Vería que hay muchas dependencias, diferentes funciones están llamando a otras funciones en otros módulos. Para tener un buen control sobre su objetivo, necesita comprender partes de otros módulos (en los que no estará trabajando). A veces, cambiar algo en un módulo también afecta a otros módulos (esto sucede a menudo, por cierto). Todas las cosas antes mencionadas son desafíos que requieren paciencia, persistencia y perseverancia para vencer. El camino será largo y difícil, pero el viaje, te aseguro que sería gratificante.

Ahora, llegando a mi propio camino de ser seleccionado para GSoC. Le daría un consejo, siga esto y las cosas estarían a su favor por un amplio margen durante el período de solicitud. Tengo dos palabras para ti, “Comience temprano”. Yo diría que en algún momento de noviembre o diciembre sería lo correcto. Elija una organización que esté seguro de que entrará en la lista de organizaciones para el próximo GSoC. Acércate a ellos y diles que estás interesado.

La principal ventaja que tiene es la proximidad a los mentores de la organización. La mayoría de los mentores son gratuitos durante el período no GSoC. Hágales preguntas interesantes, inunde con todas y cada una de las preguntas que tenga. Al menos, eso es lo que hice. Pregúnteles si hay una funcionalidad que les gustaría ver. Cada organización tiene un hito (una versión de desarrollo que implementan cada año). Vea lo que puede hacer para ayudarlos con eso. Siempre están dispuestos a mirar (de hecho, buscan activamente) tipos ansiosos como tú. Tendría mucho tiempo que puede usar para interactuar personalmente con los mentores. Todo esto sin duda no estará disponible para usted durante o incluso antes del período de solicitud (Todos los estudiantes comienzan a aplicar, en consecuencia, los mentores tienen que distribuir su tiempo juiciosamente y a todos).

Sobre las habilidades técnicas que necesita para GSoC, le aseguro que no necesita ser un “programador de rockstar” o un “profesional” en cualquier marco o lenguaje que utilice. Simplemente tenga competencia básica y desarrolle sobre ella experimentando. Siempre esté atento a las organizaciones que usan su lenguaje / marco. Clone su software en sus sistemas. Lea sus documentos de usuario, pruebe algunos ejemplos. Intenta entender lo que hacen. Luego mire “debajo del capó”, sumérjase lenta y meticulosamente en su código base. Al principio, será un poco desalentador, pero luego te acostumbrarás (sería divertido, una vez que lo hagas). Solo tengo una cosa que decir sobre las habilidades técnicas para GSoC, explorar y experimentar. Eso es todo lo que hay que hacer, de verdad. No poseo ninguna pitón sobrehumana ni ninguna otra habilidad de programación y tampoco muchos otros GSoC’ers. Se supone que GSoC le enseñará cómo convertirse en un mejor programador, no es necesario que sea uno para empezar.

Leí extensamente sobre GSoC, en Quora e intenté asimilar tanta información como sea posible antes de aplicar. Es bueno mantenerse bien y mejor informado que todos los demás. Te sugiero que hagas lo mismo.

Buena suerte y diviértete en tu viaje de código abierto. Que la fuente esté contigo 😉

GSoC (Google Summer of Code) es un programa anual que se llevará a cabo en cada verano patrocinado por Google.

Consulte los siguientes enlaces para obtener más información sobre GSoC

  1. Google Summer of Code
  2. Preguntas frecuentes

Habilidades que necesitas:

Para aplicar con éxito, seleccionar y finalizar un GSoC, necesitará habilidades técnicas y prácticas. Desde la perspectiva técnica, a continuación encontrará algunas habilidades básicas que necesita.

  1. Experiencia en al menos uno de los lenguajes de programación (ej .: Java)
  2. Familiaridad con el control de versiones.

Los siguientes son un conjunto de rasgos que le darán una ventaja adicional al solicitar GSoC.

  1. Flexibilidad
  2. Voluntad de aprender
  3. Interacciones comunitarias positivas
  4. Proactividad
  5. Interacciones comunitarias positivas
  6. Abierto a sugerencias de otras personas.
  7. Respetar las ideas de otras personas.
  8. Confianza
  9. Paciencia

Dado que GSoC 2016 ya ha comenzado, puede solicitar GSoC 2017. Hay varios proyectos de desarrollo web que pertenecen a las organizaciones de código abierto que fueron aceptadas para GSoC. Lo que debe hacer es cuando se anuncie GSoC 2017, busque una organización que tenga proyectos de desarrollo web.

Una vez que encuentre la organización, puede enviar un correo electrónico a su lista de correo para presentarle a usted y su voluntad de hacer GSoC con ellos. Proporcionarán orientación sobre cómo contribuir a su organización y postularse.

Por lo general, las solicitudes GSoC se realizan como una propuesta de proyecto para un determinado proyecto. Debe definir claramente los entregables, cómo va a lograrlos y una línea de tiempo detallada entre otra información. Una vez que envía la propuesta, las organizaciones las revisan y seleccionan la que mejor se adapte a sus intereses.

Para aumentar sus posibilidades de ser seleccionado, puede comenzar a contribuir antes en los proyectos que tienen probabilidad de ser seleccionados para GSoC.

Las siguientes publicaciones en el blog le brindarán una comprensión profunda sobre cómo contribuir a la organización de código abierto y algunos consejos para la aplicación de GSoC.

  1. Comenzando en Código Abierto
  2. Consejos de aplicación de GSoC