6/02/2006

Libros sobre el cerebro


En mi interés actual sobre la relación entre las emociones y el comportamiento cerebral, he leído algunos libros. No me considero todavía capaz de "criticarlos", así que prefiero, por ahora, listarlos por si es de interés (y a mí para tener la lista en algún sitio!):

  1. Inteligencia Emocional, de Daniel Goleman (aunque lo leí en inglés)
  2. La Inteligencia Emocional en la Empresa, de Daniel Goleman (ídem)
  3. Curación Emocional, de David Servan-Schreiber
  4. El Error de Descartes, de Antonio Damasio
  5. La Consciencia, una Aproximación Neurobiológica, de Christof Koch (todavía sin terminar)
  6. El Hombre que Confundió a su Mujer con un Sombrero, de Oliver Sachs
  7. On Intelligence, de Jeff Hawkins, y su whitepaper en Numenta.
Libros que hemos visto y que pueden ser próximas adquisiciones:
  1. STOP al Fracaso Escolar: el Cerebro al 100%, de Marta Rodríguez
  2. El Cerebro del Reig, de N. Acarin Tusell
  3. La Inteligencia Emocional de los niños, de Lawrence E. Shapiro
¿Alguna sugerencia? Excepto por el libro de Damasio, no acabo de encontrar el vínculo entre la aproximación sociológica y psicológica de las emociones, y el componente neurobiológico subyacente... y mis intentos de leer papers han sido... por así decirlo, frustrantes.

Mi propia guía de turismo de San Francisco (I)

¿Qué me gustaría ver en mi próxima estancia en San Francisco? Obviamente, cosas como el Golden Gate, Yosemite, subirse al tranvía, el museo de arte moderno con las obras de Pollock (si las llego a entender, hasta quizá me gusten!)... pero, aunque menos típicas, hay cosas que me gustaría ver también:
  • La ruta de las universidades: no pido todas, pero Stanford y Berkeley están lo suficientemente cerca como para intentarlo!
  • Más en concreto, el Redwood Center for Theoretical Neuroscience. Seguramente ni lo intente, no tengo el nivel necesario como para siquiera decir "Hola, me interesa lo que hacéis" :)
  • El organismo anteriormente conocido como Stanford Research Institute, ahora SRI International. Historia viva.
  • Aunque tampoco sabría qué decir, un par de centros que no pertenecen estrictamente a mi bagaje, pero sí cercano :): ya sea su ONG o el centro multidisciplinar en el que trabaja, Robert Sanet parece tener una percepción diferente de la terapia visual y comportamental, al menos con respecto a lo poco que se hace en España.
  • Sí, soy freaky, qué le voy a hacer!!!: Google, Oracle, Yahoo!, ...
Seguiremos informando...

Model Driven Architecture

(Traducción y resumen libre del artículo "Model Driven Architecture: A Technical Perspective")
Introducción


MDA es un conjunto de estándares de la OMG que pretende extender UML.

MDA se utiliza para la reducción de costes y la mejora de tiempos para iniciativas tales como:
  • Modelado formal de arquitecturas y procesos de negocios

  • Diseño de SOAs

  • Desarrollo de nuevas aplicaciones

  • Integración y modernización de sistemas propietarios

  • Cumplimiento de CMMI, Six-Sigma, y otros procesos de calidad

La pregunta que MDA pretende responder es cómo pueden asegurarse las empresas de que sus sistemas críticos se basan en estándares acoplables a nuevo HW y SW.

OMG MDA separa la lógica de especificación de características concretas del middleware que lo implemente (p.e. CORBA, J2EE, .NET, ...). Para ello, MDA define una arquitectura de modelos que sirven de guía para la creación de especificaciones. Esto permite desarrollar rápidamente nuevas especificaciones de interoperabilidad.

Tecnologías Utilizadas

MDA ofrece un enfoque abierto y neutral en cuanto a la interoperabilidad, basándose en estándares de modelado de la OMG: Unified Modeling Language (UML); Meta-Object Facility (MOF); Common Warehouse Meta-model (CWM). A partir de estos estándares, MDA permite la creación de Modelos de Dominio estandarizados para industrias verticales específicas.

Descripción

En qué consiste una especificación MDA:
  1. Un modelo base final, independiente de plataforma,
  2. uno o más modelos para plataformas específicas (PSM, Platform-Specific Models)
  3. conjuntos de definiciones de interfaces, cada una de las cuáles describe cómo el modelo base se implementa en una plataforma middleware concreta.
