martes, febrero 28, 2006

El TLC con Estados Unidos y la Tecnología en Colombia

Normalmente no escribo sobre temas económicos, pero creo que en esta oportunidad el evento histórico lo amerita.

Ayer en la madrugada Colombia y Estados Unidos llegaron a un acuerdo sobre el TLC. Como respuesta a las enormes dudas de los colombianos, el presidente Uribe se dirigió al país explicando las implicaciones, las posibilidades y las medidas para equilibrar los puntos débiles.

Muy interesante observar al presidente, sin embargo, como es casi obvio, no se refirió al sector de servicios y todavía menos al sector de la tecnología. Creo que valdría la pena reflexionar sobre el efecto del TLC sobre el mercado laboral en el área de la tecnología:


  • ¿Habrá mejor acceso a hardware y software?

  • ¿Se facilitará la exportación de software o por lo menos la maquila de software hacia Estado Unidos?

  • ¿Sufriremos una invasión de mano de obra calificada (muy poco probable)?

  • ¿Habrá mayor interés de los gigantes del software por establecerse en Colombia?

  • ¿Será benéfico o negativo el efecto neto del tratado para el sector del software en Colombia?


Hay muchas otras preguntas, esperemos que con el transcurrir y con el análisis de muchos lleguemos a conclusiones que permitan prepararnos para este nuevo orden económico.

lunes, febrero 27, 2006

Review del Portátil Toshiba A5-SP519

Después de seguir mi guía para comprar computador portatil, el día viernes (24 de febrero), recibí el portátil. La transacción fue bastante sencilla, e incluso hubo mucho confianza por parte de ICONIX S.A., el proveedor Toshiba autorizado para Medellín.

A las cinco y media de la tarde llegó el mensajero de ICONIX, ingresó a mi oficina con dos cajas, una de Toshiba y otra de Targus. Al ver la segunda me llevé una agradable sorpresa, pues en el negocio me no se había incluido un maletín.

Destapé la caja, revisé que todo estuviera en orden: manuales, CD de recuperación, Windows XP Professional, factura, empaques originales. Encendí el computador con las manos un poco temblorosas, tanto que dejé marcado en el botón de encendido una huella dactilar del tamaño del dedo índice de Godzilla.

El computadoe inició con la pantalla de bienvenida de Toshiba y mi primera sorpresa fue que la pantalla es bastante clara, es ancha pero no tiene el mismo recubrimiento brillante que los HP, por lo que no tiene ese brillo tan especial. Tengo que aceptar que esto me desilusionó un poco.

Windows XP Professional, inició rápidamente y revisé el procesador y la cantidad total de memoria. Tengo que aclarar aquí que adquirí un módulo adicional de 512 MB, por lo que finalmente el portátil cuenta con 1 GB de RAM, aunque Windows reporta 0.99 MB. Otra aclaración es que la tarjera de video utiliza memoria RAM compartida, por lo que quedan disponibles casi 800Mb.

A continuación revisé la capacidad del disco duro, el acceso wireless, me acostumbré un poco al TouchPad. ICONIX tiene un buen servicio, pues realizar una fase que llaman de “alistamiento”, por lo que instalaron la memoria y cargaron las baterías de acuerdo con las recomendaciones del fabricante. No sé si coindica conmigo, pero no hay nada peor que comprar un dispositivo electrónico y tener que esperar 24 horas antes de poder utilizarlo por esperar a que carguen las baterías.

Finalmente examiné el maletín. Es de lona, marca Targus y el formato es el convencional de portátil, no es un backpack. La verdad yo prefiero este formato aunque grite “aquí llevo cuatro millones de pesos al hombro (US$1.700)”. Por un lado es muy cómo de cargar y por otro creo que le facilita la vida a mi esposa que también utilizará el portátil a menudo para la universidad, para el trabajo, etc.

El fin de semana puse al Toshiba a trabajar. Lo primero que hice fue leer los manuales (increíble pero cierto). Cosas aburridas pero necesarias, claro que son un poco exagerados con el tema de seguridad. Luego me familiaricé con el software que viene incluido. Me llamó mucho la atención el software de conectividad inalámbrica, creo que ahorra mucho trabajo pues permite cambiar de perfiles, conmuta entre Ethernet y Wireless automáticamente, soluciona conflictos de conectividad, etc. Otro plus interesante es el software administrador de la batería, que de igual manera tiene diferentes perfiles (Full Power, High Power, Normal, Duration, DVD Playback, Presentation). Cada uno de ellos se activa con clic derecho. Creo que es muy conveniente, efectivo y fácil de usar.

