miércoles, 12 de enero de 2011

Practica otra cosa que te hundes

En un proyecto me dijeron que el volumen de datos no iba a ser muy grande, lo suficientemente grande para no ser trivial pero no tan grande como para colapsar la memoria RAM del equipo, y los datos debían de guardarse en base de datos. El tiempo de respuesta sí que era importante. La solución más evidente era guardar datos en base de datos y en memoria y las consultas que fueran contra los datos en memoria para agilizar los procesos pero me surgieron dudas como:
  • ¿Como se implementa un modelo donde la fuente de datos es la memoria y no un sistema externo como base de datos, una capa de Web Service, etc?
  • ¿Existe alguna metodología de programación que soporte tener toda la información en memoria (Cache o algo asi)?

En otro proyecto me pidieron que no querían navegación, querían que la pagina web fuera como una aplicación de escritorio. La solución más evidente es hacer todo el entorno como siempre y cuando llegue a la interfaz (que he dejado para el final) lo hare todo con AJAX pero me surgieron dudas como:
  • ¿Como se implementa un modelo no hay navegación?
  • ¿Existe alguna metodología de programación que soporte no tener navegación (SPI o algo asi)?

Al final, la solución tomada en ambos casos (y creo que la solución que se tomaría en el 90 % de casos de cualquier proyecto) es implementarlo de forma tradicional (como si esos requerimientos no existieran porque se salen de la forma tradicional) y una vez que se tenga algo que funcione adaptarlo al requerimiento. FALLO!!!!. A la hora de afrontarlo tienes problemas de rendimiento, tienes que tocar más código del que crees, se multiplican los fallos, la coordinación del equipo desaparece al no saber como afrontar el problema, ….
Esto no debería pasar y para que no pase se debe:
  • Practicar todos los framework, metodologías, etc.. que se pueda. No solo mirando la documentación y mirando el “What´s new” . Hay que picar código.
  • EMPIEZA CON LA METODOLOGIA NUEVA DESDE EL PRINCIPIO. Desarrollar un software de una manera que no te han pedido y luego adaptarlo es como si se pide construir un barco y como los constructores no saben lo que hacen es un coche y luego intentan que flote.

No hay comentarios: