Skip to content

Commit

Permalink
[Docs] Translated first chapter to Spanish
Browse files Browse the repository at this point in the history
As part of issue zenika-open-source#40, I translated the first chapter to Spanish.
  • Loading branch information
IvanitiX committed Oct 17, 2021
1 parent fe5b8e5 commit 6ae2fee
Show file tree
Hide file tree
Showing 2 changed files with 103 additions and 0 deletions.
2 changes: 2 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ White paper about Open Source by Zenika.

[French version](fr/01-getting-started.md) (an audio file is [available](fr/01-getting-started.mp3))

[Spanish version](es/01-getting-started.md)

### Chapter 2: Preparing your project being open sourced

> What are the pre-requisites before open sourcing a project?
Expand Down
101 changes: 101 additions & 0 deletions es/01-getting-started.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
# Capítulo 1 : Poniéndonos en marcha 🥚

El mundo del Open Source (o Código Abierto) es vasto y puede ser fácil perderse en éste. Al empezar, este mundo puede parecer inaccesible e intimidante, por lo que una de las preguntas en este punto es: ¿Por dónde empiezo? ¿Qué reglas y códigos de conducta tengo que seguir? ¿Puedo contribuir si ni siquiera sé programar?
No te preocupes, en este artículo os daremos todos los consejos que necesites para empezar con buen pie, elegir un buen proyecto para colaborar y así enviar tu primera contribución.

## Primeros pasos 🐣

Lo primero que habría que hacer es decidir en qué proyecto quieres empezar a hacer tu primera contribución. Teniendo en cuenta que hay millones de proyectos Open Source, puede ser difícil encontrar tal proyecto.

Una primera idea, quizás la más simple, sería **identificar proyectos que te gusten, que suelas usar o que signifiquen mucho para ti.** Será más fácil empezar en un entorno familiar que te pueda mantener motivado a colaborar a largo plazo.

También es importante tener en cuenta la madurez del proyecto y su envergadura.  Puede ser tentador empezar con frameworks grandes, librerías o herramientas como VS Code, MongoDB, Android, React…. Este tipo de proyectos tienen muchos colaboradores y muchos bugs por arreglar o características por añadir. Las contribuciones en este tipo de proyectos suelen dar algo de satisfacción cuando estas acaban siendo integradas; pero debido a que estos proyectos tienen millones de líneas de código, no son la mejor elección para empezar en el Open Source. Esas comunidades ya están bien desarrolladas y mucha gente se dedica a ofrecer contribuciones que sólo unos pocos mantenedores han de revisar. Por lo tanto, se puede tardar un tiempo antes de que tu contribución sea estudiada y potencialmente acabe siendo aceptada.

