En este artículo vamos a listar una recopilación libros, artículos técnicos y casos de estudio relacionados con la programación que están disponibles de manera gratuita en Internet. Si tienes ganas de ampliar tus conocimientos sin invertir ni un solo euro sigue leyendo.
Empezamos con Google y GitHub
Si quieres encontrar recursos sobre programación, Google y GitHub son las plataformas donde sin duda empezarás a buscar.
De la mano de GitHub encontramos una lista con centenares de libros y recursos gratis sobre programación y temas relacionados que, la verdad, son dignos de que le echeis un ojo. Podéis encontrar un índice con enlaces a todos ellos aquí, cosa que sin duda os recomiendo que hagáis. Desde lenguajes de programación clásicos (C/C++, Java, Python...) hasta plataformas móviles como Android u optimización de Webs, un completisimo repositorio que sin duda debes tener siempre a mano.
Por su parte, el gigante de la tecnología Google ofrece multitud de herramientas para encontrar libros gratuitos. Google, a parte de ofrecernos sus clásicas búsquedas a las que todos acudimos, ofrece servicios para encontrar libros y documentos, entre los que encontramos un porcentaje bastante elevado cuya temática está relacionada con el mundo de los bits. Usad herramientas como la Búsqueda de Libros de Google y descubriréis que hay muchísimos gratuitos. Además servicios como la Búsqueda de Google Académico también son de gran ayuda para este fin.
Lista de selección de libros de TopTal
Para los que no lo concais, TopTal es un portal sobre ingenieros (primordialmente informáticos) que trata de acoger a la élite en este ámbito. Pone en contacto a desarrolladores de gran talento con las mejores empresas. Su proceso de selección es brutalmente estricto, por lo que sólo el 3% de los candidatos consigue ser aceptado.Los chicos de TopTal han hehco un recopilatorio con los mejores libros de programación gratuitos bajo su criterio, el cual (bajo mi punto de vista) es de gran peso. A continuación os pongo las categorías y los enlaces a los libros relacionados:
Android
- Google Android Developer Training es evidentemente el principal recurso para aprender Android. En este portal encontramos una descripción muy bien detallada sobre el ecosistema Android y gran cantidad de buenas prácticas.
- Free Android Programming Guide For Begginers es un curso de 10 capítulos que te enseña los principales conceptos sobre Android.
- Android Tutorial de Tuturials Point’s es otro libro para principiantes con multitud de ejemplos de código.
- Coreservlets ofrece una gran cantidad de tutoriales sobre Android de una amplia temática.
- Si lo que quieres es aprender sobre diseño de interfaces, stylingandroid nos guía a través de este tema.
C Sharp, C, C++
- The Beginner’s Guide to C# and the .NET Micro Framework es una publicación reciente de GHI Electronics breve, pero concisa, que te ayuda a empezar en la plataforma.
- The C# Programming Yellow Book es un libro publicado por la Universidad de Hull en la cual es usado como material docente. Se actualiza de manera regular.
- Para campos más especificos, puedes revisar Data Structures and Algorithms with Object-Oriented Design Patterns in C# o Threading in C# de Joseph Albahari.
- Sobre C y C++ encontramos un recopilatorio bastante completo de la mano de Stack Overflow en este hilo.
- Si lo tuyo es C puro, revisa C Wikibook, Deep C and C++ y Learn C The Hard Way.
Git
- Si no estas seguro de que Git sea tu plataforma de control de versiones, Version Control by Example te ayudará a elegir entre Subversion de Apache, Mercurial, Git, y Veracity.
- Git Magic cortesía de Stanford es otro recurso de calidad disponible en multitud de idiomas, incluyendo el castellano.
- The GitHub Cheat Sheet es una muy útil colección de trucos y características ocultas sobre Git y GitHub.
HTML and CSS
- Google HTML/CSS Style Guide es un recurso para perfeccionar nuestra programación web que contiene gran cantidad de buenas prácticas.
- Learn to Code HTML & CSS y Learn to Code Advanced HTML & CSS de Shay Howe son 2 guías sencillas con distintas curvas de aprendizaje que permiten aprender o mejorar tus conocimientos.
- Si ya sabes HTML y lo que quieres es mejorar tus conocimientos prueba con Dive Into HTML5.
- Otros recursos sobre HTML5 son HTML5 Canvas, HTML5 For Web Designers y HTML5 for Publishers.
iOS
Hace 5 años, Apple publicó una serie de libros electrónicos gratuitos para programar en iOS (Cocoa Fundamental’s Guide, The Objective-C Programming Language, iOS Application Programming Guide, Object Oriented Programming With Objective-C, iOS Technology Overview, e iOS Human Interface Guidelines) que se distribuyen vía iBookStore.- Apple también ofrece Start Developing iOS Apps Today para desarrolladores que deseen iniciarse.
- iOS Succinctly de Syncfusion y iOS 8 App Development Essentials de Techotopia son muy recomendables también.
- Para iniciarse en el nuevo lenguaje de programación Swift, Apple nos proporciona The Swift Programming Language.
Java
- Thinking in Java de Bruce Eckel es uno de los más recomendados.
- Java Style Guide de Google es un libro que deben leer tanto novatos como veteranos.
- Los tutoriales sobre Java de Sun son un recurso muy útil también.
- La Universidad de Princeton nos proporciona el libro de texto con el cual podemos seguir su plan de estudios.
JavaScript
- Learning JavaScript Design Patterns de Addy Osmani nos enseña fácilmente a introducir patrones de diseño en nuestros programas JavaScript.
- Programming JavaScript Applications de Eric Elliott es un libro publicado por O’Rilley que está disponible gratuitamente en formato HTML.
- También debes tener a mano Google JavaScript Style Guide.
PHP
- Hacking With PHP (anteriormente conocido como Practical PHP Programming) es un recurso constantemente actualizado que proporciona multitud de información sobre PHP 5.6.
- PHP Best Practices es un recurso autoexplicativo y actualizado que nos ayuda a mejorar nuestra codificación en PHP.
- Si estas buscando un todo en uno, el Wikibook PHP Programming es lo que necesitas.
- Si utilizas un framework como Laravel el mejor recurso es la documentación oficial.
Perl
- Impatient Perl de Greg London es una guía de referencia rápida perfecta para los que estáis empezando.
- Modern Perl es una publicación reciente perfecta para desarrolladores que tienen experiencia en Perl y necesitan refrescar sus habilidades.
- Mastering Perl de O’Rilley no es precisamente la publicación más reciente sobre Perl, pero sigue siendo un buen recurso con un montón de tutoriales.
Python
- Google ofrece una completa clase de Python así como la típica Python Style Guide.
- New Mexico Tech ofrece una guía fácil sobre las características más comunes de Python que pueden hacer ahorrar bastante tiempo a los novatos.
- Dive Into Python 3 de Mark Pilgrim explica todo lo necesario para pasar a Python 3.x, por lo que es una buena elección para los que necesitéis actualizaros.
Ruby and Ruby on Rails
- Learn Ruby The Hard Way es una colección de ejercicios que te permiten aprender de manera práctica.
- The Ruby Style Guide, alojada en GitHub, documenta el estilo y buenas prácticas del lenguaje.
- Ruby in 20 Minutes es un pequeño tutorial hecho para novatos.
- Ruby on Rails Style Guide es otra guía de GitHub enfocada en el estilo y las buenas prácticas.
- Ruby on Rails 4.0 Guide te enseña de manera exhaustiva los conceptos sobre la versión 4 de Ruby on Rails.
- Learn Ruby on Rails as You Modify a Craigslist Clone es un tutorial práctico de gran ayuda para novatos.
Vía TopTal.