8 consejos para mejorar el rendimiento de nuestras aplicaciones

RendimientoTodos queremos construir aplicaciones con buen rendimiento y que puedan escalar facilmente para satisfacer nuevos requerimientos. Y claro, construir este tipo de aplicaciones no es simple. Pero hay algunos consejos básicos que podemos seguir y que nos ayudarán a evitar errores comunes, aplicando prácticas probadas que mejoran el rendimiento de prácticamente cualquier tipo de aplicación, sea un sistema de servicios o una aplicación web.

Repasemos entonces 8 consejos para desarrollar sistemas escalables de alto rendimiento:

Leer más...

Amazon y MapReduce via Hadoop

Hay tutoriales disponibles ya hace algún tiempo detallando la forma de ejecutar el popular Apache Hadoop MapReduce framework en Amazon EC2. Hoy Amazon comienza a adherir al padrón ofreciendo soporte oficial a través de Amazon Elastic MapReduce. Desde la página del producto:

Amazon Elastic MapReduce automáticamente incrusta una implementación de MapReduce framework en las instancias de Amazon EC2, sub-dividiendo los datos de un flujo de trabajo en pequeñas partes, de forma que ellos puedan ser procesados (la función "map") en paralelo y, eventualmente, recombinando los datos en una solución final (la función "reduce"). Amazon S3 sirve como fuente para los datos que se están analizando, así también como el destino para el resultado final.

Leer más...

Contratos para los proyectos Ágiles, parte 2

ContratoTanto el cliente como el proveedor de software al inicio de un proyecto de desarrollo de software saben que hay demasiado en juego para trabajar sólo con un acuerdo verbal. Un contrato es en realidad un conjunto de reglas escritas de juego. Las reglas correctas incrementan la probabilidad de éxito para ambas partes. Las reglas incorrectas hacen que la cooperación sea dificil y entorpecen el progreso. ¿Cuáles son los tipos de contratos que existen, y cuál es el mejor enfoque para un proyecto ágil? 

Leer más...

Contratos para los proyectos Ágiles, parte 1

ContratoAunque el Manifiesto Ágil valora más a la colaboración con el cliente que al contrato, los contratos son necesarios cuando se trabaja con proveedores externos. Un contrato en realidad es un conjunto de reglas que delimitan el área de juego. Usar las reglas correctas aumenta las probabilidades del éxito para ambas partes. Usar las reglas incorrectas van a dificultar y entorpecer el progreso. Entonces, ¿cuáles son las reglas de juego disponibles, y cuál es el mejor contrato para un proyecto ágil?

En esta primera parte del artículo de Agile Manifesto, vamos a analizar el propósito y contenido de los contratos, y algunos criterios para evaluar a los contratos ágiles. En el siguiente artículo vamos a ver distintas alternativas para contratos ágiles, examinando sus fortalezas y debilidades.

Leer más...

Oracle compró a Sun Microsystems

Oracle Sun MicrosystemsHasta hace unos días estabamos viviendo la telenovela IBM-Sun en un acuerdo que nunca se concretó. La historia llegó hoy a su fin, con un movimiento que sorprendió a casi todos: Oracle adquirirá a Sun Microsystems, a USD 9.50 por acción, lo que resulta en una transacción aproximada de 7400 millones de dólares.

Los detalles en el comunicado de prensa de Sun y en el comunicado de prensa de Oracle.

Leer más...

El Manifiesto Open Cloud

NubeHace unos días se publicó el Open Cloud Manifesto. Básicamente se trata de un manifiesto que habla de las características, propuestas  y desafíos de adopción de la computación en nube (cloud computing) y más especificamente sobre las metas y principios de Open Cloud, es decír la filosofía de que la computación en nube debe ser abierta y no propietaria de ningún tipo.

Leer más...

Las pruebas de integración son una farsa

bombaLas pruebas de integración son una farsa - son como un virus que se auto-reproduce y amenaza con infectar a todo el código, al proyecto, y al equipo con un dolor y sufrimiento sin fin.

Esperen un minuto... ¿¿¿cómo???

Leer más...

¿Qué es una Plataforma como Servicio (PaaS)?

NubeHay ya varias empresas que estás ofreciendo el concepto de Plataforma como Servicio (Platform as a Service - PaaS), pero hay muy poco acuerdo sobre qué es PaaS, y cómo se comparan las distintas ofertas de PaaS entre si. Incluso la página PaaS de la Wikipedia comienza advirtiendo que la definición está llena de palabras de moda y que faltan ejemplos concretos.

Sabiendo que estamos tratando con un concepto todavía en crecimiento, en este artículo vamos a ver una breve introducción a PaaS, sus beneficios y alternativas actuales.

Leer más...

Las 10 habilidades más importantes para los programadores del futuro

RobotEs importante asegurarse que nos estamos beneficiando lo más posible cuando invertimos tiempo y esfuerzo en capacitarnos y aprender cosas nuevas.

En la siguiente lista veremos las 10 habilidades que deberíamos aprender para que nuestro currículum sea relevante por los siguientes 5 años. Esta lista no es completa ni cubre algunos nichos de mercado (como ser los mainframes). Sin embargo, si aprendés al menos siete elementos de esta lista no te vas a equivocar.

Leer más...

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