Archivo | libros RSS for this section

The Clean Coder

The Clean Coder: a code of conduct for professional programmers

Rober C. Martin

Por qué lo he leído


Me decidí a leer este libro porque leyendo varios blogs en español encontré más de una referencia, por lo que parecía un buen libro para leer. Además, conseguí que un amigo me dejara un ejemplar. Todos los requisitos cumplidos.

Qué esperaba

La verdad es que el propio título ya dice bastante: “clean coder”. Esperaba encontrar una guía de buenas prácticas para aplicar en mi día a día profesional, una serie de consejos sobre cómo desarrollar software de calidad, limpio, que sea fácil de leer. Estaba incluso decidido a soportar una lista de tópicos sobre el desarrollo del software, pero estaba seguro de que iba a encontrar consejos/prácticas nuevas y, por supuesto, iba a aprender técnicas útiles.

Qué encontré

La verdad es que no encontré exactamente lo que buscaba. Robert C. Martin nos cuenta más batallitas que otra cosa, pero no nos miente, desde el principio del libro nos advierte que éste es un libro de experiencias personales.

El libro es un conjunto de experiencias, unas buenas y otras malas, del autor, de las cuales, Uncle Bob ha aprendido todo lo que sabe.

El libro también es un conjunto de consejos, una guía, de cómo Robert cree que se debe comportar un desarrollador de software profesional.

Conclusiones

El libro me ha encantado.

El tono que usa Uncle Bob para relatar sus experiencias es informal y cercano. En algunas de ellas puedo ver reflejados a compañeros míos o incluso a mí mismo (aunque ya no trabajamos con tarjetas perforadas, pero la esencia sigue siendo la misma).

Algunos consejos son, para mi gusto, un poco extremistas, pero el autor da sus razones de porqué él cree que debe ser así. Al fin y al cabo, han sido y son sus vivencias y no las impone a nadie. Con otros consejos no estoy muy de acuerdo, pero siempre es bueno conocer otras opiniones.

En definitiva, si te preocupa tu trabajo, éste es un buen libro para conocer qué piensa una de las personas más importantes en el mundo del desarrollo del software. Así es como Robert C. Martin cree que debe ser un profesional:

  • Es responsable: cuando un profesional comete un fallo, arregla el desorden que ha provocado.
  • Usa su conocimiento para construir, no para destruir.
  • Debe estar seguro de que funciona (tests).
  • Conoce el campo en el que trabaja (banca, transporte, …).
  • Nunca ridiculiza a los demás.
  • Trabaja duro para encontrar caminos creativos para decir “si”, para entregar funcionalidad.
  • La actitud que tiene hacia las interrupciones es de mostrarse voluntarios de poder ser de ayuda. Se ofrece a ayudar a los compañeros si ven que están teniendo problemas.
  • Programa en parejas.
  • Mantiene la mente abierta a nuevas tecnologías, ideas, diseños, y acepta que estas novedades pueden ser incluso mejor que las actuales.

Pasajes que quiero recordar de este libro

Debes ser responsable de tus imperfecciones, lo primero que debes aprender es a pedir perdón, después debes hacer que tu ratio de errores tienda a cero.

Entregar funcionalidad a coste de romper la arquitectura es un error de principiante. Comprometer la arquitectura es comprometer el futuro.

Regla del Boy Scout: deja siempre el código un poquito más limpio de lo que te lo encontraste.

Tu carrera es tu responsabilidad, no culpes a tu empresa.

La mejor forma de aprender, es enseñando. Otra forma de aprender es colaborar con otra gente.

Los problemas de tu empresa (quien te paga) son tus problemas.

Programar es un acto de creación. Cuando escribes código, estás creando algo de la nada.

(Sobre estimaciones y compromisos) Negocia para alcanzar el máximo de las dos partes enfrentadas.

La promesa de “lo intentaré” es la aceptación de que guardas un esfuerzo extra, y además es un compromiso de que necesitarás aplicar ese esfuerzo extra para conseguir el objetivo.

