free-programming-books

:books: Freely available programming books

View the Project on GitHub EbookFoundation/free-programming-books

Lea esto en otros idiomas

Acuerdo de Licencia

Al contribuir, acepta la LICENCIA de este repositorio.

Código de Conducta como Colaborador

Al contribuir, acepta respetar el Código de Conducta (traducciones / otros idiomas) presente en el repositorio.

Breve resumen

  1. “Un enlace para descargar fácilmente un libro” no siempre es un enlace a un libro gratuito. Por favor, contribuya solo con contenido gratuito. Asegúrese de que se ofrezca gratis. No se aceptan enlaces a páginas que requieran de direcciones de correo electrónico para la obtención de libros, pero sí damos la bienvenida a aquellos listados que así se soliciten.

  2. No es necesario conocer Git: si encontró algo de interés que no esté ya en este repositorio, tenga el gusto de abrir una Issue con su propuesta de enlaces.
    • Si ya maneja Git, haga un Fork del repositorio y envíe su contribución mediante Pull Request (PR).
  3. Dispone de 6 categorías. Seleccione aquel listado que crea conveniente según:

    • Libros : PDF, HTML, ePub, un recurso alojado en gitbook.io, un repositorio Git, etc.
    • Cursos : Un curso es aquel material de aprendizaje que no es un libro. Esto es un curso.
    • Tutoriales interactivos : Un sitio web se considera interactivo si permite al usuario escribir código o comandos y evaluar su resultado (“evaluar” no significa “obtener una calificación”). Por ejemplo: Pruebe Haskell, Pruebe GitHub.
    • Playgrounds : se tratan de sitios en línea interactivos, juegos o software de escritorio cuyo fin es el de aprender programación. Permiten escribir, compiar (o ejecutar), y compartir partes de código fuente. A menudo, ofrecen la posibilidad de hacer bifurcaciones y ensuciarse las manos jugando con el código generado hasta dicho instante.
    • Podcasts y Screencasts : Son aquellas retransmisiones grabadas ya sea en audio y/o en vídeo, respectivamente.
    • Conjuntos de problemas & Programación competitiva : Se trata de un sitio web o software que le permita evaluar sus habilidades de programación resolviendo problemas simples o complejos, con o sin revisión de código, con o sin comparar los resultados con otros usuarios.
  4. Asegúrese de seguir la guía de pautas que mostramos a continuación así como de respetar el formato Markdown de los ficheros.

  5. GitHub Actions ejecutará pruebas para asegurarse de que las listas esten ordenadas alfabéticamente y de que se siga dicha normalización de formateo. Asegúrese de verificar que sus cambios pasen todas estas comprobaciones de calidad.

Pautas

Formato normalizado

La idea es tener:

Ejemplo:

[...]
* [Un libro increíble](http://example.com/example.html)
                                (línea en blanco)
                                (línea en blanco)
### Sección de ejemplo
                                (línea en blanco)
* [Otro libro fascinante](http://example.com/book.html)
* [Otro libro más](http://example.com/other.html)

Ordenación alfabética

En cualquier caso o si por casualidad encontrase un enlace fuera de lugar, compruebe el mensaje de error que facilita nuestro linter. Le permitirá saber las líneas de código que debe intercambiar.

Anotaciones

Si bien los conceptos básicos son relativamente simples, existe una gran diversidad entre los recursos que enumeramos. Aquí hay algunas notas sobre cómo nos ocupamos de esta diversidad.

Metadatos

Nuestros listados proporcionan un conjunto mínimo de metadatos: títulos, URL, autores, formato, plataformas y notas de acceso.

Títulos

Direcciones URL

Atribuciones

Cursos y pruebas de tiempo limitado

Plataformas y Notas de Acceso

Géneros

La primera regla para decidir en qué listado encaja un determinado recurso es ver cómo se describe a sí mismo. Si por ejemplo se retrata a sí mismo como un libro, entonces tal vez es que lo sea.

Géneros no aceptados

Ya que en Internet podemos encontrar una variedad infinita de recursos, no incluimos en nuestro registro:

El listado donde incluimos sitios o software de programación competitiva no es tan restrictivo. El alcance de este repositorio es determinado por la comunidad; si desea sugerir un cambio o extender el alcance, utilice los issues para registrar dicha sugerencia.

Libros vs. Otro Material

No somos tan quisquillosos con lo que consideramos como libro. A continuación, se muestran algunas propiedades que un recurso pueda encajar como libro:

Hay muchos libros que enumeramos los cuáles no poseen estos atributos; esto puede depender del contexto.

Libros vs. Cursos

¡A veces distinguir puede ser dificultoso!

Los cursos suelen tener libros de texto asociados, que incluiríamos en nuestras listas de libros. Además, los cursos tienen conferencias, ejercicios, pruebas, apuntes u otras ayudas didácticas. Una sola conferencia o vídeo por sí solo no es un curso. Un presentación de PowerPoint tampoco puede ser catalogado como curso.

Tutoriales interactivos vs. Otro Material

Si es posible imprimirlo y conservar su esencia, no es un Tutorial Interactivo.

Automatización