Por otra parte, una APLICACIÓN MDA completa consiste en:
  1. un PIM definitivo,
  2. uno o más PSMs
  3. implementaciones completas, una en cada plataforma que el desarrollador genere

UML y MOF en MDA

MetaObject Facility (MOF) es el estándar base que se requiere formalmente para que una herramienta se pueda considerar "MDA Compliant", y se utiliza para modelar los lenguajes. MOF es lo que permite que los modelos estructural y de comportamiento de UML, y los modelos de datos CWM se transmitan a través de XMI, se almacenen en repositorios que cumplan MOF, y se transformen y manipulen en herramientas que cumplan MOF y generadores de código.

Servicios en un entorno MDA

Los OMG CORBAServices se han renombrado como Pervasive Services en MDA. El nombre implica que una única implementación de un servicio puede dar servicio a toda aplicación que lo requiera debido a que existirán "bridges" entre las diferentes plataformas. En la actualidad existen cuatro servicios:
  • Directory Services
  • Transaction Services
  • Security Services
  • Distributed Event y Notification Services
Algunos conceptos
  • Modelo: un modelo es una representación de una parte de la función, estructura y/o comportamiento de un sistema
  • Refinamiento
  • Abstracción
  • Viewpoints
  • Zooming in/zooming out
PIMs con UML
  1. UML se define mediante conceptos de modelado UML que mejoran la potencia de MDA (está pensado para ello).
  2. Los modelos UML se pueden expresar tanto textual como gráficamente.
  3. Los modelos UML son semanticamente ricos (más que otros lenguajes declarativos):
  • Restrictiones sobre invariantes estáticas
  • Pre y post-condiciones en la especificación de operaciones
  • Se puede definir si un parámetro univaluado puede ser null o no
  • Si una operación tiene efectos colaterales
  • Si los subtipos de un supertipo son tipos disjuntos o forman una partición
  • Patrones de especificaciones, diseños y refinamientos

XMI

XMI es un mecanismo de intercambio entre herramientas, repositorios y middleware. XMI puede producir DTDs XML de modelos UML y MOF, de manera que provee un mecanismo de serialización XML (UML XMI DTD, CWM XMI DTD, IDL DTD, Java DTD).

MOF

MOF permite que MDA define modelos y construcciones de intermcabio. De esta manera, UML o CWN se define en sus términos. MOF es la base del intercambio modelo/metadatos y la interoperabilidad.


Siguiente parada, por tanto: MOF!!!

Pro fni una epxliacoin a etse croreo

Me enncata etse ealnce en el que se excpila con mas dletlae y un pcoo de trieoa la riaadled del fsmoao mmee ... duatrlfdiso

( El ldaio de praaabls se ha codugsineo giarcas a The Jeulbmr)

6/01/2006

Mi Bloglines

Que sí ,Vicente, que sí, que me lo habías dicho hace mucho. Yo con mi "myYahoo" estaba contento. Pero la verdad es que ya tengo demasiados feeds que leer, y ahí MyYahoo empieza a flaquear. Así que por fin me he decidido. Eso sí, seguiré confiando en GoogleDesktop para que me encuentre nuevos blogs de interés :)

Ahora me dirás que XXXX.com es mucho mejor :(

¿Cuál sería el temario de un minicurso sobre tecnologías de búsqueda?: "My two cents' worth" ;)

Hace unos meses propuse a una universidad la impartición de un curso básico sobre tecnologías de búsqueda para "undergraduates"; la idea me surgió a partir de una experiencia en Berkeley. Al final no salió, pero sigo creyendo en este temario, y me parece interesante que en las universidades se forme sobre tecnologías de este tipo, que no tiene que ver tanto con "la moda" sino con una realidad a medio y largo plazo, como es la capacidad de acceso, navegación, extracción y estructuración de información web.

Lo publico por si a alguien le resulta de interés, o si a alguien le interesa la idea :) :

FUNDAMENTOS TEÓRICO-PRÁCTICOS DE LA BÚSQUEDA EN INTERNET
¿SABES CÓMO FUNCIONA GOOGLE?

1. La WWW, esa gran desconocida

2. ¿Una aguja en un pajar?

3. Porque la WWW también tiene historia
- Búsqueda documental
- Search engines vs. Directory engines
- Teoría booleana y bayesiana
- ...

4. Indexación de Información
- Sistemas de Búsqueda en la Web
- Arquitectura de un motor de búsqueda
- Evolución de la Recuperación de Información en la Web

5. Búsqueda de Información
- Algoritmos de "Crawling"
- Indexación en la web
- Algoritmos de Ranking

