¿Los ingenieros de software compran libros de lenguaje de programación?

Conozco muchos buenos desarrolladores / ingenieros de software que no compran libros activamente. La mayoría solo usa Google, Quora o StackOverflow. Yo, por otro lado … oh chico, ¿alguna vez? Tengo más de 1,000 libros de programación de computadoras. Me encanta leer, aprender y, lo más importante, coleccionar libros que adornan mi estante para que me vea y me sienta inteligente.

En Internet, si no hay imagen, nunca sucedió. Aquí está mi garaje desde hace dos meses antes de cargarlo por completo:

Puedo decir honestamente saber qué libros son buenos, cuáles son un desperdicio de dinero y cómo detectar los buenos ahora.

No compro tantos como solía, pero prefiero un buen libro de tecnología en lugar de una búsqueda en Google para un aprendizaje en profundidad. También prefiero papel sobre digital.

He leído la mayoría de ellos, de una forma u otra. Por lo general, úselos como referencia o información especializada sobre un tema específico. Pero trato de obtener lo que puedo de cada uno. Algunos tienen mucha información y no son prácticos, pero los utilicé para expandir mi mente. Otra cosa inútil para la que son buenos: puedo reconstruir sin ayuda la evolución de la informática desde mediados de los 80 en adelante. No se muestra la colección completa (incluido el número 1) de Microsoft Systems Journal, MSDN Mag, C ++ Users Journal, Java Users Journal (o como se llamaron), y algunos otros, Diseño web, net mag, etc.

Soy una excepción (juego de palabras), no la regla.

La mayoría de los ingenieros de software no compran muchos libros de programación. La explicación para esto es más o menos lo que esperarías:

  • los libros son caros y, a menudo, menos precisos o actualizados que la documentación oficial en línea
  • los libros a menudo se escriben en un estilo de tutorial, lo que da como resultado un texto que es más grande, menos completo y más difícil de navegar que los manuales de referencia
  • los libros son inferiores a StackOverflow en términos de responder preguntas prácticas muy específicas o ser depósitos de las mejores prácticas
  • los idiomas nuevos u oscuros a menudo no tienen buenos libros sobre ellos o esos libros están agotados

Dicho esto, encuentro que comprar libros de estilo de referencia (o libros con apéndices de estilo de referencia) a menudo vale la pena para los idiomas que uso con frecuencia, particularmente si la documentación en línea es difícil de navegar.

Tengo una copia muy querida de Programación en Lua (aunque Lua tiene una excelente documentación en línea) porque el cambio de contexto entre el libro y mi código es un poco más fácil que el cambio de contexto entre mi código y el sitio web cuando trabajo en 5.0 o 5.1. También tengo copias impresas de la documentación de Oracle con post-it para el comienzo de cada letra en el apéndice del comando, porque a pesar de ser bastante básico, el sitio oficial de documentación de Oracle tarda casi un minuto en cargar una página y no tiene incorporado capacidad de búsqueda

Los sistemas con ayuda en línea en REPL (como python) o con páginas de manual completas y bien estructuradas (como awk) generalmente son aquellos en los que puedo renunciar a un libro físico, pero muchos idiomas realmente esperan que mantenga un navegador abierto y usa sus documentos en línea. (Desarrolladores de idiomas: haga que su documentación sea accesible desde su REPL y desde las páginas de manual; los navegadores web son grandes y lentos incluso en el mejor de los casos, y asegurarse de que las personas necesiten acceso a Internet para leer su documentación es totalmente innecesario).

No puedo recomendar comprar libros de programación que carecen de una sección de referencia; después de todo, tales libros son esencialmente tutoriales o libros de cocina y, por lo tanto, son casi completamente inútiles después de las primeras etapas de aprender un idioma. (Además de esto, los tutoriales y los libros de cocina para todo tipo de idiomas están disponibles en línea, y apenas hay una diferencia de calidad entre los tutoriales de programación de aficionados y profesionales).

Aquí están los libros que compré en línea:

Java Puzzlers – Libros en Google Play *

Entrega continua – Libros en Google Play

The MPS Language Workbench – Libros en Google Play *

Aprendizaje automático con R – Libros en Google Play *

Patrones de programación de juegos – Libros en Google Play

