O meu primeiro PR (Pull Request) en Github

Ben, tomarei a liberdade de saír un pouco da miña zona de confort para entrar noutra das miñas zonas de confort 😛 FOSS. Neste post pretendo, como fixen con Gentoo, primeiro compartir un pouco da miña experiencia persoal e así tratar de emocionalos un pouco para poder mergullarse de cheo no mundo dos proxectos e contribucións. Sen máis, imos comezar:

FOSS

Software de código aberto e gratuíto (polas súas siglas en inglés) é unha corrente que implica proxectos de software libre e de código aberto. Non pretendo discutir as diferenzas entre ambos xa que o fixen varias veces, incluso unha vez que tiven que explicarlle todo ao mesmo señor Stallman que se puxo en contacto comigo por correo nunha das listas de proxectos que abundan en internet. Un artigo que estou moi emocionado e que vou compartir contigo está no sitio web oficial de GNU e, como moitos dos seus documentos, están traducidos a diferentes idiomas. Adxunto a ligazón e tomarei a liberdade de citar un dos parágrafos que máis me chama a atención.

https://www.gnu.org/education/edu-schools.es.html

A razón máis profunda para usar software libre nas escolas é a educación moral. Agardamos que as escolas ensinen datos básicos e habilidades útiles, pero iso é só unha parte do seu papel. A tarefa fundamental das escolas é ensinar unha boa cidadanía, incluído o hábito de axudar aos demais. En informática, isto significa ensinar a compartir software. As escolas, comezando polo xardín de infancia, deberían dicirlles aos seus alumnos: “Se traes software á escola, deberías compartilo con outros nenos. E deberías amosar o código fonte na clase, por se alguén quere aprender. Polo tanto, non está permitido levar software non gratuíto á escola, a menos que se empregue para facer algún traballo de enxeñería inversa.

Como podes ver, o software libre é un fluxo máis que técnico, diría que moral. É como achegarse a este mundo no que o egoísmo e o orgullo están ao lado e podemos ter xente que realmente comparta e se preocupe polos demais.

Ben, non pretendo facervos ferventes usuarios de software libre, pero anímovos a dar un salto polos documentos e ver o ben que poden rescatar 🙂

Proxectos

Todo o software, xa sexa de código aberto ou software libre, ten un proxecto e probablemente unha comunidade que xira ao seu redor. Son os que o manteñen, o melloran, o protexen, etc. Como era de esperar, canto maior sexa o proxecto, as estruturas son cada vez máis específicas en termos de procesos e formas e, obviamente, é o correcto, xa que canto maior sexa o número de participantes, os erros poden ser maiores se non se entenden ben. Formas definidas de colaboración e procesos para facelo.

A regra principal cando se elixe contribuír a un programa FOSS é USO dito programa 😀 E o que digo pode parecer un pouco parvo, pero en realidade ten moito sentido. Como son moitos dos características Que inclúe un programa? Pois por necesidade. Cada funcionalidade existente xorde baseada no feito de que alguén (unha ou varias persoas) precisa esa función. É por iso que se queres compartir e colaborar cunha comunidade, un paso esencial é iso usa o que desenvolven.

¿Necesitas ser un programador experto?

Quero comezar esta parte facendo unha pregunta sinxela. Como se converte nun programador experto? Aquí algúns me dirán, ben escribindo códigoDígolle a toda esa xente que este non é o enfoque correcto. Por que?

Ler código fai que sexas un mellor programador

Pensa isto antes de continuar. Que escritor naceu sabendo escribir? ¿Non é primeiro aprender a ler, nutrir o cerebro con moitos outros autores e, finalmente, poder comezar a escribir algo con contido e valor? É exactamente o mesmo co código, hai que aprender a ler moito antes de aprendelo escribir.

O teu código probablemente non sexa tan bo

Para os que levan moitos anos programando, perdón se con isto destrúo as súas concepcións do que conseguiron en todo este tempo, pero é certo. Para os que tivemos a oportunidade de colaborar en proxectos realmente grandes, o primeiro que se pode apreciar é que hai moita xente con moito máis talento que un. Obviamente isto en lugar de ser unha desvantaxe, é un punto polo que apoiar un proxecto convértete nun mellor desenvolvedor.

