How do I apply Payday Loans But now, you have an extra

No escribo pruebas unitarias porque... (manual de excusas)

lupaSiendo alguien que vive los beneficios de hacer TDD, creo profundamente en el desarrollo guiado por pruebas. Esta práctica agrega un nuevo nivel de calidad y madurez al desarrollo de software, y sin embargo todavía no es la técnica más usada en los proyectos de software. Cuando hay que elegir entre características, tiempo y calidad, siempre sufre la calidad. No queremos agregar tiempo extra para hacer pruebas, y tampoco queremos comprometer las características que vamos a entregar. Si no se pusieron como objetivo hacer TDD al iniciar el proeycto, es dificil hacerlo después.

Leer más...

Prácticas para mejorar la calidad del código

herramientasHay muchísimas prácticas que podemos adoptar para mejorar la calidad de nuestro código. ¿Por dónde empezar? ¿Existe una lista única y completa? En este artículo veremos un pequeño listado de buenas prácticas, que nos pueden ayudar a comenzar ese largo camino que implica trabajar con más profesionalismo, mejorando los productos que desarrollamos.

Leer más...

¿Por qué un Enterprise Service Bus (ESB)?

mundo-en-redSe ha hablado mucho en los últimos años sobre los ESB, los web services y el fenómeno SOA en general. Gartner pronosticó que SOA sería usado en más del 80% de los procesos de negocio y aplicaciones críticas que se desarrollen en 2010. Estamos en 2010 y mi percepción es que, al menos en España, aún no hemos llegado a esos porcentajes en lo que se refiere al despliegue de soluciones SOA. Lo que sí es cierto sin embargo es que el ascenso de SOA y los ESB como solución tecnológica parece imparable en la mayoría de organizaciones y sectores.

Leer más...

¿Sos inteligente o tonto?

tablero-de-ajedrez¿Cuál es la diferencia entre ser inteligente o ser tonto? Creo que podría resumirse en dos cosas: qué tan lejos en el futuro podés pensar, y qué tan rápido podés generar este pensamiento. Cuando alguien juega ajedrez, o poker, sus habilidades están determinadas por cuántas movidas puede pensar por adelantado. Cuánta historia pueden recordar, y así planificar el siguiente movimiento.

En el desarrollo de software, ¿qué tan lejos podés mirar? ¿Estás usando prácticas destructivas porque estás muy ocupado "terminando el trabajo"? ¿Estás ignorando buenas prácticas que podrían ahorrarte tiempo?

Leer más...

Las tres C de la arquitectura

arquitecturaEn nuestro trabajo con clientes a menudo tenemos discusiones sobre la función de la arquitectura y el rol de los arquitectos. Estas discusiones ocurren porque la arquitectura no contribuye de forma visible a los objetivos organizacionales, y por lo tanto se la percibe como una molestia para los proyectos. Muchas discusiones se origina por la falta de entendimiento sobre el rol y el lugar de los arquitectos dentro de la organización. Hemos definido tres objetivos de la función de la arquitectura en organizaciones de TI: Las Tres C de la Arquitectura. Estas son: Conexión, Cohesión y Cambiabilidad. Al tomar estos conceptos como principios básicos de la arquitectura logramos enfocarnos en qué hacer y cómo posicionar a la arquitectura dentro de la organización.

Leer más...

Integración Continua para mantener el proyecto en rumbo

engranajes-en-cajaHoy en día tenemos muchas herramientas que dicen limpiar de forma mágica nuestro código. Mueven, modifican, emprolijan y mágicamente resuelven todos nuestros problemas. Lamentablemente, como la mayoría ya sabe, escribir buen código lleva trabajo. No existen herramientas mágicas que puedan salvarnos (y no importa lo que nos digan los vendedores), pero si hay una herramienta que funciona muy bien para ayudarnos a mantenernos en forma.

Leer más...

Lista de comprobación para hacer TDD

semaforoEl Desarrollo Guiado por Pruebas (o TDD) se suele describir como un ciclo de rojo-verde-refactor, que se repite continuamente, para ir agregando nuevas características o arreglar bugs. La siguiente lista de comprobación que comparte Giorgio Sironi contiene un grupo de preguntas que deberíamos hacernos a nosotros mismos mientras avanzamos por las fases de TDD, para no olvidarnos de la esencia de esta técnica.

Leer más...

Estándares de código... ¿para qué?

aplicacion-xmlComo desarrolladores, nuestro entregable es el código fuente, es lo que producimos, y por lo tanto debemos hacer que se vea bien. Pero, ¿qué significa "bien"? ¿Cómo debería verse? Podríamos armar debates interminables sobre el tema, y los resultados nos desilusionarían. No existe algo como el Mejor Estilo De Codificación.

Leer más...

El concepto de "terminado terminado"

todo-con-tarea-terminada¿No estaría bueno si, una vez que termináramos una historia, nunca tuviéramos que volver a agarrarla? Esta es la idea detrás del "terminado terminado". Una historia no es un desparramo de código sin integrar, sin probar. La historia debe estar lista para ser desplegada.

Leer más...

¡Dejen de reportar errores! (y escriban pruebas automatizadas)

bugLos sistemas de gestión de errores (o "bug trackers") son cuellos de botella, y perpetúan el continuo idea y vuelta entre testers y desarrolladores, además de requerir de mucha documentación para mantenerlos.

Alberto Gutierrez comparte una interesante reflexión sobre cómo crear el mejor sistema de gestión de errores: ¡dejar de reportar errores y empezar a escribir pruebas automatizadas!

Leer más...

¿Qué es el código testeable?

codigo malicioso¿Qué es el código "testeable"? ¿Cómo saber si mi código es testable o no? En los equipos ágiles se habla mucho sobre asegurarse de construir código testable, pero ¿qué significa exactamente? John Boal nos ayuda a definir este concepto con más precisión.

Leer más...

El nuevo Dos Ideas.

Nuevo logo, nuevo buscador, nueva portada, podcast mensual... ¡y muchas novedades más!

Más novedades en Dos Ideas

Los Comentarios.

Javi
Se están cargando Java. Están mezclando un montón de cosas que no son orientadas a objetos y esta sa...
es increíble como una situación mala negativa me trajo hasta este sitio para saber que yo era una pe...
Hola. Muy bueno el post. Quisiera saber que versión de REST es recomendable. RestEasy (JBoss) jerse...
Muy bueno, super claro y lo mejor funciona y deja super claro te felicito
jrg
me gustaría empezar a utilizar Zk, alguien puede decirme como configurar ZK en un proyecto simple.
Tihuilo
Soy nuevo en el desarrollo de software y he escuchado sobre el tema paro no se por donde iniciar, co...

Inspiración.

"Si tú tienes una manzana y yo tengo una manzana e intercambiamos las manzanas, entonces tanto tú como yo seguiremos teniendo una manzana cada uno. Pero si tú tienes una idea y yo tengo una idea, e intercambiamos las ideas, entonces ambos tendremos dos ideas"

Bernard Shaw