BPMN 2.0 – Libros en Google Play

Patrones de diseño y refactorización (patrones de diseño)

Patrones de diseño y refactorización (antipatrones)

Supongo que la respuesta es “sí”?

Ya no soy un programador, ni un probador. Soy un QA!

Como también reviso el código, tengo que seguir los proyectos (estoy involucrado de extremo a extremo, incluso al decidir quién hará qué y por qué costo), ¡necesito saber las cosas con las que estoy tratando!

Apuesto a que rápidamente encontrarás cuál es solo para pasatiempos personales 🙂

Por lo general, aprendo el idioma de las materias primas (especificaciones) porque puedo pagarlo intelectualmente.

El que abandoné por completo porque no lo captaría en pocas noches es Scala. ¡Su sistema de tipos es realmente complejo! (en comparación con, por ejemplo, Java, Kotlin, R, …)


* libros de lenguaje de programación o cerca de él

Depende de persona a persona. Para mí, es grande NO . porque el libro en rústica siempre es caro, así que digo que no para reservar. La mayoría de los lenguajes de programación constan del mismo concepto. Pero con diferente sintaxis. Comprar un nuevo libro para cada nuevo lenguaje de programación es un poco costoso. Por lo tanto, no sugeriré comprar un libro de bolsillo.

Fuente de la imagen: Google.

Tal vez su próxima pregunta sea como ‘Sin leer un libro, ¿cómo puede el programador aprender un lenguaje de programación?

A continuación había dado diferentes métodos para aprender un lenguaje de programación.

(1) Leer libro electrónico

Ok después de una larga búsqueda en Google. Podemos descargar la mayoría de los libros de forma gratuita. Entonces, ¿por qué gastar dinero comprando un libro nuevo?

(2) Tutorial en línea

Pruebe el nuevo Boston, Tutorialspoint, Khanacademy, etc. Estos sitios web también son muy útiles.

(3) Desbordamiento de pila

Si tiene problemas relacionados con la programación, haga su pregunta en StackOverflow. Pronto encontrará muchas soluciones a su problema.

(4) Cursos de video en línea

Youtube puede ayudar a aprender un nuevo lenguaje de programación. Tomar un curso gratuito sobre Udemy también es una buena idea. ¿Por qué no probar Coursera, Lynda, EDX, etc.?

Feliz aprendizaje 🙂

Libros sobre lenguajes de programación solo en mi biblioteca física:

  • El lenguaje de programación C
  • Sed y Awk
  • Perl libros (3)
  • Groovy en acción
  • Libros Scala (2)
  • Libros Haskell (3)
  • Esquema de libros (3)
  • Deja que Lambda (un libro de Lisp)
  • Siete idiomas en siete semanas (para ser sincero, puede administrar uno al día si está de vacaciones).
  • Un pequeño libro de C ++ de Bjarne Stroustrup que no puedo encontrar en este momento.
  • Fundamentos prácticos para lenguajes de programación

En formato de libro electrónico, tengo otros dos libros de Haskell y un libro de Erlang.

Y luego están los libros de programación . Menos de esos, pero luego son más universales.

La distinción es un poco confusa; He incluido libros sobre una técnica particular en un lenguaje particular (por ejemplo, Perl Orientado a Objetos, Programación Paralela y Paralela en Haskell) no libros de programación general. Ah, y los libros de 7ven Lang y Bob Harper son definitivamente sobre lenguajes en lugar de programación per se.

He tenido más libros de lenguaje de programación en total, con el tiempo, pero esos son los que he guardado. Algunos idiomas que solo quieres borrar de tu memoria …

Si por libros de “Lenguaje de programación” te refieres específicamente a “idiomas”, entonces no realmente, para eso está la documentación y la sintaxis no es tan difícil de aprender. ¿Cuántas veces necesita ver “esta es la forma de declarar una variable” y “este es un bucle ‘para’ …”? El mercado de libros impresos está claramente en declive, aunque todavía hay un mercado saludable para libros electrónicos y PDF.

Los únicos libros de “idioma” que compré / recibí fueron para jQuery (inmediatamente desactualizado), Obj-C y Swift (rápidamente desactualizado). Recientemente obtuve una copia nueva del “Lenguaje de programación C (ANSI)”: era gratis y quería ver qué vacíos en mi conocimiento podría ayudar a llenar.