Ter centos, ou quizais miles, de ollos revisando o teu código todos os días, faino descubrir en que aspectos a túa lóxica non é a mellor de todas. A principal vantaxe disto é que co paso do tempo, o teu cerebro vai descubrindo novas formas de proceder e os erros "infantís" que cometiches ao comezo da túa participación convértense nunha vaga memoria.

Con isto só quero reforzar o feito de que un proxecto é bo para ti, tanto para aprender a ler como para aprender a escribir código, o que a longo prazo te converterá nun programador experto.

E ... e se non son programador?

Este é un punto que quero tocar tamén porque moita xente pensa que se non escribes código, non podes facer nada por axudar. Este é un dos mitos urbanos máis prexudiciais que existen.

Moitos proxectos requiren máis man de obra en temas que non son do código que para producir código. Quizais a axuda en mercadotecnia, publicidade ou lei, incluso na planificación de eventos, sexa sempre benvida. Ademais de permitirche coñecer xente nova, participar nestes proxectos permíteche aprender novas formas de pensar e ao mesmo tempo compartir novas experiencias.

Como participo?

Ben, se xa estás aquí, espero que polo menos un pouco de curiosidade te morde por participar en proxectos FOSS 😉. Para comezar, é necesario entender que cada proxecto e comunidade ten o seu propio proceso. Moitos destes xúntanse en diferentes puntos e divergen noutros, pero ao final, o primeiro punto de referencia para participar será a comunidade do programa que usa.

sitio

Cada páxina web ten a súa propia sección de Contribuír. E se non o tes, entón é o primeiro que podes axudar 😀 aprender o proceso, falar coa comunidade e escribir un pequeno texto para que poida guiar aos demais durante o proceso 😉 Se xa o teñen, pero non está en castelán, porque podes tardar un fin de semana en traducilo e así estarás axudando ao teu proxecto e ao mesmo tempo a todos os que falan español birds Dous paxaros cunha pedra 😉

listas de correo

Gran parte da comunicación das comunidades vén dada polas listas de correo, é necesario subscribirse e comezar a tardar un par de minutos ao día en lelas. Quizais ao principio non entendes, pero asegúroche que co paso dos días ou das semanas entenderás o que está a suceder. Antes de que o saiba, xa estará escribindo na lista e non pasará moito tempo antes de que a xente comece a pedir a súa opinión ou posibles solucións (se o intenta moito, por suposto 😉).

Github

Este é un punto crucial para calquera que queira colaborar nun proxecto FOSS, aprender a usar Github ou Gitlab ou Bitbucket ou calquera host que aloxe o código do repositorio, permitiralle axudar de forma tanxible a mellorar a comunidade.

IRC / Gitter / Telegram

IRC (Internet Relay Chat) existe desde os primeiros tempos de internet. Así se comunicaba a xente antes de WhatsApp e smartphones. E como era de esperar, moitos proxectos teñen dispoñibles as súas canles IRC onde podes facer preguntas e falar sobre problemas de proxectos ou comunidades, ou facer un chat espontáneo 🙂 sempre coidadoso porque nunca sabes o que podes atopar en internet 😉

O meu primeiro PR

Ben, aquí non vou explicar como se fai unha solicitude de extracción en detalle, deixareino para outro post se está interesado en comezar a participar.

como programador

Propio. Christopher Díaz Riveros

Como non programador

Propio. Christopher Díaz Riveros

O primeiro foi un erro de seguridade no que incorporei un parche para solucionalo, o segundo forma parte do capítulo 7 do libro git. Aínda estou a traballar nos dous proxectos, aínda recentemente rematei de traducir completamente o programa git Ao español. (Lanzarase na versión 2.15 😉)

Son pequenas contribucións como podes ver, non máis de 100 liñas de código (das que bastantes copiaban e pegaban o que xa existía nun novo ficheiro), pero son mi contribución ao proxecto 🙂 e son cousas que eu uso diariamente

