¡Gracias por tu interés en contribuir al currículo de Ciencia de Datos para Principiantes! Apreciamos las contribuciones de la comunidad.
- Código de Conducta
- ¿Cómo puedo contribuir?
- Primeros pasos
- Guías de contribución
- Proceso de Pull Request
- Guías de estilo
- Acuerdo de Licencia para Contribuidores
Este proyecto ha adoptado el Código de Conducta de Microsoft Open Source.
Para más información, consulta las Preguntas Frecuentes sobre el Código de Conducta
o contacta a opencode@microsoft.com para cualquier pregunta o comentario adicional.
Antes de crear reportes de errores, revisa los problemas existentes para evitar duplicados. Al crear un reporte de error, incluye tantos detalles como sea posible:
- Usa un título claro y descriptivo
- Describe los pasos exactos para reproducir el problema
- Proporciona ejemplos específicos (fragmentos de código, capturas de pantalla)
- Describe el comportamiento observado y lo que esperabas
- Incluye detalles de tu entorno (SO, versión de Python, navegador)
¡Las sugerencias de mejoras son bienvenidas! Al sugerir mejoras:
- Usa un título claro y descriptivo
- Proporciona una descripción detallada de la mejora sugerida
- Explica por qué esta mejora sería útil
- Enumera características similares en otros proyectos, si aplica
Las mejoras en la documentación siempre son apreciadas:
- Corrige errores tipográficos y gramaticales
- Mejora la claridad de las explicaciones
- Añade documentación faltante
- Actualiza información desactualizada
- Incluye ejemplos o casos de uso
Aceptamos contribuciones de código, incluyendo:
- Nuevas lecciones o ejercicios
- Corrección de errores
- Mejoras a notebooks existentes
- Nuevos conjuntos de datos o ejemplos
- Mejoras a la aplicación de cuestionarios
Antes de contribuir, asegúrate de tener:
- Una cuenta de GitHub
- Git instalado en tu sistema
- Python 3.7+ y Jupyter instalados
- Node.js y npm (para contribuciones a la aplicación de cuestionarios)
- Familiaridad con la estructura del currículo
Consulta INSTALLATION.md para instrucciones detalladas de configuración.
-
Haz un fork del repositorio en GitHub
-
Clona tu fork localmente:
git clone https://github.com/YOUR-USERNAME/Data-Science-For-Beginners.git cd Data-Science-For-Beginners -
Añade el remoto upstream:
git remote add upstream https://github.com/microsoft/Data-Science-For-Beginners.git
Crea una nueva rama para tu trabajo:
git checkout -b feature/your-feature-name
# or
git checkout -b fix/your-bug-fixConvenciones para nombrar ramas:
feature/- Nuevas características o leccionesfix/- Corrección de erroresdocs/- Cambios en la documentaciónrefactor/- Refactorización de código
Al contribuir con lecciones o modificar las existentes:
-
Sigue la estructura existente:
- README.md con el contenido de la lección
- Notebook de Jupyter con ejercicios
- Tarea (si aplica)
- Enlace a cuestionarios previos y posteriores
-
Incluye estos elementos:
- Objetivos de aprendizaje claros
- Explicaciones paso a paso
- Ejemplos de código con comentarios
- Ejercicios para practicar
- Enlaces a recursos adicionales
-
Asegúrate de que sea accesible:
- Usa lenguaje claro y sencillo
- Proporciona texto alternativo para imágenes
- Incluye comentarios en el código
- Considera diferentes estilos de aprendizaje
-
Limpia todas las salidas antes de hacer el commit:
jupyter nbconvert --clear-output --inplace notebook.ipynb
-
Incluye celdas de markdown con explicaciones
-
Usa un formato consistente:
# Import libraries at the top import pandas as pd import numpy as np import matplotlib.pyplot as plt # Use meaningful variable names # Add comments for complex operations # Follow PEP 8 style guidelines
-
Prueba tu notebook completamente antes de enviarlo
Sigue las guías de estilo de PEP 8:
# Good practices
import pandas as pd
def calculate_mean(data):
"""Calculate the mean of a dataset.
Args:
data (list): List of numerical values
Returns:
float: Mean of the dataset
"""
return sum(data) / len(data)Al modificar la aplicación de cuestionarios:
-
Prueba localmente:
cd quiz-app npm install npm run serve -
Ejecuta el linter:
npm run lint
-
Construye exitosamente:
npm run build
-
Sigue la guía de estilo de Vue.js y los patrones existentes
Al añadir o actualizar traducciones:
- Sigue la estructura en la carpeta
translations/ - Usa el código de idioma como nombre de carpeta (por ejemplo,
frpara francés) - Mantén la misma estructura de archivos que la versión en inglés
- Actualiza los enlaces de los cuestionarios para incluir el parámetro de idioma:
?loc=fr - Prueba todos los enlaces y el formato
-
Actualiza tu rama con los últimos cambios:
git fetch upstream git rebase upstream/main
-
Prueba tus cambios:
- Ejecuta todos los notebooks modificados
- Prueba la aplicación de cuestionarios si fue modificada
- Verifica que todos los enlaces funcionen
- Revisa errores ortográficos y gramaticales
-
Haz commit de tus cambios:
git add . git commit -m "Brief description of changes"
Escribe mensajes de commit claros:
- Usa tiempo presente ("Añadir característica" en lugar de "Añadido característica")
- Usa modo imperativo ("Mover cursor a..." en lugar de "Mueve cursor a...")
- Limita la primera línea a 72 caracteres
- Referencia problemas y pull requests cuando sea relevante
-
Haz push a tu fork:
git push origin feature/your-feature-name
- Ve al repositorio
- Haz clic en "Pull requests" → "New pull request"
- Haz clic en "compare across forks"
- Selecciona tu fork y rama
- Haz clic en "Create pull request"
Usa títulos claros y descriptivos siguiendo este formato:
[Component] Brief description
Ejemplos:
[Lesson 7] Fix Python notebook import error[Quiz App] Add German translation[Docs] Update README with new prerequisites[Fix] Correct data path in visualization lesson
Incluye en la descripción de tu PR:
- Qué: ¿Qué cambios realizaste?
- Por qué: ¿Por qué son necesarios estos cambios?
- Cómo: ¿Cómo implementaste los cambios?
- Pruebas: ¿Cómo probaste los cambios?
- Capturas de pantalla: Incluye capturas para cambios visuales
- Problemas relacionados: Enlace a problemas relacionados (por ejemplo, "Fixes #123")
- Se ejecutarán verificaciones automáticas en tu PR
- Los mantenedores revisarán tu contribución
- Aborda los comentarios realizando commits adicionales
- Una vez aprobado, un mantenedor fusionará tu PR
-
Elimina tu rama:
git branch -d feature/your-feature-name git push origin --delete feature/your-feature-name
-
Actualiza tu fork:
git checkout main git pull upstream main git push origin main
-
Usa niveles de encabezado consistentes
-
Incluye líneas en blanco entre secciones
-
Usa bloques de código con especificadores de lenguaje:
```python import pandas as pd ```
-
Añade texto alternativo a las imágenes:
 -
