Publicidad
Publicidad

RSS Software

12 herramientas imprescindibles para asegurar la calidad del software (y sus alternativas)

7 Comentarios
12 herramientas imprescindibles para asegurar la calidad del software (y sus alternativas)

Actualmente el número de herramientas a disposición de los equipos de desarrollo para probar software es muy amplio. Para cualquier tipo de prueba que queramos realizar (funcionales, rendimiento, regresión, etc.) el número de opciones disponibles, tanto gratuitas como comerciales, es muy grande. De entre todas estas he elegido 12 herramientas imprescindibles para probar software (y sus alternativas).

En unos casos son programas desarrollados para probar software. En otros, son programas que aunque no nacieron con ese propósito, han demostrado ser perfectos para realizar determinadas pruebas.

Leer más »

Fragilidad del software ¿En qué estoy fallando?

5 Comentarios
Fragilidad del software ¿En qué estoy fallando?

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 estoy hablando de cuando se hacen las cosas mal (en que es más o menos obvio que tarde o temprano se pierda el control), estoy hablando de cuando las cosas se hacen bien o, al menos, se han seguido los cánones marcados por la industria. No es infrecuente perder el control de un proyecto y ocurre en una gran variedad de ámbitos, equipos grandes o pequeños, en grandes y pequeñas empresas, con recursos y sin recursos.

Leer más »
Publicidad

DevOps. ¿Moda, mito o evolución?

6 Comentarios
DevOps. ¿Moda, mito o evolución?

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 las construcciones de aplicaciones informáticas. Mientras que las herramientas, a su vez, ganan en profundidad y ámbito de actuación en una búsqueda permanente de liberar al factor humano de las tareas repetitivas o tendentes al error, para que se pueda centrar en utilizar su talento y capacidad intelectual en la codificación y los retos algorítmicos que se presentan.

Leer más »

Bazel, Google libera su build system interno y pone interesante la forma de integrar sofware

5 Comentarios
Bazel, Google libera su build system interno y pone interesante la forma de integrar sofware

Google ha abierto parcialmente de forma Open Source el sistema que usan para realizar los builds de forma interna. Se trata de Bazel, un build system construido íntegramente por Google que les permite entre otras cosas ser más rápidos, escalable y fiables a la hora de crear software.

Como todas las grandes compañías uno de los problemas de mayor importancia es el manejo de grandes cantidades de código, módulos, dependencias y proyectos realizados en distintos lenguajes de programación. Y, por supuesto, la posterior construcción del software en sus distintas builds para su posterior despliegue.

Leer más »

491.000 millones de dólares pagarán las empresas para luchar contra el malware integrado en el software pirata

3 Comentarios
491.000 millones de dólares pagarán las empresas para luchar contra el malware integrado en el software pirata

Microsoft ha publicado recientemente el estudio elaborado por IDC y la universidad de Singapur, que refleja que el 60% de los equipos que usan software pirateado están infectados con malware. Y para ayudar a mejorar la seguridad de las empresas afirma el estudio que el 27% de los empleados instalan software pirata en los equipos sin la supervisión de la propia empresa.

Leer más »

iWebInspector: Inspector Web Remoto Real

Comentar
iWebInspector: Inspector Web Remoto Real

Hace sólo unos días presentábamos Weinre como una solución casi perfecta para poder inspeccionar y "debugar" Javascript y HTML ejecutándose en navegadores o soluciones basadas directa o indirectamente en Webkit.

Weinre, tal como contábamos, es una solución muy útil y que a mi personalmente me ha ahorrado muchos dolores de cabeza. Pero tiene dos puntos importantes a tener en cuenta:

  • Hace inyección de código, lo cual quiere decir que la aplicación que se monitoriza está alterada respecto a la que el desarrollador ha creado. Esto no tendría que suponer ningún problema pero podría darse el caso en el que el código inyectado por Weinre alterara el comportamiento inherente de la aplicación bajo testeo.
  • Weinre, aún y estar basado en el Remote Web Inspector de Webkit, no permite añadir breakpoints en el código Javascript ni realizar sesiones de Profiling. El principal motivo de esto es que los navegadores no definen los hooks necesarios para llevar a cabo estas tareas.
Leer más »
Publicidad

Weinre: Inspector Web Remoto

2 Comentarios
Weinre: Inspector Web Remoto

