• Personal

    Los niños y la programación

    Cuando sólo tenía 10 años, en el año 1988, recuerdo que ya me gustaban mucho los ordenadores, era un mundo nuevo, lleno de posibilidades, parecía que podías hacer cualquier cosa. Ese año, mis padres me regalaron un Spectrum de 128k con unidad de cinta. Cargar un juego era toda una aventura, después de pulsar play, la cinta comenzaba a cargar el videojuego haciendo una serie de ruidos y mostrando una serie de colores en el televisor, poco a poco mostraba una imagen en el televisor como si de una impresora se tratara. Recuerdo también utilizar software donde podía programar, y fue aquí donde di mis primeros pasos en el mundo de la…

  • Clean Code,  Java,  OOP

    Object Calisthenics

    Desde finales de 2015 comencé a interesarme mucho por escribir código más limpio y comprensible, esto me llevó a leer diferente bibliografía al respecto, libros, artículos, opiniones. Durante este proceso descubrí que existen infinidad de conceptos y reglas que ayudan a los desarrolladores a conseguir que su código sea bello. Aunque todos los conceptos que he ido descubriendo se basan en el sentido común, la realidad es que poco se aplican en el mundo real, lo que me lleva a pensar que el sentido común es el menos común de los sentidos. Hoy os hablaré de la Calistenia de objetos (Object Calisthenics), si, suena raro, ¿qué es la calistenia?. Según wikipedia: La calistenia es…

  • Clean Code,  Java,  OOP

    Tell, don’t ask!

    “Tell, don’t ask” nos recuerda que no debemos usar los objetos para pedirles cosas y tomar decisiones después, lo que debemos hacer es decirles a los objetos que hagan cosas para que éstos internamente tomen sus propias decisiones según su estado. Si lo hacemos bien, evitaremos un acoplamiento entre objetos, conseguiremos sistemas mas robustos y escalables. Y es que un objeto se define por su comportamiento. Por lo tanto, cuando hablamos de «Tell, don’t ask» hablamos de cohesión, y se refiere principalmente al grado de cercanía entre los elementos de una clase (objeto). Una cohesión alta se asocia con aspectos como la robustez, la fiabilidad, la reutilización y la comprensión. Por el contrario, una cohesión débil…

  • Cine y TV,  Series

    Mr. Robot

    Nu suelo ver muchas series, ¿la razón? falta de tiempo. A diferencia de una serie, cuando ves una peli, sabes que en un tiempo determinado verás un inicio, un cuerpo y un desenlace. El problema es que a veces surgen series que me atrapan. Todo comienza con alguna recomendación, la lectura de una crítica y la visión del trailer en youtube. Cuando una serie me atrapa, no puedo dejar de ver un episodio tras otro. Esto mismo me ha ocurrido con la serie de la que os hablaré hoy, Mr. Robot. La sinopsis de la serie según wikipedia: La serie sigue a Elliot Alderson (Rami Malek), un joven hacker que sufre de fobia social, depresión clínica…

  • Clean Code,  OOP

    Law Of Demeter (LoD)

    Si buscamos en google «ley de demeter» el primer resultado que nos encontramos nos indica: La ley de Demeter es un principio básico de la programación orientada a objetos. Sorprende al conocerlo su gran utilidad, sus resultados en proyectos de todos los tamaños y el poco conocimiento que la comunidad de desarrolladores tiene de su existencia. 7 ene. 2008 Curioso, ciertamente estos principios no son todavía muy conocidos en la comunidad de desarrolladores, por este motivo, hace unas semanas decidimos hacer un pequeño workshop en el equipo en el que trabajo para dejar claro de qué se trata y cuales son éstos principios. Si buscamos la definición de «ley de demeter»…