**Empezar en proyectos más pequeños con potencial es una mejor manera de empezar.** Echa un ojo a proyectos en auge, por ejemplo en [GitHub trending](https://github.com/trending/javascript?since=monthly), y encuentra aquellos que coincidan con tus intereses.

Otra buena manera de identificar un proyecto adecuado para ti es **elegir aquellos que estén buscando activamente a colaboradores.** Algunas páginas y herramientas pueden ayudar a ello:

* [Awesome for beginners](https://github.com/MunGell/awesome-for-beginners) es una lista de proyectos que buscan colaboradores (sean principiantes o no) listando sus *"Good First Issues"*. De la misma manera, la página [Up for grabs](https://up-for-grabs.net) hace posible encontrar proyectos en busca de colaboradores.

* [CodeTriage](https://www.codetriage.com/) es una herramienta para suscribirse a proyectos Open Source y recibir nuevas peticiones para colaborar a estos cada día.

* [First contributions](https://firstcontributions.github.io/) es un poco distinto. Se trata de un workshop para hacer tu primera contribución en menos de cinco minutos. Introduce la base y el flujo de trabajo de Git para hacer contribuciones en GitHub. Además de este tutorial, la página ofrece enlaces a *"Good First Issues"* en proyectos de GitHub grandes.

* Organizaciones y eventos como [HacktoberFest](https://hacktoberfest.digitalocean.com/) son también  una buena manera de empezar en proyectos que buscan colaboradores. Por ejemplo, el [hack.commit.push](https://hack-commit-pu.sh/) organiza un día de desarrollo Open Source, indiferentemente de tu nivel. Se empieza con una serie de workshops de iniciación, que siguen luego con contribuciones en proyectos Open Source con ayuda de mentores.

Una vez hayas encontrado tu proyecto de ensueño (o varios de estos), necesitarás dedicarte a leer sobre esos proyectos. El archivo README es un buen punto de partida para tener una visión general del proyecto. El Código de Conducta y la Guía de Contribuciones están más enfocados en cómo interactuar con el proyecto y su comunidad. No son muy largos de leer, pero son obligatorios de leer antes de hacer una contribución. Te dará todos los consejos, reglas y procedimientos que hay que seguir para permitir la consistencia y mantenimiento del proyecto.

**El código de conducta**

**Muchos de los proyectos Open Source tienen un código de conducta.** Permite a los mantenedores del proyecto definir las reglas y comportamientos a adoptar en su proyecto.

Los puntos esenciales de este código definen las reglas que deben seguir los participantes. Aprende a respetar diferentes puntos de vista, escucha y acepta el feedback de tus contribuciones. Ten entre tus expectativas que hayan potenciales desacuerdos sobre lo que se ha contribuido; así que no te lo tomes a pecho. A veces, durante las revisiones, es posible que los individuos no estén de acuerdo con algunas decisiones o aproximaciones que se hayan tomado. Por lo tanto es muy importante ser profesional y respetar el Código de Conducta. Todo feedback es valioso y es durante estas discusiones donde más se aprende.

**También es muy importante ser paciente.** Algunos proyectos Open Source se mantienen en el tiempo libre de alguien. Puede tomarse un buen tiempo en que tu contribución se pueda revisar o aceptar.

Aquí tienes un ejemplo del Código de Conducta que se usa en algunos proyectos: [*Contributor convenant*](https://www.contributor-covenant.org/). Las reglas que se definen deberían aplicarse tanto en el mundo del Open Source como en entornos más profesionales.

**La guía de contribuciones**

Este documento define los flujos y maneras de trabajar en el proyecto, además de ayudar a entender los estándares y expectativas de la comunidad. Por ejemplo:
* ¿Cómo monto mi entorno de desarrollo?
* ¿Cómo publico una issue?
* ¿Qué estándares han de seguirse en los commits?
* ¿Qué expectativas han de cumplirse con los tests?

Si una contribución no sigue estas prácticas, puede que acabe siendo rechazada antes siquiera de que alguien lo revise. Estos estándares sirven para mantener la coherencia en el proyecto pero también para ahorrar tiempo a quienes mantienen el proyecto. Por eso, léelo con atención.

**Únete a la comunidad**

Un proyecto no sólo se limita a la documentación y el código fuente. Es también importante entender e interactuar con la comunidad del proyecto. Hay diferentes roles en un proyecto Open Source. Los tres principales:
* Los mantenedores o colaboradores core, que están desde el principio del proyecto o han sido invitados a este rol gracias a todas las contribuciones que se han hecho.
* Colaboradores, quienes participan en la vida del proyecto ofreciendo contribuciones (documentación, arreglos de bugs...), respondiendo preguntas o abriendo tickets.
* Y los Usuarios, quienes usarán el proyecto y muchas veces darán feedback, mandan bugs, proponen mejoras o preguntan en foros.

Las vías de comunicación en la comunidad varían según el proyecto. Puede ser una mailing list, un canal de Slack, un grupo de Discord u otra herramienta de este tipo. Ahí podrás hacer preguntas, ayudar a definir roadmaps, o simplemente discutir con otros.

## Tu primera contribución 🐥

Ahora que has identificado un proyecto que te interese y hayas leído la documentación necesaria para empezar, estás listo para ofrecer tu primera contribución al mundillo.

Sobre todo, no necesitas saber cómo programar para contribuir a proyectos Open Source:
* ¿Te gusta escribir? Corrige o desarrolla la documentación del proyecto.
* ¿Eres un maestro del diseño? Crea un logo o una página web para el proyecto.
* ¿Te gusta comunicar? Responde a las preguntas de la comunidad

Todas las contribuciones son válidas y ayudan al proyecto. Aquí tienes una lista de tareas (no muy exhaustiva) que se pueden hacer para ayudar a este tipo de proyectos:

**Documentación**

* Escribe y corrige la documentación del proyecto
* Traduce la documentación a otros idiomas.

**Organización**

* Reporta bugs o propón nuevas características
* Responde a los issues, archívalos y ciérralos de ser necesario.
* Responde a las preguntas que surjan (por ejemplo en GitHub, Stack Overflow...)

**Comunicación**

* Escribe artículos o tutoriales
* Organiza charlas o conferencias sobre el proyecto;
* Comenta por Twitter (nuevas versiones, contribuciones...);
* Crea un diseño para el proyecto (logo, colores...);
* Diseña una página web para el proyecto.

**Programación**

* Revisa los Códigos de Conducta;
* Diseña y desarrolla tests;
* Automatiza el proyecto (CI, CD...);
* Arregla bugs;
* Añade nuevas características.

Si no sabes dónde empezar, consulta la lista de issues abiertos en el proyecto. En muchos de ellos, algunos tickets se identifican con etiquetas como *"Good First Issues"* o *"Beginner"*. Están identificadas por los colaboradores principales como contribuciones simples y tomas de contacto con el proyecto. También puedes echar un ojo a los tickets categorizados como *"Help needed/wanted"*, que esperan a que alguien pueda asignarse tal tarea.

Cuando hayas identificado una issue o un ticket al que deseas contribuir, deberías ubicarte en el contexto del proyecto. Así que no dudes en preguntar a otros colaboradores para pedir información. Las discusiones e intercambios de información son esenciales para empezar una nueva contribución. Te guiarán a través de las expectativas de la comunidad, cómo validar una solución técnica o identificar restricciones o dificultades potenciales.

Antes de publicar tu primera contribución, comprueba tu código y no dudes en probarlo antes de enviarlo. No dudes tampoco en explicar el contexto y documentar tu contribución. Todo lo que ayude a otros colaboradores y mantenedores del proyecto para revisar la contribución harán acelerar ese proceso.

Finalmente, cuando hayas hecho tu primera contribución, no olvides publicarlo y compartirlo con el mundo a través de Twitter, Facebook o tu red social de preferencia.

0 comments on commit 6ae2fee

Please sign in to comment.