feed

Lo mejor

  1. Usar mónadas es mucho más fácil de lo que crees, empezando con la programación funcional

    Usar mónadas es mucho más fácil de lo que crees, empezando con la programación funcional

    6

    Seguramente todos tenemos formada una buena idea sobre lo que es una "propiedad", un "método estático", un "singleton" u otros términos de uso común. Nos resultan algo más exóticos e infrecuentes términos como "clase abstracta" o "función virtual pura". Todos éstos son términos habituales en la programación orientada a objetos. Lo que seguramente ya no tengamos tan claras son todas las...

    Leer más

  2. ¿Por qué empresas que empiezan con lenguajes modernos se vuelven a Java?

    ¿Por qué empresas que empiezan con lenguajes modernos se vuelven a Java?

    28

    Mientras el lenguaje más utilizado del mundo cumplió ya sus 20 años, hay muchas voces en el mundo del desarrollo que reniegan de Java. Es cierto que Java es un lenguaje antiguo, que para muchas tareas es extremadamente verboso y que tiene problemas de base que uno de sus creadores, Joshua Bloch, desgranó en su libro. Entonces, ¿por qué tantas compañías vuelven atrás y abandonan lenguajes...

    Leer más

  3. Los 17 momentos por los que merece la pena ser desarrollador

    Los 17 momentos por los que merece la pena ser desarrollador

    21

    Vale, tu madre no sabe explicar a tus tías a que te dedicas ("trabaja con ordenadores, internet y esas cosas"), tus amigos piensan que eres el servicio técnico de Apple y cuando se acerca una fecha de entrega, echas más horas que un reloj en el trabajo. Todo esto es cierto pero, por lo demás, ser desarrollador no está nada mal, de hecho incluso puede llegar a estar bastante bien. Como muestra,...

    Leer más

  4. 10 cosas sobre trabajar en remoto que quizá no habías pensado y deberías tener en cuenta

    10 cosas sobre trabajar en remoto que quizá no habías pensado y deberías tener en cuenta

    23

    Hace ya casi dos años que pisé por última vez una oficina y empecé a trabajar en Plex desde casa, en un equipo deslocalizado a lo largo y ancho del planeta. Muchas cosas cambian cuando pasas de levantarte cada mañana para ir a tu puesto de trabajo a sentarte en un escritorio a 10 pasos de tu cama. Y aunque seguramente ya se ha escrito mucho sobre el tema (yo mismo grabé una entrevista con...

    Leer más

  5. Sobre la pureza de las funciones, ¿están realmente desacoplados los sistema tal como idealizamos?

    Sobre la pureza de las funciones, ¿están realmente desacoplados los sistema tal como idealizamos?

    10

    Salvo en programas funciones sencillas, estar seguro, comprender las interrelaciones entre las partes resulta muy complicado. Idealizamos nuestros sistemas y pensamos que están desacoplados pero realmente éstos son porosos y con frecuencia los efectos fluyen entre ellos sin que nos demos cuenta... hasta que es tarde. Esta porosidad puede resultar en una interrelación no deseada (un bug) o en un...

    Leer más

  6. Los 17 momentos por los que odias ser desarrollador

    Los 17 momentos por los que odias ser desarrollador

    8

    No amigo, la vida no es de color de rosa. Ni siquiera la del desarrollador por mucho que yo mismo os lo pintara de esa manera la semana pasada. Por eso hoy os traemos la otra cara de la moneda: todos esos momentos que te hacen odiar ser desarrollador. Podríamos haber elegido decenas pero como tampoco queremos abusar y somos muy de simetría, nos quedamos con 17. Ponte cómodo porque te aseguro que...

    Leer más

  7. Android Studio 2.2 lleva el desarrollo de Android a un nuevo nivel

    Android Studio 2.2 lleva el desarrollo de Android a un nuevo nivel

    3

    Algunos recordamos con dolor aquellos días en los que teníamos que usar Eclipse para desarrollar aplicaciones en Android. El cambio a Android Studio y la introducción de Gradle supusieron un innumerable número de mejoras y de flexibilidad que aún a día de hoy sigue dando sus frutos. El nuevo Android Studio 2.2 presentado durante el Google I/O ha querido ir más allá, ofreciendo una gran cantidad...

    Leer más

  8. Modelos de aprendizaje para el programador ágil ¿Cómo ser efectivo en nuestro aprendizaje constante?

    Modelos de aprendizaje para el programador ágil ¿Cómo ser efectivo en nuestro aprendizaje constante?

    2

    Cómo podemos evolucionar como profesionales en nuestro sector y cómo abordamos o gestionamos el conocimiento que podemos encontrar a nuestro alrededor, es algo que personalmente me lleva obsesionando desde hace mucho tiempo. Con la carga habitual del trabajo, la vida personal y el resto de actividades que componen nuestro día a día, es todo un reto poder diseñar un plan de crecimiento profesional...

    Leer más

  9. Algo pasa con Haskell

    Algo pasa con Haskell

    8

    Sin duda existe una gran cantidad de lenguajes de programación sobre los que podemos poner nuestra mirada. Sin embargo, sólo unos pocos están llamados para la gloria. Existen muchas cuestiones por las que un lenguaje debe ser elegido sobre otros, e igualmente, existen muchas situaciones diferentes que aconsejan usar unos y no otros. Como lenguaje de propósito general que tenga una comunidad...

    Leer más

  10. DevOps. ¿Moda, mito o evolución?

    DevOps. ¿Moda, mito o evolución?

    6

    No es la primera, ni la última vez que escribo sobre la enorme complejidad inherente al desarrollo de software. De la necesidad -siempre creciente- de conocimiento que soportan todos los actores en la industria actual. Y lo fácil que es perder el ritmo para mantenerse en la cresta de la ola tecnológica. Las metodologías, procesos y procedimientos intentan ordenar el caos hacia donde tienden...

    Leer más

  11. Exprimiendo Android Studio: trucos y atajos de teclado que te harán más productivo

    Exprimiendo Android Studio: trucos y atajos de teclado que te harán más productivo

    7

    Android Studio es la herramienta oficial para el desarrollo de aplicaciones android. Al estar desarrollado sobre IntelliJ IDEA, aprovecha (casi en su totalidad) características de edición de código, análisis, refactor y generación entre otras categorías para desarrollar de forma efectiva. En su versión 2.2, Android Studio incluye multitud de mejoras como un nuevo editor de UI, interacción...

    Leer más

  12. Formarse en Calidad de Software. Requisitos, cursos y más

    Formarse en Calidad de Software. Requisitos, cursos y más

    2

    Con cierta frecuencia me llegan preguntas sobre "cómo formarse en calidad de software", "qué cursos o master se pueden realizar", o "qué debería estudiar o hacer para conseguir un puesto como QA Tester". La verdad es que no es una pregunta sencilla. Casi cada especialista que conozco en pruebas de software ha tenido una trayectoria laboral diferente, y lo mismo es aplicable a su formación. El...

    Leer más

  13. Fragilidad del software ¿En qué estoy fallando?

    Fragilidad del software ¿En qué estoy fallando?

    5

    Supón que sigues todas las guías de estilo, eres "clean", cuidadoso, fiel seguidor de TDD, conoces tu plataforma, ... pero, aun así, por una extraña razón, con el tiempo tu sistema se tambalea, o debes perder mucho tiempo en refactorizar, o el número de tests hace que tus despliegues demoren horas, o cada vez te resulta más confuso ver la mejor forma de introducir mejoras, ... ¿qué ha fallado? No...

    Leer más

  14. Retos de la agilidad en empresas grandes

    Retos de la agilidad en empresas grandes

    4

    Son las 20:13, sonido en el móvil y el correspondiente mensaje de WhatsApp. Es de Marta. Ella trabaja con el rol de responsable de proyectos y, entre varios mensajes, quiere compartir conmigo que, después de meses de trabajo, el comité de dirección de su empresa, una de las que en el sector llamaríamos “grandes”, ha cancelado lo que allí llamaban la “transformación ágil” de su proyecto. Marta...

    Leer más

  15. BDD, Cucumber y Gherkin. Desarrollo dirigido por comportamiento

    BDD, Cucumber y Gherkin. Desarrollo dirigido por comportamiento

    5

    BDD es uno de los términos de moda en el desarrollo de software en los últimos años. A pesar de ser un término muy utilizado, no todo el mundo sabe exactamente qué es eso de BDD, más allá del significado de esas siglas, Desarrollo Dirigido por Comportamiento (Behaviour Driver Development), ni cómo puede BDD ayudarnos en nuestro trabajo diario como desarrolladores. BDD es una evolución de...

    Leer más

  16. Testeando tus aplicaciones Java con Spock: tests más expresivos, fáciles de leer y mantener

    Testeando tus aplicaciones Java con Spock: tests más expresivos, fáciles de leer y mantener

    3

    No es ninguna sorpresa que en el mundo Java la herramienta de test más utilizada sea JUnit si tenemos en cuenta que fue creada hace más de 15 años. Esto, sin embargo, no implica que sea la mejor, sino que en muchas ocasiones seguimos utilizando las mismas herramientas por inercia o porque aquí siempre se ha hecho esto así sin plantearnos si existen alternativas mejores. Una de estas alternativas...

    Leer más

  17. Mejora tu código Java usando Groovy

    Mejora tu código Java usando Groovy

    0

    ¿Y por qué querríamos mejorar nuestro código Java? Seguro que en más de una ocasión escribiendo Java has pensado que es muy verboso o que seguro que tiene que haber una forma más fácil y sencilla de hacer esto. En ese caso, Groovy es para ti. Apache Groovy es un lenguaje dinámico, opcionalmente tipado, con posibilidad de tipado y compilación estáticos para la JVM. Tiene como objetivo...

    Leer más