6. Un caso... no, mejor: EL CASO GOOGLE
- Historia, o como dos estudiantes de Stanford revolucionaron el mundo
- PageRank, o lo que cuentan al menos
- Nuevos descubrimientos

7. SEOs, o cómo aprovecharle de las debilidades
- Qué es un SEO (Search Engine Optimizer)
- Los hay buenos y los hay malos.

8. Sistemas de Clasificación y Categorización
- Motores de Catalogación y Clustering

8. La Web Oculta... y no hablo de espiritismo...
- Información no estructurada vs. información estructurada
- Pues hay más: información SEMI-estructurada... como la web.
- Sistemas Materializados y Sistemas Virtuales
- Google puede con todo? Pues no, con menos del 10%...
- Bienvenidos a la Web Oculta... el "otro" 90%.

9. Sistemas de navegación y estructuración automática en la web
- Si ayudamos un poco, la Web nos lo agradece: estructuración web
- Automatic Discovery: o cómo la web se puede navegar automáticamente.

10. La utopía: Semantic Web
- Qué es Semantic Web, by Tim Berners-Lee
- No es filosofía, pero creamos ontologías
- Por qué la Semantic Web lo tiene crudo... al menos por ahora

11. La realidad: Web Services
- O cómo utilizar una interfaz máquina-máquina en la web
- Unámoslo a la estructuración automática y tenemos... el futuro

12. Conclusiones:
- Dónde estamos:
- blogs, feeds, google library, ...
- Qué veremos antes de casarnos/arrejuntarnos
- Qué veremos antes de tener un hijo
- Qué veremos antes de la comunión del pequeño
- Qué veremos antes de que el niño se vaya de casa (tendencias a largo plazo :) )

Algunos artículos recientemente publicados

Sólo para que sirva de listado, estos son los artículos que he publicado relacionados directamente con mi tesis doctoral:

- Building the Architecture of a Statistics-based Query Optimization Solution for Heterogeneous Mediators

o Autores: Justo N. Hidalgo, Alberto Pan, José Losada, Manuel Álvarez, Ángel Viña

o Ponencia en 6th International Conference on Information Integration and Web-based Applications & Services (iiWAS 2004). Jakarta, Indonesia. September 27th – 29th, 2004

- Arquitectura de una Solución de Optimización Lógica y Física de Consultas en Mediadores de Fuentes Web

o Autores: Justo N. Hidalgo, Alberto Pan, José Losada, Manuel Álvarez

o V Jornadas de Ingeniería Telemática JITEL 2005 (Vigo, 12-14/9/05)

- Adding Physical Optimization to Cost Models in Information Mediators

o Autores: Justo N. Hidalgo, Alberto Pan, José Losada, Manuel Álvarez

o 2005 IEEE Conference on e-Business Engineering (ICEBE 2005) (Pekín, China, 18-20/10/05)

- Efficiently Updating Cost Repository Values for Query Optimization on Web Data Sources in a Mediator/Wrapper Environment

o Autores: Justo Hidalgo, Alberto Pan, Manuel Álvarez, Jaime Guerrero

o 6th Workshop on Next Generation Information Technologies and Systems (NGITS 2006) (Kibbutz Shefayim, Israel, 04-06/07/2006)

- Optimization of Automatic Navigation to Hidden Web Pages by Ranking-based Browser Preloading

o Autores: Justo Hidalgo, Alberto Pan, José Losada, Manuel Álvarez

o 2nd International Workshop on Data Engineering Issues in E-Commerce and Services (DEECS 2006) (San Francisco, California, 26/06/2006)

- Preloading Browsers for Optimizing Automatic Access to Hidden Web: a Ranking-based Repository Solution

o Autores: Justo Hidalgo, Alberto Pan, José Losada, Manuel Álvarez

o 10th East-European Conference on Advances in Databases and Information Systems (ADBIS 2006) (Tesalónica, Grecia, 03-07/09/2006)


Debido a mi bagaje "práctico" en esto de la informática, esto de sacar tiempo de debajo de las piedras para intentar teorizar y modelar ideas de más alto nivel, aunque duro, difícil y en mi caso agobiante en algunos casos, merece la pena.

¿Se mide la madurez de una ingeniería por sus fracasos?