Agresión pasiva: dejar que tu compañero falle públicamente cuando sabes de antemano que lo que está haciendo fallará.

Dilo, comprométete y hazlo. (no lo intentes, hazlo)

Programar es una actividad agotadora, que reta tu inteligencia […], si estás cansado o distraído, no programes.

Las estimaciones tienen que estar basadas en datos, no incorpores esperanza en tus estimaciones. Y no dejes que los demás tengas esas esperanzas.

No aceptes hacer horas extras, excepto si: te lo puedes permitir personalmente, es para un período corto y tu jefe tiene un plan B por si no funciona.

La única forma de mejorar la planificación, es reducir el alcance. No caigas en la tentación de correr.

Los tests te dan la certeza suficiente para entregar.

TDD (desarrollo dirigido por tests) es una disciplina que mejora la certeza, el coraje, reduce los defectos, la documentación y mejora el diseño.

Katas:

Tom DeMarco: Una ambigüedad en los requisitos, refleja un conflicto en el cliente.

Los tests unitarios y de aceptación, primero son documentos y luego tests.

Nada tiene un efecto tan negativo a largo plazo en la productividad de un equipo desarrollador como la deuda técnica.

Programar conlleva trabajar con gente. Si quieres pasar tus días desarrollando software, deberás aprender a hablar con la gente.

Lleva tiempo que un equipo funcione, por eso, las empresas profesionales, organizan proyectos alrededor de equipos que funcionan, nunca forman equipos alrededor de proyectos nuevos.

Anuncios

Linchpin

Linchpin: are you indispensable?

Seth Godin

Por qué lo he leído


Suelo leer a Alberto Peña “plagelao”, y en su viejo blog leí su post sobre La Resistencia. Así fue como descubrí el libro. Yo tambien siento cada día esa “resistencia”, ese miedo a conseguir lo que quiero, por lo que decidí darle una oportunidad al libro en cuanto tuviera tiempo, y lo he tenido antes de lo que yo me esperaba.

Qué esperaba

Me esperaba una serie de consejos para mejorar en mi trabajo, y quizá en mi vida personal, al estilo auto-ayuda.

Eres indispensable?

Solo el título ya te hace pensar que seguramente no estás haciendo todo lo posible para ser mejor mañana de lo que eres hoy.

Qué encontré

La verdad es que sí, al principio parece un libro de auto-ayuda. Repite una y otra vez los mismos conceptos, para que los asimiles una y otra vez.

Según fuí avanzando en el libro, fui conectando las ideas y todo empezó a tomar otra forma. Muchos consejos y sabiduría comprimida, pero nada de sentimiento de inferioridad que se encuentra en los libros puros de auto-ayuda.

Conclusiones

El libro en general me ha gustado bastante, pero me ha dejado con la miel en los labios. Claro, al final no hay un método claro para hacerte indispensable, y por supuesto el camino no es fácil, pero el libro viene acompañado de inifinidad de referencias y casos reales. Es con la lectura de estos casos reales donde uno entiende a qué se refiere el autor con eso de ser indispensable: eres original? eres generoso? no tienes miedo a triunfar? eres adaptable?

Aquí dejo unos cuantos consejos para ayudaros a ser mejores, sacados del libro:

  • Cualquier persona es un genio, no las 24h del día, pero seguro que en algún momento has hecho alguna genialidad
  • Para ser indispensable, debes hacer “trabajo emocinal” (emotional labor): es aquello que haces por tus sensaciones y sentimientos, no algo físico.
  • No es beneficioso establecer una carrera haciendo algo escrito en un manual, lo beneficioso es hacer algo diferente.
  • Se un artista (creativo, apasionado, generoso). No lo hagas por dinero, hazlo porque quieres, y quieres ayudar a los demás.

Pasajes que quiero recordar de este libro

Estas son algunas de las citas que puedes encontrar en el libro, todas son traducciones libres, lo siento si no se corresponden exactamente con lo que quiere decir el autor.