En general, tiendo a comprar solo libros de programación sobre conceptos más amplios o basados ​​en proyectos. Creo que prefiero su explicación más detallada de “panorama general” frente a lo que puedo obtener de Google o tutoriales rápidos que pasan por alto los conceptos subyacentes.

Tengo libros sobre cómo funciona el hardware de la computadora, algoritmos (otro hallazgo gratuito), patrones de diseño (tapa dura prístina de GoF en una librería usada por $ 10), criptografía, arquitectura, enfoques de prueba y prácticas recomendadas de codificación. Todos estos son más universalmente aplicables y agnósticos al lenguaje.

También tengo algunos libros de “recetas”, centrados en tutorías y “HeadFirst” porque más son materiales prácticos y prácticos de “aprender haciendo”. El beneficio de un libro o PDF sobre video es que puede trabajar a su propio ritmo y hacer el trabajo en lugar de solo mirar pasivamente.

Un libro de “panorama general” que disfruté fue “CODE” de Charles Petzhold. Bien si aún no eres un ingeniero eléctrico o informático. Te lleva de los sistemas de señalización históricos a través de la lógica booleana a los interruptores físicos y las puertas lógicas de silicio, las matemáticas con binario y hexadecimal, el enrutamiento físico y el almacenamiento de la entrada / salida de señal en la memoria, y cómo todo eso lleva a una computadora que funciona que responde a la máquina idioma / código ensamblador, y finalmente a idiomas de nivel superior.

Simplemente no obtiene ese nivel de detalle de Stackoverflow o un blog, y ciertamente no quiero pasar días enteros leyendo 300pgs en línea. Preferiría verter una taza de algo y romper el libro en una silla cómoda.

Probablemente gasté £ 200-300 cada año en libros, y lo he hecho bastante desde que era estudiante: tengo una pila de libros en el trabajo, en casa y en el garaje (¿alguien necesita un libro Java 1.2?). Muchos, pero de ninguna manera todos, de mis colegas hacen lo mismo.

La razón es simple: en la mayoría de los campos solo eres tan bueno como lo que sabes, pero el sector tecnológico es particularmente brutal. Cuando comencé a programar, BASIC y Pascal eran de última generación y C era considerado un poco advenedizo. Las redes existentes existían principalmente de propiedad y Emacs era lo último en tecnología, pero era un fanático de la memoria.

Si no hubiera mantenido y mejorado mis habilidades, no estaría trabajando ahora. Aprendí nuevos lenguajes de programación, técnicas, campos tecnológicos y más. Cuento un día en el que no he aprendido algo significativo como un día perdido.

Ahora personalmente encuentro que aprendo bien de los libros. Me gusta el hecho de que no son lineales y que es fácil volver a consultarlos cuando intento hacer algo nuevo por mí mismo, por lo que los libros y los blogs bien escritos son mis herramientas de aprendizaje preferidas.

Algunas personas aprenden mejor de diferentes maneras, tal vez los podcasts son para ti, o video, o lo que sea. No tiene que comprar libros, pero sí necesita aprender.

Sí, compro libros.

Compré libros cuando comencé porque eso era anterior a www, y los libros eran todo lo que había.

Ahora compro libros porque las cosas que quiero aprender son bastante especializadas. Stack Overflow está bien para cosas básicas, pero no tanto para cosas avanzadas. Y tienes que filtrar todas las respuestas incorrectas. Los libros tienen menos respuestas completamente incorrectas.

No está relacionado con si usted es un ingeniero de software o no comprar un libro, debe tener una razón por la que está comprando este libro. Si está dispuesto a aprender y crecer, entonces necesita registrarse en una escuela que cuenta con expertos y profesionales que le enseñarán lo que debe hacer si necesita un libro o no. Holberton School es su próximo destino, ya que lo ayudarán mucho en este largo proceso de aprendizaje de programación y lo acorta ya que los expertos y los profesionales de programación / desarrolladores web lo ayudan no solo a aprender las habilidades técnicas de programación de software y desarrollo web, sino también puede ayudarlo con el trabajo que se ajusta a sus habilidades y capacidades. Pueden ayudarlo a postularse para el trabajo al que le gustaría postularse enseñándole lo que realmente necesita para obtener este trabajo y ser un buen desarrollador web. En la escuela podrás practicar mucha codificación hasta que se convierta en un pedazo de pastel en tus manos. También necesita trabajar en usted mismo desarrollando sus propios programas y hacer un esfuerzo adicional para obtener un trabajo decente en este campo tan competitivo. Sea único y tenga su propio toque en los códigos que está desarrollando para que los empleadores lo contraten. Los libros de texto son muy beneficiosos, pero necesita alguna orientación para no perder tiempo y dinero y el objetivo de comprar esos libros.