Mantén las líneas con una longitud razonable (alrededor de 80-100 caracteres)
- Sigue la guía de estilo PEP 8
- Usa nombres de variables significativos
- Añade docstrings a las funciones
- Incluye sugerencias de tipo cuando sea apropiado:
def process_data(df: pd.DataFrame) -> pd.DataFrame: """Process the input dataframe.""" return df
- Sigue la guía de estilo de Vue.js 2
- Usa la configuración de ESLint proporcionada
- Escribe componentes modulares y reutilizables
- Añade comentarios para lógica compleja
- Mantén los archivos relacionados juntos
- Usa nombres de archivo descriptivos
- Sigue la estructura de directorios existente
- No hagas commit de archivos innecesarios (.DS_Store, .pyc, node_modules, etc.)
Este proyecto acepta contribuciones y sugerencias. La mayoría de las contribuciones requieren que aceptes un Acuerdo de Licencia para Contribuidores (CLA) declarando que tienes el derecho de, y efectivamente, nos otorgas los derechos para usar tu contribución. Para más detalles, visita
https://cla.microsoft.com.
Cuando envíes un pull request, un bot de CLA determinará automáticamente si necesitas proporcionar un CLA y decorará el PR apropiadamente (por ejemplo, etiqueta, comentario). Simplemente sigue las instrucciones proporcionadas por el bot. Solo necesitarás hacer esto una vez en todos los repositorios que usen nuestro CLA.
- Consulta nuestro Canal de Discord #data-science-for-beginners
- Únete a nuestra comunidad de Discord
- Revisa los problemas existentes y pull requests
Tus contribuciones hacen que este currículo sea mejor para todos. ¡Gracias por tomarte el tiempo de contribuir!
Descargo de responsabilidad:
Este documento ha sido traducido utilizando el servicio de traducción automática Co-op Translator. Aunque nos esforzamos por garantizar la precisión, tenga en cuenta que las traducciones automatizadas pueden contener errores o imprecisiones. El documento original en su idioma nativo debe considerarse como la fuente autorizada. Para información crítica, se recomienda una traducción profesional realizada por humanos. No nos hacemos responsables de malentendidos o interpretaciones erróneas que puedan surgir del uso de esta traducción.