Enlazo aquí dos artículos de Wired, uno sobre los peores "bichitos" del mundo software, y algunos de los errores de ingeniería civil más graves. Algunos de los errores software son ya clásicos y ya en mis clases de ingeniería del software son referencias inexcusables en el intento de hacer entender a la gente que el software es como la construcción: no es lo mismo jugar con el tente o con el lego que construir un rascacielos en Japón o Los Angeles. Pero hay que ser consciente de que la ISW no deja de ser una ingeniería, un proceso mental liderado por humanos y que, por muy procedimentado que esté, por muchas V&Vs que creemos, siempre estamos sujetos a errores, despistes, olvidos, prisas, ... que no tienen nada que ver con la calidad "a priori" de nuestro equipo. Para mí el ejemplo 9 de los casos de ingeniería civil es uno de los más significativos: cambios de última hora (p.e. cuando el cliente llama para pedir un "pequeño cambio que no afectará, seguro, a vuestro trabajo previo" o cuando el desarrollador se da cuenta de un error y lo cambia sin pensar en las consecuencias, o cuando el jefe de proyecto, presionado o no, decide acortar el tiempo de desarrollo o aumentar el número de requisitos).

Vamos, que en todas partes cuecen habas.

5/31/2006

Qué significa ser un murciélago

Sí, sé que se supone que esto es un blog "técnico" sobre temas de ingeniería del software, integración de datos, etc... pero cada vez me atrae más el mundo de las emociones y la consciencia desde diferentes puntos de vista: neurológico, psicológico y social (y aquí sí que lo asocio con los temas gerenciales de la ingeniería del software).

Este artículo es un clásico de la investigación sobre la consciencia, o el problema mente-cuerpo (con las dos escuelas contrapuestas, aquella Cartesiana que cree en una diferenciación absoluta entre ambos componentes, y la otra, que considera que ambas forman un yo indivisible... hacia la que yo me he decantado últimamente...). En concreto, su intención es la de demostrar que es imposible explicar la naturaleza física de ningún fenómeno mental, el carácter subjetivo de la experiencia (me atrevería a llamarlo el carácter homeostático de las experiencias externas, pero quizá esté metiendo la gamba).

El ejemplo que se propone es el de un murciélago, y se basa en que las diferencias fundamentales entre el sónar de los microquirópteros y nosotros provoca una subjetividad tal que impide conocer el funcionamiento mental de los murciélagos desde nuestro punto de vista. Es, al fin y al cabo, la unión mente-cuerpo que comentaba anteriormente. Sin embargo, veo (en mi ingenuidad) el sónar como "una interfaz de acceso" que utiliza el murciélago para acceder al mundo exterior y así extraer sus propias conclusiones. Obviamente, imagino que esas grandes diferencias estructurales y fisiológicas afectan a la organización neuronal del murciélago, lo cuál, efectivamente, explica por qué no podría, en la actualidad, entender al murciélago. Es como si una ontológía de automóviles tuviese que "entender" una ontología de "libros", sencillamente no tiene sentido, aunque al final ambos se utilicen en una herramienta web de búsqueda (estúpido lo sé, pero me sirve). ¿Pero qué significa "entender"? El autor lo explica como la diferencia entre "comportarse como" y "ser". Uno puede pretender ser un murciélago, aunque su estructura interna siga siendo el de un humano.

Bueno, que sirva como introducción a un artículo muy interesante.

Más sobre memorias temporales jerárquicas en proceso de implementación

Lo reconozco... estoy buscando una excusa para volver a escribir en el blog. Creo que en breve tendré, al menos, algunas historietas que contar, por lo que mientras tanto aprovecho para comentar la publicación de un whitepaper por parte de http://www.numenta.com con una primera aproximación a su algoritmo de jerarquías temporales, tras la publicación hace un par de años del libro de Jeff Hawkins, On Intelligence. Aunque es un whitepaper nada más, y todavía quedan muchos detalles bastante difusos, ayuda a ver que el tiempo dedicado sí se está aprovechando adecuadamente. Mi duda, con respecto al post anterior (de hace ya unos meses!) es si al convertirse en "pura empresa" en lugar del enfoque anterior de Centro de Investigación impedirá el acceso a información de detalle o no. Parece que el código fuente será accesible bajo licencia, pero no sé si se seguirán publicando artículos, sea en la web, sea en conferencias o journals.

Mientras tanto, mis lecturas de este paper, y de los fabulosos libros El Error de Descartes, de Antonio Damasio, y El hombre que confundió a su mujer con su sombrero, de Oliver Sacks (un artículo relacionado en Wired aquí) me permite ahondar un poco más en el aspecto neurológico de las emociones... sigo en camino. ¿Alguien quiere comentar algo sobre el tema? Tengo las orejas dispuestas!