Mi primer lenguaje de programación es C, luego Smalltalk. Ahora estoy buscando Common Lisp, Scheme y Forth.

Libros que tengo:

  • Lisp común (12)
  • Erlang (2)
  • C ++ (3)
  • Haskell (3)
  • Esquema (4)
  • C (10)
  • Clojure (4)
  • Idioma independiente (8)
  • Adelante (5)

Si. Compro libros por capricho, y no son solo libros de programación o ingeniería de software. Pero sí compro bastante libros de ingeniería de software.

Algunos de estos libros son publicitados, algunos son gemas ocultas que pocos conocen. Otros pueden no ser particularmente profundos sino de inmensa utilidad práctica. No leo todos los libros que compro, porque no siempre tengo tiempo para hacerlo. Pero estos libros todavía sirven como referencia que puedo consultar.

Tenía un Kindle que le regalé a alguien. Leo libros de papel. Para mí, los libros son objetos tridimensionales por los que desarrollo una sensación al sostener, leer y dormir al lado. Echo de menos eso en los lectores electrónicos.

A menudo leo dos libros al mismo tiempo. He encontrado que esto funciona bien para mí y me ayuda a manejar mejor mis problemas de capacidad de atención.

Yo diría que muchos de los “mejores” programadores (desarrolladores de software y otros) siempre tratarán de mejorar sus conocimientos con nuevos lenguajes de programación, extensiones a los lenguajes de programación existentes y nuevas técnicas de programación. Creo que una de las mejores maneras de hacer esto es comprar libros, sí. Esto le permitirá leer sobre la teoría del lenguaje, antes de intentar escribir algo en ese lenguaje de programación.

Yo mismo compro todos los libros de programación que puedo.

Demonios, sí, incluso si fueran libros de texto. Tenga en cuenta que buscar en Google lo ayudará con JavaScript y Python. Algunos sitios (?) Son 90% estos dos idiomas. Buena suerte con el Modelo 204, IMS o PL / I (Joan Kirkby Hughes es bastante obligatorio). También llegará a un punto en su carrera en el que * usted * es la autoridad y no hay * ninguna * más ayuda. Los libros datan a medida que los idiomas evolucionan, pero pueden ser muy útiles para el trabajo de soporte heredado, ya que le permiten comprender las mejoras que siguieron a las fechas de publicación. Algunos son muy buscados, como la “Referencia Platinum de DB2”.
Es una verdadera lástima que los lugares de trabajo ya no tengan bibliotecas para estos.

La documentación en línea está bien para respuestas rápidas a preguntas simples. Pero a menudo falla si necesita aprender algunos conceptos nuevos. El libro le ofrece la experiencia personal del escritor, el escritor puede compartir con usted los errores comunes que los principiantes suelen hacer, puede compararlo con otras tecnologías que ya conoce o puede darle una lista de herramientas útiles que pueden ahorrarle mucho tiempo.

Por lo tanto, compré un libro cuando comencé con HTML, cuando comencé a usar Java, incluso asistí a clases pagas cara a cara cuando comencé a usar .NET y C # (y obtuve un libro relacionado con la capacitación). Otros libros en mi biblioteca son sobre CSS, Matlab, PHP, Autocad, gráficos por computadora, MIDI, Android, códigos de barras, etc. En la mayoría de los casos solo tengo un libro sobre un tema en particular.

No puede generalizar que ningún desarrollador de sw compre libros. A veces es muy conveniente dejar que otros aprendan algo de una manera mucho más rápida y efectiva.

