Soy un estudiante de ingeniería informática y quiero contribuir a proyectos de GitHub, especialmente proyectos web. ¿Cómo y dónde debo comenzar?

Una manera fácil de comenzar es mirar proyectos con los que ya estés familiarizado y echar un vistazo a los problemas abiertos que otros usuarios han publicado. Responda al hilo, bifurque el proyecto, resuelva el problema y envíe una solicitud de fusión.

Cuando envíe la solicitud de fusión, escriba en su confirmación. “Resuelve el problema # 10” (use el número apropiado). De esa manera, cuando abra la solicitud de fusión, su confirmación también se mostrará en el hilo de problema relevante.

Comience con problemas básicos y verifique el archivo Léame del proyecto para ver si el desarrollador ha estipulado las pautas que desean que otros desarrolladores interesados ​​en contribuir sigan. Estas estipulaciones son usualmente solo que pruebe su código y proporcione pruebas unitarias si corresponde. También es mejor cumplir con un flujo de trabajo menos destructivo, al menos hasta que se establezca como un contribuyente importante. Esto significa, siga patrones de formato similares ya establecidos y no modifique ningún código que no sea el código relevante para el problema que está solucionando. Y asegúrese de comentar a fondo su código, siempre, sin excepción.

A veces, los desarrolladores pueden intentar formatear el código de otra persona, o hacer pequeñas mejoras de rendimiento. A menos que este sea el problema de su dirección … No lo haga. Solo modifique la cantidad mínima de código posible para resolver el problema. Recuerde que cada cambio, independientemente de cuán superficial deba ser probado a fondo. Y si bien puede saber que funciona, como alguien nuevo en un proyecto, las otras personas involucradas no van a confiar en que sepa lo que está haciendo hasta que demuestre su competencia a través de soluciones de problemas de impacto mínimo.

Una regla general es identificar primero el tema que más le interese. “Proyectos web” en sí mismo es una categoría muy amplia. ¿Qué le interesa particularmente de los proyectos web? ¿Es procesamiento de imágenes, protocolo de red y comunicación, comercio electrónico, HTML5, CSS, Javascript? Te lo dejaré a ti para que lo descubras.

Una vez que lo haga, busque proyectos en github relacionados con sus áreas de interés.
Luego viene el proceso de dos pasos:

  1. Aprender
    Revisa el proyecto, revisa la documentación y juega con él, hasta que entiendas lo que hace el proyecto.
  2. Contribuir
    Comience con la documentación. Vea si tiene sentido para usted y si se puede mejorar. Revise la lista de problemas abiertos y vea si puede solucionarlos.

Intente responder preguntas abiertas en Stackoverflow con respecto a su proyecto, para evaluar su nivel de comodidad / conocimiento del proyecto. Involucrarse con los miembros del proyecto, colaborar en las mejoras, sugerir las suyas y construirlas.

Encuentre la intersección entre lo que le interesa, lo que es bueno y lo que necesita el mercado. Este es generalmente un buen consejo para toda su carrera. Si eres bueno en eso y te preocupas por eso, mejorarás aún más. Si el mercado lo necesita, encontrará empleo haciéndolo.