Después de esta revisión procedí a cargar el software de desarrollo: REM, JDeveloper y MySQL. Todo fluyó sin problemas. El rendimiento del equipo es excelente, el JDeveloper se ejecuta sin mayor esfuerzo incluso ejecutando el contenedor embebido.

El resto de la tarde la pasé realizando un proyecto en REM, ajusté el nivel del consumo a Duración y puede trabajar solamente con baterías durante 3 horas interrumpidas, hasta llegar al 18%.

Tres aspectos finales que me llamaron la atención:

El calor despedido por el equipo no es demasiado, aunque el manual diga que no debe se debe apoyar la parta inferior sobre la piel, pienso que si se hace durante unos minutos no hará ningún daño (teniendo la precaución de no bloquear el ventilador)..

El equipo en general es muy silencioso, aun en una habitación en silencio. No genera ruidos extraños excepto durante la reproducción de DVD. Cuando lo hace, al inicio de la película la cabeza de lectura se mueve y suena bastante fuerte. El equipo cuenta con una utilidad de “Silenciador de DVD” que creo “apaga” el DVD para evitar ruidos extraños durante la operación normal del equipo

La ergonomía del equipo es muy buena, incluyendo el teclado en español, la disposición de las teclas especiales, el botón de encendido. A pesar de esto tuve problemas con el TouchPad, pues mientras escribía, involuntariamente lo tocaba, lo que hacía que se me perdiera texto o que sobrescribiera en otras secciones del documento. Esto resultó bastante molesto, creo que con la práctica desaparecerá o con el uso de un mouse externo.

Mi percepción del equipo es excelente, creo que fue una buena compra. Hasta ahora recomiendo este equipo pode precio, desempeño, ergonomía y soporte.

Resumen de características
Modelo Toshiba A5-SP512
Procesador INTEL Pentium M a 1.73 Gz
1 GB de Memoria RAM
60 GB Disco Duro a 5600 RPM
Pantalla 14” WideScreen
Salida de Video, SuperVideo, USB, WireLess, FireWire (iLink), etc.
Teclado en español
Windows XP Professional
Precio aproximado de esta configuración puesto en Colombia: U$1.442 + IVA
En total son: U$1.673

miércoles, febrero 22, 2006

Mi guía para comprar un computador portátil

Por muchas razones se encuentra la necesidad de comprar un computador portátil: ya tienes un computador de mesa, pero tu esposa también lo necesita, quieres en la cama, quieres trabajar en la finca, quieres hacer los trabajos en la universidad, quieres hacer presentaciones para clientes que incluyen demos de productos, etc.

Mi primera aproximación fue determinar cuanto estaba dispuesto a pagar por un portátil, después de eso empecé a investigar qué me ofrecían por ese precio. Como siempre arranqué con un valor regular y terminé antojándome por máquinas realmente poderosas, que superaban mi presupuesto inicial, pero que cumplían mucho mejor con mis requisitos.

Luego descubrí que debía concentrarme en máximo dos marcas, en este caso preferí HP y Toshiba; los IBM son muy costosos y creo que los Dell, Gateway y otros no tienen cubiertas tan durables.

Encontré las siguientes alternativas para comprar un portátil:

1. Comprarlo a través de Internet (Dell o HP)
2. Comprarlo en Monterrey
3. Comprarlo en un distribuidor autorizado HP o Toshiba

La primera opción tiene la ventaja de la compra directa, pero las enormes desventaja de la inseguridad del transporte, la espera de tres o cuatro semanas y los muy altos precios comparados con otras opciones.

La opción Monterrey es muy atractiva por buenos precios y buena variedad. Sin embargo, indagando detalladamente descubrí que las gangas se dan por dos opciones: porque los precios no incluyen IVA o porque son equipos remanufacturados (refurbished). En el primer caso, si no se paga el IVA, se tendrán problemas legales y problemas de garantía. En el segundo caso, los equipos remanufacturados, no son equipos de primera sino equipos que ya tuvieron algún defecto y que fueron reparados por el fabricante. Ninguna de las dos opciones es admisible para mí, hablando de una inversión tan importante. En el mejor de los casos pagaré el valor del equipo con IVA y obtendré la garantía del fabricante aquí en el país, pero siempre con la duda de si el equipo fue remanufacturado y dudando de la garantía.