Como podes ver, a sensación é bastante indescriptible: ver o teu nome en algo que levas posto, saber que axudas a moita xente no proceso e aprender a facelo mellor todos os días. ¿Pode haber algo mellor que isto? 🙂

En conclusión:

Prometinme a min curta esta publicación, pero non creo que fose tan curta como esperaba que fose 😛. De todos os xeitos, espero que isto vos espertou a curiosidade para comezar a colaborar en proxectos FOSS. E pronto poderás ver os teus compromisos en moitos programas que usas a diario 😉 discúlpame por poñer tanto énfase niso, pero debes entender que ninguén pode mellorar algo que non sabe e por iso é esencial sabelo antes de melloralo 🙂

lembranzas

 


O contido do artigo adhírese aos nosos principios de ética editorial. Para informar dun erro faga clic en aquí.

8 comentarios, deixa os teus

Deixa o teu comentario

Enderezo de correo electrónico non será publicado. Os campos obrigatorios están marcados con *

*

*

  1. Responsable dos datos: Miguel Ángel Gatón
  2. Finalidade dos datos: controlar SPAM, xestión de comentarios.
  3. Lexitimación: o seu consentimento
  4. Comunicación dos datos: os datos non serán comunicados a terceiros salvo obrigación legal.
  5. Almacenamento de datos: base de datos aloxada por Occentus Networks (UE)
  6. Dereitos: en calquera momento pode limitar, recuperar e eliminar a súa información.

  1.   Cristián dixo

    Comparto as túas ideas, comparto e colaboro, debería ser o noso futuro. Espero que máis xente o entenda. Bo post teño curiosidade, é unha boa forma de entrar neste mundo de Github, moitas grazas!

    1.    ChrisADR dixo

      Moitas grazas por compartir a Cristhiam, como dis, é unha experiencia marabillosa e algo que todos deberiamos probar polo menos unha vez na vida. E vou ver se este tema tamén che interesa e quizais fagamos algunhas guías rápidas (moito máis rápido que Gentoo, por suposto) para que poidas comezar a compartir coas comunidades 😉 Un saúdo

  2.   luen12 dixo

    Excelente publicación! Deixaches claro as cousas nas que teño que centrarme antes de comezar a colaborar en proxectos FOSS. Moitas grazas, despexáchesme de varias dúbidas.

    Agardo a publicación de como facer o Pull Recuest. Saúdos da República. Dominicano.

    1.    ChrisADR dixo

      Ola Luen, moitas grazas polo teu comentario. Estou moi feliz de que estea interesado en compartir con proxectos, nese caso farei unha pequena guía sobre como enviar PR 🙂 Saúdos á República Dominicana 🙂

  3.   José Aguilar dixo

    Sigo moito desde DesdeLinux, pero estas publicacións no meu punto de vista están a mellorar a páxina, a lectura agradable e os datos interesantes, son Linuxero dende hai tempo, probei varias distros, tentei modificalas nalgunhas ocasións, non a un nivel avanzado, pero aquí estamos, grazas por compartir o coñecemento.

    1.    ChrisADR dixo

      Ola Jose,

      Moitas grazas polo teu comentario, motívame moito a seguir escribindo e compartindo con todos vós 🙂 Xa vin un par de relacións públicas no meu repositorio e iso faime moi feliz !! 🙂

      Saúdos,

  4.   deibis dixo

    Ola, boas tardes así.
    Unha consulta que é un PR .. ??
    Aínda non o entendo moi ben.

    1.    ChrisADR dixo

      ayy jajaja quizais debería explicalo mellor antes.

      Unha solicitude de extracción (como a súa tradución indica) é unha solicitude para extraer información. Neste caso, Github con isto dille ao propietario do proxecto «Mira! Teño no meu repositorio información que axuda ao proxecto, só tes que tirala de aquí ». Deste xeito, os propietarios do proxecto poden tomar a túa contribución e ao mesmo tempo aparecer como alguén que contribúe a el.

      Pode ser melloras menores, novas funcións ou máis documentación, o ceo é o límite 🙂

      Un saúdo, e espero que agora estea moito máis claro 🙂