domingo, febrero 28, 2010

Pensando arquitecturalmente desde Caracas, Venezuela


Hoy domingo, viajé hacia Lima, luego Venezuela para dar, nuevamente, el curso para Arquitectos (de tres días) en IBM. Estoy escribiendo el post desde el avión, en cuanto llegué al hotel lo pongo. Como todos los viajes, me vi unas pelis y lloré como un tarado... estar lejos de Andrés, y de Mechi (y el/la chancho/a) me pone muy sentimental y cualquier media fuerte me hace quebrar.
Por ahora los viajes vienen muy bien, solo que tuve que correr para agarrar la conexión en Lima, pero bueh BAU.
En fin, voy a estar pocos días, el Miércoles a la tardecita me vuelvo y tengo mucho trabajo como para "disfrutar" o recorrer, el poco tiempo libre que tenga lo voy a usar para quemar algo de grasas, ya sea corriendo o en la bici en el hotel.
Esto es todo por hoy, nada nerd/técnico interesante para contar. Eso si, alguien quiere algo de Venezuela, no duden en avisar, eso si, nada de color rojo ;)

jueves, febrero 25, 2010

Arquitectura de Software, ciencia? ingenieria? arte? o alquimia?

Siempre es un tema que sale con birras de por medio y nunca llegamos a la conclusión, digamos que:
1. Es ciencia? La verdad que no, sin entrar en detalle en la definición, la arquitectura de software está claramente lejos de la formalización, gracias adiós, jamás podría pensar un modelo formal para manejar las variables que se consideran para crear una arquitectura, y menos que eso poder validarla. Aunque hay ciertos aspectos de la ciencia que si son interesantes y se usan para tomar decisiones, se me ocurren temas de disponibilidad.
2. Es una ingeniería? Aca creo que nos vamos acercando un poco, aunque todavía no creo que el software haya llegado a la ingeniería todavía, siendo ingeniero (de sistemas, no de software) podría decir que nos falta mucha madurez para tener un un método que me permita obtener el mismo resultado (o parecido) y asegurar la completitud de las necesidades. Obviamente esa es la manera conservadora de ver la ingeniería.
3. Es un arte? Aca estamos un poco más cerca, definitivamente... el proceso de creación de arquitectura está más cerca de la creatividad que de los metodos formales de diseño. En que cabeza cabe que el diseño puede ser "formalizado" y definido en un proceso? Está claro que pueden haber guias, experiencias documentadas, ejemplos, maneras de comunicar un diseño, pero ahora tener un proceso (input-X-output) repetitivo en diferentes contextos y situaciones, yo no creo. Ahora tampoco creo que es puramente artístico la creación de la arquitectura, se supone que debemos que elegir la solución más simple, con mayor reuso (assets, patterns, estilos, etc) y restringidos por tiemos y costos, esta ultima parte destruye (felizmente) la fumatina de los arquitectos. Que según Esteban Lorenzano "Arquitecto con tiempo es más peligroso que mono con navaja"

Ahora bien, si bien creo que la arquitectura de software tiene algunos componentes de la ciencia, se podría decir que está muy cerca de la ingeniería y tiene mucho del arte, he llegado a la conclusión que yo a la arquitectura de software encasillaría dentro de lo que es una alquimia, por que? bueno.... algunos puntos:
  • La alquimia se basa en algunos aspectos de la ciencia, sobre todo las bases
  • La experiencia y sabiduría de quien la practica es el elemento fundamental de la alquimia
  • Arte, que más decir aca la alquimia definitivamente está muy influenciado por la creatividad y la constante expresión
  • El aprendizaje constante de nuevas técnicas
  • La búsqueda del resultado/transformación más apropiado
  • La amplitud recibir y compartir experiencias místicas dentro del proceso
Bueno, este es mi aporte del mes :) opiniones/insultos más que bien recibidos/as