Con estos problemas en mente, decidí consultar en los sitios de HP y de Toshiba los distribuidores autorizados aquí en Medellín. Con esta información me dediqué a llamar y a cotizar. Aquí encontré dos casos: empresas que contestaban oportunamente y empresas que parecían poco interesadas en vender. Sin embargo, encontré la agradable sorpresa que los equipos que vendían los representantes tenían un costo muy similar (prácticamente igual) a los equipos vendidos en Monterrey con IVA. Además, comprar el equipo directamente del distribuidor autorizado me asegura una empresa seria, una transacción con menos riesgos, la garantía de tener un equipo totalmente nuevo y la posibilidad de tener un soporte real.

Así que finalmente hice el pedido de un laptop Toshiba A5-SP519 con un módulo adicional de memoria de 512 Mb. Es un Pentium M de 1.73 Ghz, 1Gb RAM, disco duro de 60 Gb, WideScreen 14” y todas las opciones de conectividad (USB, PCMCIA, RGB, Memory Cards, Wireless b/g, etc). El pedido toma una semana (cinco días hábiles) y el pago lo realiza 100% al recibir el equipo.

lunes, febrero 20, 2006

Un poco de oxígeno para la carrera

Vivimos sentados frente a un computador, a veces nos vemos con nuestros compañeros de oficina en reuniones que son una verdadera guerra civilizada, normalmente llenas de eufemismos y aplicando la táctica del “confunde y vencerás”. Cuadriculamos nuestros pensamientos, proyectamos nuestras acciones, presupuestamos nuestros sentimientos y siempre aspiramos lograr nuestros “ambiciosos objetivos”.

Después de esa vida laboral estructurada continuamos con nuestro corre-corre, vamos a la especialización, hacemos trabajos, nos reunimos para discutir ideas de negocio, revisamos las inversiones; que cómo va chocolates, que si es mejor invertir en vivienda que en acciones, que cómo aplico para rebajar la retención. Entonces, después de correr toda la semana, de no tener un tiempo para reflexionar sobre el fondo de la vida, sobre la esencia de lo que nos hace personas, llega el fin de semana.

La tentación de utilizar el fin de semana en cosas productivas es enorme, muchas veces nos dejamos tentar e inevitablemente nos desatrasamos de pendientes, hacemos las vueltas que nos faltan, hacemos el mercado, y si nos queda algo de tiempo, compartimos un par de horas con nuestras familias en la casa de las mamás o de las abuelas. Llegamos nuevamente a la casa, vemos factor X, CSI, o la serie que prefiera el domingo por la noche.

Este agitado ritmo de vida nos desgasta y nos desconecta de cosas simples, relajantes, admirables; cosas naturales que no están hechas de chips y que no funcionan con baterías, que no conoce de mp3, de CMMI o de cronogramas exigentes.

Ir al campo relaja los sentidos aunque inquieta la mente. Permite que los ojos se fijen en el horizonte a lo que la mente responde con bondades como la imaginación y la relajación. Permite admirar cosas pequeñas como las mariposas, que llenas de colores baila sobre las playas de las quebradas. Cosas grandes quitan el aliento, como un toro Holstein de quinientos kilos mirándote fijamente o una gata celosa que furiosa defiende a sus gatitos.

Finalmente, cuanto se empieza a disfrutar la tranquilidad del campo, llega la hora de regresar a la cuidad. El contraste es enorme: de la amplitud a la estreches, del verde al gris, de los animales a los ANIMALES, del horizonte a la facha de un edificio de veinte pisos.

El regreso a la cuidad es inevitable, es nuestro hogar, es en el lugar donde nos sentimos a gusto, productivos y donde alcanzamos nuestras metas. Pero de vez en cuando es bueno hacer una pausa, tomar oxígeno y continuar en nuestra carrera.

viernes, febrero 10, 2006

Las actividades de construcción en un proyecto Web utilizando Java + Struts

Si las fases de iniciación y elaboración han culminado, el proyecto de software se enfrenta a la fase de construcción. Durante esta fase se fabrica el producto con el cual el usuario interactuará directamente. Como esta fase es mucho más concreta y requiere una gran cantidad de recursividad por parte del desarrollador, una buena práctica consiste en definir las actividades que se deben realizar para obtener un producto con buenas características técnicas e implementando la funcionalidad de acuerdo con los requisitos. Enumerar las actividades facilita la concentración del esfuerzo técnico disminuyendo el riesgo de tratar de probar alternativas o tecnologías que puedan retrasar el cumplimiento de las metas de tiempo.