Personalmente soy un técnico de las que piensa que el Debugging no es un mero paso en el desarrollo o una mera funcionalidad en un IDE, creo firmemente que es una combinación muy avanzada con una gran dosis de arte y una muy buena técnica. Al cabo del día es bastante probable que el porcentaje de tiempo que un desarrollador empeña para localizar errores y malos comportamientos en el código y arreglarlos es muy cercano, sino superior, al tiempo que dedica a la creación de código nuevo. Son muchos los errores en el código que nos llevan de cabeza durante horas pero que luego solventamos en un mero instante. Es por ello de vital importancia que como profesional en el mundo del desarrollo tengamos y dominemos técnicas avanzadas para encontrar, determinar y aislar problemas en el código.

Llevo una temporada desarrollando de forma extensiva JavaScript en plataformas móviles. Ya sea a través de Safari, Adobe AIR, PhoneGap, Appcelerator o cualquier otro entorno de ejecución a menudo me encuentro con la necesidad de querer inspeccionar el DOM o algun objeto complejo o simplemente ver las trazas de una forma más avanzada a la que, por ejemplo, permite iOS con la consola de javaScript que incorpora.

Leer más »

Muéstrame tus herramientas y te diré quién eres

10 Comentarios
Muéstrame tus herramientas y te diré quién eres

Este artículo es el primero de una serie en la que iré compartiendo trucos, consejos, utilidades, pequeñas herramientas y técnicas que pueden facilitar y agilizar enormemente el desarrollo. Al igual que un albañil o un electricista tiene sus herramientas, un desarrollador también las debe tener y dominar a fondo. Podemos tener herramientas comunes y básicas pero muchas veces la diferencia la marcan esas herramientas especializadas que a veces te ahorran tiempo, a veces te hacen más productivo, a veces aportan una mayor precisión o que simplemente eliminan la monotonía de una tarea.

Una herramienta puede parecer extremadamente simple como lo podría parecer una simple espátula, pero son pocos los que dominan las técnicas de cintado para montar una pared de pladur perfecta. Es muy importante tener las herramientas adecuadas pero más aún conocer a fondo cómo y cuando usarlas.

Leer más »

La arquitectura de las aplicaciones Open Source explicada por sus autores

5 Comentarios
La arquitectura de las aplicaciones Open Source explicada por sus autores

Los arquitectos observan miles de edificaciones durante sus prácticas, y estudian en profundidad aquellos edificios diseñados por maestros y expertos. En contraste, la mayoría de los desarrolladores de software sólo logran conocer un puñado de programas grandes (normalmente son programas escritos por ellos mismos) y nunca estudian los grandes programas de la historia. Como resultado, se siguen repitiendo los mismos errores de siempre en lugar de construir nuestros programas basándonos en los que ya son un éxito.

Así comienza este libro, “The Architecture of Open Source Applications”, uno de los mayores compendios de sabiduría en el desarrollo de aplicaciones que podamos encontrar. Los programadores de las aplicaciones más famosas, y de gran importancia histórica, explican cómo se desarrollaron sus proyectos, cual era su objetivo inicial, como afrontaron los problemas y qué conclusiones obtuvieron al finalizarlos. Hay piezas de software relativamente nuevas como el famoso juego “Battle for Wesnoth” o ya históricas como la Bash.

Leer más »

Herramientas imprescindibles para un desarrollador de Java

50 Comentarios
Herramientas imprescindibles para un desarrollador de Java

Voy a hablar de las herramientas que considero imprescindibles para un desarrollador Java, en concreto para desarrollo J2EE. Puede que alguna se pueda obviar, como por ejemplo, Maven, pero la verdad es que yo no puedo vivir sin él. No incluyo en la lista la maquina virtual, es obvio que sin eso no puedes hacer nada:

  • Lo primero es un IDE. Yo uso el Eclipse, que es el mas extendido, es opensource y es el que mas plugins tiene. Yo aconsejo descargarlo desde este enlace. Es una aplicacion web que te permite crearte tu propio paquete de plugins y descargarlo todo en un zip. Es muy útil para trabajar en un proyecto en equipo, ya que puedes distribuir ese zip entre los programadores, y te ahorras tiempo instalando los plugins desde el propio IDE. Otras opciones son Netbeans de Oracle (antes de SUN) o el premiado Intellij IDEA. Este último es comercial, aunque tienen edición community.

Leer más »
Publicidad
Inicio
Inicio

Ver más artículos