Un genio es alguien que mira donde otros están paralizados y es capaz de poner el mundo en funcionamiento de nuevo.

El empleado indispensable trae consigo humanidad, comunicación y arte a su empresa.

Lo que el mercado busca ahora es alguien: excepcional, generoso, artista, que conecte gente (clientes) con ideas.

Un trabajador brillante, es brillante durante pequeños momentos, el resto del tiempo hace trabajo que cualquiera puede hacer.

Arte es cualquiercosa que sea creativa, apasionada y personal. Arte es un regalo personal que cambia al receptor. Arte es el producto del “trabajo emocinal”.

Pasión es el deseo, la insistencia y la voluntad de dar un regalo.

La disciplina de entregar, producir (“to ship”) es esencial para ser indispensable a largo plazo.

Los verdaderos regalos, los generosos no demandan reciprocidad, y el mejor regalo es un regalo de tu arte.

Nikola Tesla: el genio al que le robaron la luz

Nikola Tesla: el genio al que le robaron la luz

Margaret Cheney

Por qué lo he leído


Suelo leer microsiervos bastante a menudo, y en ese blog son admiradores de Tesla, así que ya tenía cierta introducción acerca de él. Hace tiempo, publicaron una reseña del libro y me llamó la atención. Mi cumpleaños estaba cerca, así que aproveché la oportunidad para pedir un regalo. Y así llegó a mis manos.

Qué esperaba

Ésta es mi primera biografía, asi que no tenía mucha idea de lo que me podía encontrar. Quizá una lista de fechas y logros realizados por Tesla, una serie de sucesos personales, qué se yo. Dada la reputación que le daban en microsiervos, no podía haber nada malo. Al fin y al cabo, pese a quien le pese, Nikola Tesla es bastante conocido como inventor, aunque yo lo catalogaba más como científico, y ésta es la primera biografía en castellano (aunque es una traducción), así que esperaba llegar a conocer en profundidad a un personaje fundamental para entender el mundo tal y como lo conocemos hoy.

Qué encontré

Encontré el relato de una vida, una enumeración de hechos bastante bien documentados, pero no sólo una mera enumeración, como la vida misma, todos los eventos se interrelacionan, todos los personajes (en este caso, personas reales con los que Tesla tuvo relación) se relacionan en una serie de actos sociales, de logros científicos, de descubrimientos, de disputas sobre patentes, empresas que se crean y acaban por desaparecer, …
El libro me ha conducido por las distintas fases de la vida de Tesla, y describe a Tesla con gran admiración pero también con fuentes contrastadas y documentadas, aunque a veces no fuera posible dado que hay cierto halo de misterio en torno a muchos de los proyectos en los que trabajó Tesla.

Conclusiones

En general es un libro que me ha gustado mucho leer, del cual he aprendido mucho sobre la vida de una persona tan extraordinaria como es Nikola Tesla.
También creo que he podido disfrutar del libro gracias a mi edad, creo que si lo hubiera leído con 25 años no me hubiera gustado nada, no podría haber disfrutado del recorrido de una vida. Ahora paso justo de los 30 y voy entendiendo que la vida es un largo camino donde a las locuras de la juventud le siguen los grandes logros de la madurez.
Al final del libro me he quedado algo apenado, ya que según describe el libro, Tesla tenía muchas manías y un temperamento bastante fuerte (especialmente al final de su vida), casi hasta el punto de parecer como si tuviera alguna enfermedad mental. De todas formas el libro me ha dado a conocer aspectos de la vida de Tesla de las que no tenía ni idea, y me ha convencido de que Tesla era sobretodo un tipo extraordinario, con una imaginación sobresaliente y que debido a eso era un hombre adelantado a su tiempo, muchas veces incomprendido y que tuvo que superar tremendas dificultades. Las más difícil, en mi opinión, es el rechazo al reconocimiento que se merecía, y que lo obtuvo a título póstumo. Muy injusto.

God and the new physics

God and the new physics

Paul Davies

Por qué lo he leído