A continuación planteo las actividades que considero componentes fundamentales de la etapa de construcción de software WebCentric utilizando Java y Struts.

1. Modelado de entidades
El objetivo de este modelado es generar el modelo de clases y el modelo entidad relación. El modelo de clases representa el modelo del negocio en tiempo de ejecución, soporta las funcionalidades más transaccionales del sistema

El modelo relacional permite persistir eficientemente el modelo de objetos del negocio. Ofrece capacidades de almacenamiento muy grandes comparado con el modelo objetual. Además, tiene capacidades de consulta avanzadas que ofrecen un manejo más eficiente de procesador y memoria.

Los entregables de esta actividad son.

1.1 Clases que implementan el modelo del negocio
1.2 Tablas que permiten operaciones CRUD sobre el modelo de negocio

2. Implementación de capa de acceso a datos
Consiste en generar la infraestructura necesaria para facilitar el acceso a la base de datos, realizando operaciones CRUD sobre el modelo.

3. Implementación de conversores
Los conversores son el filtro entre la interfaz web y el modelo de objetos de negocio. Los conversores son capaces de recibir conjuntos de strings y convertir estos stings en objetos del modelo aplicando reglas de conversión complejas, validaciones, etc.

4. Implementación de casos de uso
Los casos de uso requieren la intervención de un usuario, por lo tanto, los artefactos generados en esta actividad son:

4.1 Páginas JSP
4.2 Acciones de Struts
4.3 Código pegante entre Acciones, Conversores y Capa de Acceso a Datos

El Enfoque
El enfoque que recomiendo es:

  • Construir la base de datos y modelo de objetos simultáneamente.
  • Implementar las operaciones CRUD más básicas en los DAO, evitando desarrollar operaciones complejas, pues es muy posible que las operaciones que realmente se necesiten se descubran mientras se implementan los casos de uso
  • Implementar los conversores aplicando algunas reglas de conversión complejas, especialmente de conversión de fechas, formateo de identificadores, etc
  • Implementar los casos de uso mapeando cada caso de uso a una acción. De aquí se derivarán actividades sobre los conversores, los DAO y posiblemente sobre el modelo de objetos y de datos.

miércoles, febrero 01, 2006

REST y SOAP

Dentro de mi visión de arquitectura empresarial pienso que REST tiene un lugar privilegiado en el ámbito empresarial al interior de la organización, mientras que SOAP podría estar más orientado al tema de B2B.

Pienso que una plataforma de servicios web REST permite un desarrollo ágil, disminuyen la utilización de recursos (CPU, memoria, ancho de banda, tiempo de desarrollo) al interior de la organización. Además, al utilizar REST se puede definir un estándar simple que sea efectivo para la organización y que solo pocos (comparando entre las personas de la organización vs el mundo entero de IT) necesitan conocer en detalle. Creo que PUBS, la plataforma de publicación de servicios que hemos desarrollado en Suramericana sigue en gran medida el estilo arquitectónico REST y hay de ahí proviene su efectividad.

De otro lado, es muy difícil que una empresa que no está dedicada a la tecnología proponga un estándar efectivamente y que sus socios de negocio lo utilicen activamente. En este caso, la herramienta preferida es SOAP. Este protocolo es estándar, es mantenido por cuerpos bien definidos y organizados y tiene un amplio apoyo de la industria. A pesar de estas ventajas, SOAP tiene desventajas importantes que tiene que ver con la complejidad de sus mensajes, la capacidad de cómputo necesaria para su procesamiento y la necesidad de utilizar librerías de terceros para la interpretación de los mensajes. Creo que SOAP es efectivo cuando se requiere la interacción entre negocios, es decir, puede ser efectivo en el mundo B2B, más específicamente, entre socios de negocios que no tengan una relación suficientemente estable como para acordar un estándar eficiente de intercambio de información.

En el ámbito colombiano es más efectivo utiliza una arquitectura REST para integración tanto al interior de la compañía como entre compañías. El primer caso lo sustenté en los párrafos anteriores, el segundo caso lo sustento en el echo que el presupuesto para tecnología es limitado y se requiere sacar el máximo provecho de infraestructura de IT limitada. Es más eficiente tratar con una pequeña o mediana empresa de despacho de mercancía utilizando REST que SOAP.