Hace mucho tiempo (alrededor de 2008, supongo) recibí un libro sobre Microsoft Office 2000. Incluso después de años de usar MS Office descubrí algunas funciones nuevas en Office2000 (incluso en realidad estaba usando una versión mucho más nueva) y creo que muchas personas no las conocen. incluso hoy. La idea principal es que no necesita cometer exactamente los mismos errores que otros y puede dejar que otros lo ayuden a superarlo.

Desde un punto de vista práctico, compraría un libro (ebook o impreso) si no puede encontrar una explicación satisfactoria y exhaustiva de los conceptos, ya sea en línea o de las personas que conoce.

Tenga en cuenta que probablemente soy una minoría porque los programadores no quieren creer que los libros son incluso necesarios para su profesión (tengo experiencia en el mundo real, yada yada yada). Sin embargo, los llamo como los veo, y la ignorancia puede tener consecuencias desagradables. No me gusta la ignorancia.

El desarrollo de Javascript (front-end o back-end) en particular puede ser muy complicado e impredecible, y se necesita una explicación clara debido a su enredada historia, sin mencionar los recursos oficiales en línea que pueden ser difíciles de entender.

Es su decisión, pero si este es su medio de vida, se debe a sí mismo saber todo lo más exhaustivamente posible.

No soy ingeniero de software. Cuando me encontré con un IBM 1620 y el libro Fortran II de McCracken, nadie que yo conociera sospechaba que existía tal cosa como un ingeniero de software. Después de más de 50 años de codificación, entre mis reglas generales: lea o vuelva a leer cualquier libro o documentación cuando tenga la oportunidad. Es sorprendente lo que tendrá sentido para ti que te perdiste en una primera (o n-ésima) lectura.

Hay una diferencia entre resolver un problema en particular y mejorar su comprensión general.

Por supuesto.

Un libro bien escrito es la forma más rápida de aprender algo nuevo: diga los conceptos básicos de un nuevo idioma que necesite utilizar, o un manual sobre un software en particular.

Técnicamente, puedes obtener muchas cosas en línea o en YouTube.

Pero si te refieres a un libro específico lleno de conocimiento, siempre está la biblioteca.

Si está afiliado a una universidad, puede acceder a todas sus bibliotecas asociadas. Si no, simplemente elige una buena biblioteca pública.

Todo el tiempo freckin, la mayoría de los cuales no son muy útiles, ¡pero algunos son geniales! Como todas las compras que gana, algunas pierden. El lugar donde se encuentre en su progreso probablemente determinará cuán buenos son.

Si.

Principalmente para lenguajes y marcos que difieren de los que conozco.

More Interesting

Programa Apple MFi: ¿Qué tan difícil es obtener una licencia de desarrollador MFi (Made For iPod / iPhone / iPad)?

Cómo tener un BMW trabajando en la industria del software en India

Cómo mantenerme actualizado sobre (casi) todo o al menos lo más importante sobre ingeniería de software

Trabajar con el desarrollo de software es muy agotador hoy en día. Todos los días, se crea un nuevo idioma, biblioteca o marco. ¿Cómo podemos 'sobrevivir' en este contexto?

¿Qué deben saber los ingenieros de software sobre las computadoras cuánticas?

Como ingeniero de software, ¿qué te hizo elegir trabajar en Pinterest sobre todas las otras compañías en el Valle?

¿Cuáles son las asesorías genuinas para ingenieros de software en Bangalore?

El costo de vida en Londres es bastante alto en comparación con la OFS. ¿Cuál es el rango de salario para los ingenieros de software en Londres?

¿A qué debo unirme como ingeniero de software, Microsoft o Google?

¿Cómo los ingenieros de Apple logran construir un mejor software que otros, qué proceso siguen y cómo difiere de los procesos seguidos por otros?

¿Cómo se compara la vida y el salario de un ingeniero de software con un banquero de inversión?

¿Por qué debería un ingeniero de software saber cálculo?

¿Puede un ingeniero de software cambiar a redes o hardware después de obtener una licenciatura?

¿Cómo sugiere la Free Software Foundation que compañías como Microsoft generen ganancias? ¿Cómo deberían ganarse la vida los ingenieros de software independientes?

¿Dónde puedo encontrar un ingeniero de software que me aconseje sobre la creación de un programa?