La verdad es que como la mayoría de los libros, lo he leído casi por casualidad. Un compañero de trabajo le estaba leyendo, lo ví encima de su mesa y el título me llamó la atención. Dios y la física mezclados? Parecía interesante.

Qué esperaba

Con ese título, me esperaba más de la eterna discusión ciencia-religión. Además, dado que mi compañero es de “ciencias”, estaba casi seguro que ganaría la ciencia.
No conocía al autor, pero con una pequeña búsqueda te das cuenta de que Paul Davies es un gran divulgador científico, más concretamente un gran divulgador de la física, con un gusto especial por la astrofísica.

Qué encontré

Bueno, lo que encontré no fue exactamente una discusión ciencia-religión. El autor expone muchos, si no todos, los argumentos de una y de otra parte. Encontramos argumentos a favor de la existencia de Dios (con mayúscula) así como sus contra-argumentos, encontramos argumentos a favor de que no existe ningún dios, con sus contra-argumentos también.
Gracias a este libro he recordado muchos conceptos de física y matemáticas que hacía mucho tiempo que no me planteaba, y también he aprendido otros nuevos: como la teoría de que el universo se hinchó como si fuera una burbuja, por ejemplo.
El autor conoce a la perfección la problemática y la complejidad de las teorías expuestas, pero las expone con mucha claridad y sencillez. Evidentemente, no profundiza en ellas, cada una de las teorías expuestas merece, y han tenido, muchas palabras habladas y escritas.
El autor ha escrito el libro siguiendo un orden que me encanta, comienza con una pequeña introducción enfrentando la ciencia y la religión, sigue con la creación del universo y cuestiona su existencia. Después se concentra en la vida y el ser humano, mente, alma, cuerpo. Lo reduce todo a la teoría cuántica y al origen y composición de la materia. Termina describiendo el fin del universo.
El último capítulo es un cierre genial para un libro que despierta la mente, me quedaría con un párrafo que me emocionó:

Central to the physicist’s notion of beauty are harmony, simplicity and symmetry. […] When physics talk of beauty and symmetry the language through which these concepts are expressed is mathematics. […] Fear of mathematics is a barrier that cuts people off from a full appreciation of scientific discoveries. […] Many physicicists has become so deeply impressed with the mathematical simplicity of the laws of nature that they maintain it reveals a fundamental feature of existence. Sir James Jeans once wrote: God is a mathematician.

Lo que podría traducir libremente como:

Para los físicos, la noción de belleza va acompañada de armonía, simplicidad y simetría. […] Cuando los físicos hablan de belleza y simetría el lenguaje que usan son las matemáticas. […] El miedo a las matemáticas es una barrera que impide a la gente apreciar de verdad los descubrimientos científicos. […] Muchos físicos han quedado tan impresionados con la sencillez matemática de las leyes [físicas] de la naturaleza que mantienen que ello revela una característica fundamental de existencia. Sir James Jeans dijo: Dios es un matemático.

Conclusiones

Al final no gana ni ciencia ni religión, pero no deja en muy buen lugar a la religión, ya que cree que juega con ventaja. Mientras que la religión se basa en fe y creencias, la ciencia se basa en hechos, y claro, las creencias son imposibles de desmentir mientras que los hechos están ahí y puede haber múltiples interpretaciones.
En uno de los capítulos llega incluso a insinuar que Dios podría ser humano (o al menos un ser inteligente, pero nada divino), y para ello sigue el siguiente argumento: en un período corto de tiempo (comparado con la edad de la Tierra), el hombre y la ciencia han avanzado muchísimo en el campo de transformar la naturaleza y el entorno. Si la vida del universo se estima que puede llegar a ser mucho mayor que la edad que tiene actualmente, ¿dónde no llegará el hombre? Podría llegar a modificar órbitas, crear lunas, modificar galaxias, crear agujeros negros, … ¿Por qué no iba a ser capaz de crear un nuevo universo? ¿Por qué no? Con suficiente tiempo, … Nadie puede demostrar que vaya a ser así, pero tampoco lo contrario.