Dando buen ejemplo a sistemas artificiales de visión

Acabo de hacer una búsqueda en google de la pregunta “¿me puedes dar un ejemplo?” y me han salido más de 64 millones de resultados. La gente pide ejemplos de cartas de presentación, de canciones medievales, de técnicas de adiestramiento de perros, o de qué ropa ponerse para ir a una entrevista de trabajo. El caso es que cuando queremos entender algo o aprender algo, un buen ejemplo nos ayuda. Y digo un buen ejemplo, porque un mal ejemplo, tomado como bueno, puede llegar a darnos serios problemas.

De la misma forma que las personas aprendemos de los ejemplos, las máquinas también lo hacen. Y para que una máquina aprenda bien un determinado concepto necesita que le demos buenos ejemplos. Pero, ¿qué es un buen ejemplo? ¿Todos los ejemplos pueden explicar o ilustrar correctamente un concepto? La respuesta es no. Para explicar un concepto a una máquina deberemos elegir ejemplos que le resulten claros para que entienda bien lo que queremos que aprenda. La dificultad está en que no siempre es obvio cómo encontrar buenos ejemplos y muchas veces un ejemplo puede inducir a una confusión inesperada (véase Fig 1).

Figura 1. Confusión

Dentro del contexto de la visión por computador tenemos evidencias claras de que algunos ejemplos son bastante mejores que otros. Y entender bien si un ejemplo es bueno o no es importante, porque cada vez habrá más máquinas a nuestro alcance capaces de aprender, y cuando necesitemos que aprendan algo tendremos que saber cómo enseñarlas.

De hecho hoy en día ya es posible enseñarle a nuestro iPhone a ver objetos. Podemos hacerlo con la aplicación gratuita DetectMe, diseñada y desarrollada en el Massachusetts Institute of Technology. Con esta aplicación nuestro móvil puede aprender a detectar un objeto cualquiera después de haber visto algunas imágenes de este objeto. Y una de las cosas que hemos observado es que algunos usuarios son mucho más hábiles que otros a la hora de enseñarle a ver.

Para poder estudiar las dificultades que tiene el público al usar este tipo de aplicaciones se han creado, dentro de DetectMe, algunas competiciones para entrenar* objetos concretos (tazas, sillas, mesas…). En estas competiciones cada usuario puede entrenar un detector tomando fotos que se usan como ejemplos para el sistema. Luego los detectores se testean con una base de datos fijada y el test da a cada detector una puntuación que depende de lo preciso que es. Si la puntuación es alta esto quiere decir que el detector es bueno.

Figura 2. Tabla de puntuaciones de la competición de tazas

En la Fig. 2 podemos ver la tabla de puntuaciones de la competición de tazas, así cómo los ejemplos que se han usado para entrenar el mejor detector y el detector que está en la posición 9. Fijaros que el mejor detector ha sido entrenado con un solo ejemplo mientras que el noveno se ha entrenado con 11 imágenes. El sistema de aprendizaje que hay detrás es exactamente el mismo, pero parece obvio que la satisfacción del usuario que obtiene 729 puntos va a ser muy diferente que el que obtiene sólo 23. El primero ha conseguido entrenar un detector de tazas que va a ver tazas con una fiabilidad aceptable, pero el segundo os aseguro que se debe sentir bastante frustrado, porque su detector no va a ver nada y además se ha tomado la molestia de hacer 11 fotos de tazas.

La gente usa DetectMe para entrenar una gran variedad de objetos (gafas, camisetas, plátanos, cepillos de dientes, bicicletas) y este tipo de comportamiento en las puntuaciones lo observamos para cualquier categoría. Y a veces los mejores detectores están entrenados con muchas menos imágenes que los peores. Esto es especialmente sorprendente porque, en general, lo mejor para entrenar sistemas de aprendizaje artificial es usar la mayor cantidad de datos posibles. Sin embargo, estamos viendo que también es esencial que los ejemplos sean buenos representantes del concepto a aprender. Y no es evidente saber cómo se tienen que tomar las fotos para que los ejemplos resultantes sean claros para una máquina, así que caracterizar qué es un buen ejemplo es un problema importante.

Entre las cosas que hemos estado estudiando hemos desarrollado un sistema que permite visualizar la información que aporta un ejemplo. Para ello usamos un cierto conocimiento adicional: sabemos qué tipo de características extrae el sistema de la imagen y también qué algoritmo de aprendizaje usa la máquina. En pocas palabras, la idea detrás de estas visualizaciones es crear una especie de caricatura de cada ejemplo que muestre que es lo que más destaca en él y lo que lo hace más diferente al resto de imágenes del mundo. Esto nos permite entender que es lo que ve la maquina y que es lo que le puede crear confusión.

Figura 3. Visualizaciones del detector de bicicletas

En la Fig. 3 podéis ver algunas visualizaciones para el caso de un detector de bicicletas. En los ejemplos buenos (arriba) la información visual más relevante de la imagen parece ir asociada con el objeto que queremos que aprenda a detectar. La prueba es que seguimos identificando claramente la bicicleta en las imágenes filtradas (a la derecha). En el caso de los ejemplos “malos del todo” (a bajo) ya parecía más intuitivo que esto no iba a ir bien, porque el objeto en la imagen original está cortado y medio oculto. Y nuestras visualizaciones confirman que la información que hay en estas imágenes no va muy asociada al concepto de bicicleta, ya que después de filtrar las imágenes es difícil reconocer el objeto. Sin embargo, lo que pasa en el caso de los ejemplos “un poco malos” es menos intuitivo. Las visualizaciones de estos ejemplos nos evidencian que la información relevante de la imagen no va asociada al objeto sino a otros contornos de la imagen. Esto quiere decir que el ejemplo está dando información confusa al sistema.

Y volviendo a la Fig. 1, ¿nos permite esta visualización entender qué está pasando? Podéis ver el resultado en la Fig. 4.

Figura 4. Visualización de la confusión

Nuestro objetivo, al final, es tener un sistema que permita saber automáticamente si un ejemplo es bueno o no. Y con ello podremos orientar al público en general a poder usar satisfactoriamente este tipo de herramientas sin la necesidad de tener una base técnica en visión por computador. En el futuro nos gustaría extender esta idea a otros ámbitos que no sean necesariamente imágenes. Nuestro sistema se podría usar para analizar textos y ver, por ejemplo, qué palabras son las que están dando la información relevante en un párrafo. En educación esto podría servir para analizar si se está describiendo bien un determinado concepto o si una definición es clara o no. De esta forma usaríamos técnicas de aprendizaje artificial para encontrar pautas que permitan mejorar nuestras propias metodologías de enseñanza y aprendizaje.

entrenar* : es el término que se usa en aprendizaje artificial para la acción de enseñar a una máquina a hacer algo.

REFERENCIA

Agata Lapedriza, Hamed Pirsiavash, Zoya Bylinskii, Antonio Torralba. Are all training examples equally valuable? (http://arxiv.org/abs/1311.6510)

Àgata Lapedriza es licenciada en matemáticas por la Universitat de Barcelona y doctora en informática por la Universitat Autònoma de Barcelona. Es profesora e investgadora de la Universitat Oberta de Catalunya (UOC), en los Estudios de Informática, Multimedia y Telecomunicación. También es investigadora en el Massachusetts Institute of Technology. En la UOC coordina asignaturas de matemáticas y estadística, y dirige tesis de doctorado y proyectos de grado y máster en el ámbito de la inteligencia artificial. Su actividad de investigación se centra en temas de visión por computador y aprendizaje computacional.

Antonio Torralba es licenciado en Telecomunicaciones por la Universitat Politècnica de Catalunya (UPC) y doctor en informática en tratamiento del señal, la imagen y procesamiento del habla por el Institut National Polytechnique de Grenoble (Francia). Es profesor e investigador del departamento Computer Science and Artificial Intelligence Laboratory (CSAIL), en el Massachusetts Institute of Technology (MIT). Es editor de las revistas IEEE Trans. on Pattern Analysis and Machine Intelligence e International Journal in Computer Vision. Ha recibido los premios National Science Foundation (NSF) Career award (2008), best student paper award at the IEEE Conference on Computer Vision and Pattern Recognition (CVPR) (2009), i J. K. Aggarwal Prize from the International Association for Pattern Recognition (IAPR) (2010).

Publicado en Investigación | Etiquetado , , | 2 comentarios

Universidades innovadoras (y II)

La introducción de la educación online es probablemente la mayor fuente de disrupción en la enseñanza superior desde la invención de la Universidad. La tecnología habilita posibilidades y permite modelos de educación y de negocio que de otra manera no serían viables, pero no puede considerarse aisladamente. Tampoco está exenta de las virtudes, los riesgos y perversiones privados y públicos de las universidades tradicionales, que analizábamos en la primera parte de esta entrada.

Modelos de negocio para estudios superiores según Gartner

Cuando leía la caracterización del modelo online que hacen en su libro Christensen y Eyring, recordaba no sin emoción la visión que tuvo el rector Gabriel Ferrater durante la creación de la UOC y que aún está hoy entre sus fundamentos. Usan casi veinte años después casi las mismas palabras:

1) La universidad en línea permite el acceso a la enseñanza superior a gente que normalmente no podría estudiar (los non consumers) por tiempo, distancia o dinero. Hasta que un día, según el paradigma de la disrupción, penetra en el espacio natural de los incumbentes: o sea, es ya para todos.

2) La universidad en línea permite servir a muchos más estudiantes con los mismos costes o menores, reduciendo el coste por estudiante, que debería ser el indicador principal de nuestro éxito.  Pero, naturalmente, una parte de la gracia es vender más, mucho más supongo, y reducir dramáticamente el abandono. (La sección final del libro incluye una colección de métricas, indicadores de gestión para hacer números que recomiendo a rectores y gerentes).

3) La universidad en línea permite cambiar el modelo educativo. Los estudiantes aprenden por sí mismos o entre ellos, con la ayuda de buenos materiales didácticos de todo tipo y la tutela de un profesor-mentor. El tiempo dedicado al estudiante y la calidad de la tutoría personalizada aumentan, paradójicamente. El colaborador docente aporta también a menudo una visión más profesionalizadora. Trabaja a tiempo parcial, a precios comparativamente bajos, de manera que la mayor parte del coste salarial de la institución es variable.

4) El profesor titular, además de su aportación de conocimiento, es quien programa y supervisa el curso. Es más un ingeniero de calidad de un proceso industrial (aunque personalizado) que un catedrático. Ayuda a innovar y mejorar los componentes, contenidos y herramientas de aprendizaje e investiga en cierta proporción sobre su área de conocimiento y sobre los modelos de e-learning.

5) La educación en línea permite customizar y personalizar  los itinerarios, los programas y las asignaturas con mayor flexibilidad y rapidez, crear curriculums singulares y también dejarlos morir. Permite eliminar las vacaciones o, al menos, hacerlas más cortas y ampliar o adecuar los calendarios en un campus global. Permite establecer más fácilmente acuerdos interuniversitarios y racionalizar la oferta universitaria en su conjunto. No tiene por qué ser exclusiva y puede mezclarse con modelos presenciales (aunque los costes de adquisición de competencias digitales y el cambio cultural entre la facultad son muy altos, no nos engañemos).

La tecnología es central para las universidades digitales, que se parecen más a las empresas de Internet, la publicación digital o los constructores de software. Pero hoy ha dejado de ser diferencial, si no lleva asociada modelos de negocio y de aprendizaje que realmente sean únicos. Existen proveedores de soluciones completas, como Blackboard, que irán perfeccionando su oferta. Existen modelos de educación en abierto, como los MOOCs u otros, cuyo recorrido aún no podemos prever. Nuevos proveedores, que llegan de mundos aparentemente remotos, como el editorial de Pearson, están penetrando el mercado. La globalización de la enseñanza superior, el acceso de centenares de millones de clientes potenciales en todo el mundo, la consumerización de la educación, la cultura de lo gratis y el low cost, la crisis de la subvención pública… son algunas de las verdaderas amenazas, pero también oportunidades.

Nos ha visitado estos días en la UOC Jan Martin Löwendahl, analista de universidades de Gartner. Nos está ayudando en nuestro Máster Plan de Sistemas de Información. Lowendahl dibujaba un mapa de escenarios de negocio en el que la mayoría, presenciales o virtuales, estamos actualmente en el cuadrante de “Everybody U“, o sea, todo para todos, “bigger and better“. Ya se ve que esto no puede ser: no es sostenible, ni competitivo.

Christensen y Eyring acaban su libro con un solo consejo. Para cumplir la misión indispensable que la sociedad nos ha encomendado a las Universidades, para honrar nuestro pasado, para hacer nuestro trabajo de descubrir y diseminar, de recordar los aciertos y errores del conocimiento recibido y de nutrir y ayudar a crecer a las generaciones futuras, las Universidades necesitan reinventarse “from the inside out”. La tecnología ha jugado y jugará un papel disruptivo, que todavía no ha acabado. Pero la verdadera llave es ”podar y enfocarse” (“focusing and pruning”). Peter Drucker, maestro, lo llamaba “la bella costumbre de abandonar, dejar de hacer”.

He compartido estos pensamientos entre algunos colegas, profesores como yo. Nos parece guay… siempre que la poda no empiece por lo nuestro.

Publicado en General | Etiquetado , , , , | 3 comentarios

Universidades innovadoras (I)

Uno de los primeros libros (2002) sobre las universidades en línea comenzaba así: “La universidad como institución está en crisis.” A pesar de que la demanda de educación superior era y sería mayor que nunca, ya se percibía desde mitad de los 1990 como “un dinosaurio” y “una institución en ruinas”.

Esto era el Reino Unido, la cuna del invento. En Estados Unidos, el informe de la Secretaria de Estado Margaret Spellings (2006) describía la universidad americana como “adversa al riesgo, autosatisfecha e innecesariamente cara”.

Logo de la Universidad de Harvard. Imagen utilizada bajo criterios de Fair use.

Años después, el informe del Instituto McKinsey (2011) señalaba la falta de productividad de las universidades norteamericanas y las enormes disparidades de eficiencia, debidas principalmente a la obsesión por el crecimiento de la oferta académica, las instalaciones físicas y los equipos de fútbol.

Hoy quiero hablaros de un libro extraordinario, cuyas huellas, como las migas de Pulgarcito, he ido dejando por aquí a medida que me lo estudiaba. Se llama The Innovative Universityestá escrito por nuestro amigo Clay Christensen, profesor de Tecnología y Operaciones en la Harvard Business School, y su colega Henry Eyring, gerente de la Brigham Young University-Idaho, una pequeña universidad de pueblo convertida en una potencia de la educación híbrida (en parte presencial y en parte virtual) y fuerza de choque de la iglesia mormona en todo el mundo. El libro se publicó en 2011, poco después del informe de McKinsey y es una excursión erudita pero cautivadora y apasionante por la historia de la decadente gran universidad americana y por las alternativas que proporcionan otros modelos de enseñanza superior una vez sometidos a una auténtica disrupción.

La cuestión, para los autores, es que todos hemos querido ser Harvard, “the compulsion of having everything at its best”, bigger and better”, “moving up the ladder” de los rankings locales e internacionales, sin tener los fondos, los estudiantes y los premios Nobel de Harvard, su cultura de innovación continua y de gerencia empresarial. El problema es que no hemos querido ver, contestar y actuar sobre las preguntas simples de la estrategia organizacional a las que nos referíamos hace poco aquí: quiénes son nuestros clientes, cuáles son nuestros productos, cómo nos ganamos la vida. La respuesta a estas preguntas constituye un modelo de negocio, una expresión que aún repugna a muchos.

Para quienes hemos seguido y admirado a Christensen, este libro tiene todavía más interés, ya que representa otra vuelta de tuerca del paradigma de la innovación disruptiva. El modelo de negocio del incumbente está imbuido en su código genético de una serie de rasgos fundamentales (algunos degenerativos o perversos) cultivados activamente a lo largo de los años, compartidos y celebrados con sus iguales:

  • la relación presencial (o, al menos, el contacto visual) con el dueño del conocimiento,
  • la super-especialización de departamentos y cátedras,
  • las carreras profesionales para toda la vida, con una razonable libertad (“de cátedra”), en una organización jerarquizada,
  • la preferencia (y los incentivos) del profesorado por el trabajo de investigación sobre el de docencia,
  • los enormes campus a salvo de los vaivenes inmobiliarios,
  • la facilidad para crear cursos y programas y la dificultad para su extinción,
  • las largas vacaciones,
  • la selectividad en la admisión,
  • el principio y la celebración del mérito, sobre el principio de adquisición de competencias útiles para trabajar,
  • las caras actividades extra-curriculares,
  • un management inocuo y
  • un autogobierno opaco al escrutinio público.

(La Castalia de Hesse, con sus virtudes y vicios públicos, es un leit motif de todo el libro).

Los nuevos modelos universitarios, y en particular, la introducción de la formación en línea, representan, aún más que en cualquier otro sector, una verdadera reingeniería genética, que las grandes universidades tradicionales muy difícilmente pueden abordar con su propio sistema de valores. Dedicaremos a esta transformación radical la segunda parte de la entrada.

Publicado en General | Etiquetado , , | 10 comentarios

BigData y eCommerce

Sin duda, el Big Data tiene aplicación en infinidad de sectores, como son la seguridad ambiental o las smart cities. En el comercio electrónico tiene un potencial enorme. De hecho, en este blog ya se ha tratado en diferentes ocasiones.

En cuanto a la tecnología, Big Data tiene ya un buen grado de madurez. Disponemos de frameworks como Hadoop o Storm para el desarrollo de soluciones. También disponemos de proveedores de servicios que nos proporcionan los recursos (almacenamiento, procesado, etc.) necesarios, como Amazon Web Services.

Library confusion. Imagen de dominio público, por Sam Hood (1952)

En cuanto al marketing, las empresas cada vez requieren más información sobre sus clientes, cada vez necesitan ser más ‘customer centric‘ para poder tener más oportunidades de negocio y ser más competitivas. Para esto se necesita almacenar y procesar gran cantidad de datos, de distintas fuentes. Este es un terreno que ofrecerá grandes oportunidades para los informáticos.

Algunos de los retos que los desarrolladores de soluciones para eCommerce tendremos en los próximos años serán:

  • Gestión de la captación de gran volumen de clientes (o posibles clientes) a través de distintos canales (e.g. buscadores, redes sociales, móvil, etc.).
  • Análisis del comportamiento de los usuarios (e.g. gustos, tendencias, etc.).
  • Segmentación de los usuarios y visualización de contenidos (o productos) personalizados por usuario.
  • Gestión de ofertas y precios automáticos y personalizados (según el mercado, estado de las ventas, tiempo de caducidad de los productos, etc).

Hay un montón de argumentos que hacen el Big Data un negocio interesante para un desarrollador o un emprendedor:

  • Requiere de grandes infraestructuras, complejas de mantener, no disponibles para cualquiera. Una barrera de entrada interesante.
  • Es fácil y lógico venderlo en modalidad SaaS (Software As A Service) en la nube. Por el primer argumento.
  • Una vez hecho, el cliente tiene problemas para cambiar de proveedor porque tanta información es difícil de mover.
  • Al tratarse de una aplicación en la nube, resulta fácil que los clientes adopten la solución.

Os animo a dejar en los comentarios más retos para los desarrolladores de soluciones para el eCommerce y argumentos para invertir en aplicaciones de Big Data (orientadas al comercio electrónico).

Albert Coronado es Ingeniero Superior en Informática y Master en Dirección Económico-Financiera de la empresa por la UOC con mas de 14 años de experiencia en el mundo de la informática corporativa. Actualmente trabaja como Freelance ofreciendo servicios de Consultoría, Desarrollo y Formación en proyectos relacionados con portales corporativos y de eCommerce.

(Nota de los editores: Esta entrada se publicó originalmente en el blog del autor)

Publicado en Business Intelligence, Profesión | Etiquetado , , | 3 comentarios

Leaky

Hace poco me he reencontrado con un término que conocí hace tiempo y que creo que tiene su gracia. Se trata de “leaky abstraction“, que vendría a traducirse como “abstracción goteante”. Éste fue propuesto por Joel Spolsky  en un artículo hace más de una década (The Law of Leaky Abstractions) y la idea general es la siguiente: Como ingenieros, una de las herramientas básicas que utilizamos para simplificar la creación de arquitecturas complejas es la abstracción. Generamos diferentes capas o componentes que actúan como cajas negras con una interface, de manera que sea posible usarlas sin tener que conocer los detalles de la implementación. Por ejemplo, un sistema operativo es una abstracción del hardware donde se ejecuta, o las bibliotecas de clases contenedoras abstraen los detalles del almacenamiento de estructuras de datos en memoria, etc. Esta herramienta es muy importante de cara al mantenimiento de una arquitectura o que otros reusen nuestros componentes. Sin embargo, por muy buenas que sean nuestras intenciones, hay casos en los que intentar abstraerse totalmente del funcionamiento interno de la caja negra puede ser contraproducente. Si ocultamos totalmente este funcionamiento interno, con una abstracción al 100%, algunos resultados pueden parecer arbitrarios o incomprensibles.

En el artículo original, se usa como ejemplo la pila TCP/IP. Si un desarrollador intenta crear una capa TCP partiendo de la abstracción total de las capas inferiores IP y acceso a red, se va a encontrar con sorpresas sin saber el motivo. Desde su punto de vista, a veces una conexión irá muy rápida y otras más lenta, ya que IP puede redirigir los paquetes usando distintas rutas. A veces, súbitamente, dejará de funcionar sin motivo aparente. El servidor en el otro extremo está en marcha, pero a nivel de acceso a red alguien puede haber desenchufado el cable. Como todos estos aspectos están abstraídos, TCP no es “consciente”, y no sabe prever como van a funcionar las cosas. Quizá el ejemplo no es perfecto (en el artículo original se explica más detalladamente), pero la idea general sí que tiene sentido. Por más que nos esforcemos en abstraer, algunos aspectos de implementación nos acaban afectando igualmente, independientemente de lo perfecto que sea la interfaz definida. La abstracción “gotea”.

En el campo del desarrollo de aplicaciones criptográficas, que es con el que a menudo me peleo, las abstracciones resultan especialmente interesantes. Tras la mayoría de algoritmos criptográficos existe una base matemática que puede tener un cierto grado de complejidad. No siempre son conceptos intratables, sobretodo si, como ingenieros, partimos de una formación con background matemático. Pero no tiene ningún sentido que para que un desarrollador pueda proteger unos datos usando un algoritmo de cifrado, debamos conocer exactamente cómo funciona éste internamente, a nivel de permutaciones u operaciones lógicas. Esto nos ayuda bastante a concienciar al personal para crear aplicaciones seguras.

Basta con que el lenguaje de programación favorito proporcione unas bibliotecas criptográficas, o sea, una capa de abstracción, y el poder de un algoritmo de cifrado como AES “aparece” tras teclear unas pocas líneas de código. Esto no evita tener que conocer algunos detalles, como el hecho de que se trate de un algoritmo de clave simétrica de una longitud concreta. Pero no necesito saber qué caramba es un “SubBytes” o un “AddRoundKey”. Solo necesito conocer el significado de los parámetros de la función o método de turno, como pasa en cualquier otra llamada de otra biblioteca, sin resultar imprescindible saber CÓMO se usa todo esto internamente.

La transformación AddRoundKey en AES

En este campo, sin embargo, también existen “abstracciones goteantes”, algunas relativamente interesantes. El uso del algoritmo RSA para cifrar datos directamente es un caso con el que me he topado unas cuantas veces. Siempre me provoca una sonrisa cuando veo al compañero de turno, sin el background matemático pertinente en criptografía, maldecir sin saber qué está pasando. Dicho algoritmo de cifrado corresponde al tipo denominado de clave publica. Para usarlo se necesitan dos claves criptográficas en vez de una: la pública, que distribuyes libremente, y la privada, que como su nombre indica, guardas en secreto. Cuando alguien te quiere enviar datos seguros, los cifra con la pública. Para descifrarlos, lo haces con tu clave privada. Esta es una explicación simplificada a nivel conceptual, pero es suficiente para usarlo correctamente a través de las bibliotecas criptográficas de turno. No necesitas saber la matemática subyacente para nada… ¿o sí?

Sin entrar en profundidad en la matemática, la transformación de cifrado del RSA se basa en dos factores (pun intended). Por una parte, las entradas se tratan como valores enteros codificados en binario. Por otra parte, sobre dichos valores enteros se aplica una operación de exponenciación modular. El quid de la cuestión está en que, como su nombre ya indica, esta operación aplica un módulo sobre los datos a cifrar, lo que implica automáticamente que los datos se van a truncar si la longitud de éstos es superior a la del módulo. Concretamente, en la fórmula original, el módulo en cuestión equivale al número de bytes que se necesita para representar una clave RSA. Por ejemplo, con una clave RSA de 2048 bits el resultado jamás ocupará más de 256 bytes. Por lo tanto, esta será la longitud máxima de los datos que se pueden cifrar, el resto se perderán. Si no sabes estos detalles de la matemática tras el RSA, que quedan completamente ocultos por la capa de abstracción de la biblioteca criptográfica, lo único que verás es que los datos de salida a veces se trucan y a veces no. Como mucho, si miras con un poco de paciencia, puedes llegar a ver que este hecho depende de la longitud de los datos a cifrar y la de las claves.

Mirando el caso de Java, afortunadamente, en la últimas versiones ya produce un error si caes en esta trampa. Pero en versiones anteriores no tenía ningún problema en truncar datos alegremente, por sorpresa. De todos modos, sin saber como funciona matemáticamente RSA, que el método te diga que con una clave de 2048 bits no puedes cifrar más de 245 bytes parecerá una restricción absolutamente arbitraria. Sí, he dicho 245 bytes, ya que como nuevo detalle oculto de implementación, al valor máximo especificado por el módulo le resta 11 bytes para generar un “padding” en los datos resultantes. El caso es que la abstracción “gotea” por unos cuantos lados…

Si tenéis curiosidad, aquí os dejo un código de ejemplo de todo esto:

import java.security.KeyPair;
import java.security.KeyPairGenerator;
import javax.crypto.Cipher;

public class LeakyRSA {

//Longitud de la clave
// 1024 = módulo de 128 bytes
// 2048 = módulo de 256 bytes
private static final int KEY_LEN = 2048;

//Longitud de los datos (en vesriones actuales de Java, a partir de
//(mòdulo - 11) dará error)

private static final int DATA_LEN = 245;

public static void main (String[] arges) throws Exception {

//Generamos las dos claves
KeyPairGenerator keyGen = KeyPairGenerator.getInstance("RSA");
keyGen.initialize(KEY_LEN);
KeyPair keys = keyGen.genKeyPair();

//Generamos datos al azar
String data = "";
for (int i = 0; i < DATA_LEN; i++) {
data += (i%10);
}

//Ciframos datos
Cipher cipher = Cipher.getInstance("RSA/ECB/PKCS1Padding","SunJCE");
cipher.init(Cipher.ENCRYPT_MODE, keys.getPublic());
byte[] encryptedData =  cipher.doFinal(data.getBytes());

//Desciframos datos
cipher.init(Cipher.DECRYPT_MODE, keys.getPrivate());
byte[] resultData =  cipher.doFinal(encryptedData);

//¿Qué ha pasado?
System.out.println("ENTRADA - Longitud inicial = " + data.length());
System.out.println(data + "\n");

String result = new String(resultData);
System.out.println("SALIDA - Longitud final = " + result.length());
System.out.println(result);

}

}

Cabe decir que, para poder solventar esta limitación en la longitud de los datos de entrada, y otras que existen ligadas a la eficiencia del algoritmo, se usará la técnica llamada de “sobre digital“, basada en combinar cifrado simétrico y de clave pública.

La moraleja en esta historia es simple. Como ingenieros, no basta con quedarse en saber que las cosas funcionan. Es necesario que saber el por qué. ¡Ay!, si me dieran un euro por cada vez que he oído “Si yo sólo quiero programar ¿por qué tengo que aprender las matemáticas en las que se basa la criptografía?”.

Joan Arnedo Moreno es profesor de los estudios de Informática, Multimedia y Telecomunicaciones en la UOC. Coordinador de las asignaturas de la rama de seguridad y director académico del postgrado de Cisco Networking Technologies, también cuenta con más de 30 años de experiencia jugando a videojuegos.

Publicado en Desarrollo, Profesión | Etiquetado , | 2 comentarios

Datatopía: Inteligencia de Negocio en Londres (y II)

Seguimos explicando algunas conclusiones de la 15ª edición del evento de Inteligencia y Analítica de Negocio de Gartner de hace unos días.

Datatopia como opción privada de compraventa y cesión de datos personales

  • Datos estructurados, semiestructurados y no estructurados. Aquí sí que hay una diferencia. La mezcla de datos sociales, geográficos, de texto, de imagen, los procedentes del uso móbil del cliente y el empleado… que se resisten a una estructuración formal, a relaciones de causa-efecto y a búsquedas SQL… ha venido para quedarse. Sin embargo, casi todo el mundo (fabricantes y compradores) sigue invirtiendo en su datawarehouse, sólo que los productos son ahora más complejos y ya no hay nadie que no mezcle bases de datos relacionales con Hadoop y otros inventos, en una especie de DW “extendido”. Vale también para los sistemas in-memoryEl nuevo BI es y será una mezcla de análisis y descubrimiento y un abanico más abierto de productos.
  • Big data y social analytics como moda (¡cómo mola!). En cambio, Big data aparece como un buzzword, una moda pasajera que ha venido bien para interesar a gente desinteresada y ganar un poco de tiempo y capacidad para innovar; la diferencia es más cuantitativa que cualitativa: ¡son sólo datos! Dentro de poco tiempo habrá otra palabra de moda, se sugería fast data. También se consideran over-hyped, o sea por encima de su valor real, la afición por los datos procedentes de las redes sociales, debido a la dificultad de convertirlos en valor, más allá de la defensa de la reputación y algún otro uso folklórico.
  • Y todo en la nubeAunque sólo sea por volúmenes y velocidad de proceso (IaaS), pero también por la aparición de multitud de productos y modalidades de provisión del software (SaaS) y las competencias de inteligencia y analítica como servicio. Sobre todo, si por tu nivel de madurez estás entrando o creciendo en este espacio, a lo mejor no necesitas empezar un proyecto largo y costoso de gestión de datos y puedes hacer más cosas más ágiles con ayuda de la nube.
  • ¿Gobierno de datos o self-service? IBM presentó una serie de productos nuevos, llamada Watson, que está entre la Wikipedia y Harry Potter. Permite contestar casi cualquier cosa formulada en lenguaje natural, te invita a formular nuevas preguntas, es un conjunto de aplicaciones móviles y elimina la necesidad de científicos de datos ni centros de competencias. Sin embargo, la opinión más ponderada es que, aunque aumentará el autoservicio y las herramientas para tontos, diferentes formas de gestión y gobierno de los datos, propios para cada tipo de organización, seguirán siendo necesarios. La figura del Chief Data Officer, como parte de una estrategia global de gestión de la información (Enterprise Information Management), se va extendiendo como alguien de primer nivel que define la estrategia y “toma decisiones sobre el valor, la calidad y la confianza de la información”, en formas de organización quizá más federales.
  • La ética de la inteligencia de negocio. En el mejor de los mundos datatópicoslos asistentes parecían coincidir en la necesidad de establecer principios o normas de aceptación general sobre la captura y el uso de los datos personales y una conciencia personal y social. Parecía que lo decían muchos y lo decían en serio. Snowden y la NSA se intuían como fantasmas en el evento (gracias, Josep Jorba).
  • Y datos abiertos (open data). Ese mercado, mercadillo o trueque de datos, al que nos referíamos al inicio de esta serie, deja un espacio ya no marginal ni bienintencionado para la puesta a disposición de datos personales y corporativos al alcance de todos. Es un negocio para algunos, una oportunidad para las políticas públicas para otros y acaso también una garantía para todos.

Entre los islotes de este escenario abierto, megatodo y enormemente cambiante, predominaba una idea de la tecnología como valor de opción, o sea, como ocurre con los mercados de futuros o las opciones de bolsa: invertir en desarrollar capacidades propias y opciones personales y de empresa que te coloquen mejor delante de las diferentes cosas que te pueden pasar y que puedes abandonar o cambiar rápidamente si te equivocas. Suena bien, pero no es fácil.

Publicado en General | Etiquetado , , , | 3 comentarios

Datatopía: Inteligencia de Negocio en Londres (I)

Hace algunas semanas estuvimos en Madrid algunos de los miembros de la familia de Inteligencia de Negocio de la UOC para predicar una buena nueva que ya no es necesario predicar: la explosión y la centralidad de esta disciplina en el negocio y en la tecnología, por un lado, y la demanda de profesionales capaces de producir sistemas y analizar datos o, como dice Davenport en uno de sus últimos libros, los que hacen el vino (wine makers) y los que lo saborean inteligentemente (los connaiseurs). En este enlace, podéis ver y descargaros las presentaciones.

Según IDC, en 2020 el volumen de los datos almacenados alcanzarà 40 Zetabytes y la inversión en BI habrá llegado a 26 Billones (americanos); ya hoy, según Gartner, los proyectos de BI son los primeros en las agendas del CIO, del CFO y del CEO y el número de productos y servicios en este aparente nicho casi alcanza los 600, según Josep Curto, que se dedica a estas cosas dentro y fuera de la UOC.

Last Call for Datatopia (Gartner 2014)

Ahora me he ido a Londres, al evento europeo que se celebra desde hace 15 años (!) organizado por Gartner. Las entradas estaban agotadas desde hace meses, como cuando actúa Coldplay. Y os explico mi propio resumen:

  • Todo son datos, y los datos son tuyos. El nuevo mundo se llama Datatopia y está entre el salvaje oeste, el gran hermano y la compraventa o cesión segura de tus datos y los del vecino. Las buenas noticias son que te puedes descargar el pdf libremente y que ya hay alguien que ha inventado una web donde te puedes apuntar y a lo mejor haces negocio o proteges tu intimidad y tus sentimientos (una de las corrientes de moda es también el sentiment analysis). La nueva tendencia se llama personal analytics consumer intelligence y el nuevo mercado se llama (con mucha originalidad) data market. (Hace no mucho tiempo diseñamos con un colega un proyecto de carpeta sanitaria individual para un servicio público basada en este principio: nunca se hizo).
  • Los datos son un activo de un enorme valor estratégico y… monetario. Aunque no se puedan poner en el balance: lo impidió un consorcio de empresas auditoras y compañías de seguros después del ataque a las Torres Gemelas. Pero si no es así, ¿por qué Facebook ha comprado Whatsapp por 19 veces el valor de sus ventas? Las empresas intensivas en información valen como media cuatro veces más que las que no lo son. En el congreso se explicaron algunas aproximaciones econométricas para estimar el valor de tus activos de información. Esto se llama infonomics y está bien pagado.
  • Dentro de las empresas, todos producen y usan datos. Hace tiempo que la inteligencia de negocio dejó de ser el espacio de los cuadros de mando para la dirección. También dejó de ser un espacio técnico administrado férreamente en el datawarehouse corporativo. No sólo hay más datos (de opinión, de las redes sociales, de la ubicación geográfica, de las preferencia de consumo…), sino más usuarios (directivos, mandos intermedios y operarios). También las máquinas: la Internet de las cosas, los sensores ubicuos y la comunicación máquina a máquina permite crear algoritmos y tomar decisiones casi sin intervención humana.
  • Las mismas barreras de adopción. Sin embargo, la falta de calidad de los datos, de profesionales y usuarios formados, de muestras efectivas y evidentes del valor y de una cultura de toma de decisiones basada en los datos continúan siendo las mayores barreras para la adopción masiva de la inteligencia de negocio.

No os preocupéis, en la próxima parte de esta entrada hablaremos de Hadoop, los big data, el chief data officer, los open data y casi todo lo demás.

Publicado en Business Intelligence, Profesión | Etiquetado , , , | 3 comentarios

Pokes y cargadores (II)

En una entrada anterior vimos que existen mecanismos para modificar el comportamiento de un juego, si modificamos su lógica. Concretamente, los ejemplos fueron actuar sobre el juego una vez cargado en memoria o sobre los datos de las partidas guardadas. A medida que los juegos y los sistemas operativos se hacen más y más complejos, este proceso se complica. En los antiguos ordenadores de 8 bits, modificar un pedacito de memoria a nuestro antojo era trivial, el propio sistema ya te daba la instrucción “POKE“. Tener que rebuscar solo por 64 Kb, con la instrucción “PEEK“, también ayudaba lo suyo. Pero hoy en día no es tan fácil, ya que los videojuegos son programas de gran complejidad.

Sin embargo, dicha complejidad a veces juega a nuestro favor. A menudo, los videojuegos ya no se generan a base de crear todo el motor del juego de manera ad hoc, sino que se basan en un motor genérico, personalizado con ficheros de configuración o scripts, que son los que realmente definen el comportamiento de ciertos aspectos. Por otro lado, los videojuegos de hoy son programas muy complejos que deben ser fáciles de depurar y a menudo necesitan un nivel de ajuste de las reglas a base de prueba y error. Por todo ello, y para no tener que recompilar TOOODOOO el programa cada vez que se requiere una actualización, no es infrecuente que los ficheros que definen la propia lógica de las reglas se encuentren fuera del propio código binario ejectuable, y en un formato más o menos legible y fácil de depurar… tanto para los desarrolladores como para el resto del mundo.

Un ejemplo interesante lo tenemos en la saga Puzzle Quest. Un juego en el que no es difícil que te entren ganas de “ajustar un poco las reglas” a causa de la frecuencia con la que el ordenador tiene excesiva “suerte” a la hora de que aparezcan nuevas piezas en la pantalla. Quizá es mi sesgo personal, pero pone de los nervios. El caso es que una gran parte de las reglas se encuentra en ficheros en formato XML y scripts LUA, totalmente legibles. Gracias a la expresividad de ambos lenguajes, resulta relativamente simple deducir el significado de cada valor y qué hay que cambiar.

Para modificar una habilidad a nuestro gusto, solo hay que seguir los siguientes pasos: Primero, se debe abrir el fichero “Assets.zip”, en la propia carpeta del juego. Aquí están todos los ficheros de configuración, contenidos. Una vez abierto, hay que buscar el código asociado a la habilidad que se desea modificar. Para ello, entramos en la carpeta del idioma que usamos y abrimos “StandardSpellsText.xml”, que lista todas las habilidades del juego en formato XML. Encontrado el nombre de la que deseamos retocar (por ejemplo “Fire Bolt”), el atributo XML “tag” nos da el código (en este caso “SFBO”).

La definición de las habilidades está en la carpeta “Assets/Spells” del propio “Assets.zip”. Para cada código hay un fichero .xml y otro .lua (para nuestro ejemplo, SFBO.xml y SFBO.lua). El fichero .xml especifica el coste de la habilidad mientras que el fichero .lua especifica su efecto en scripting, mediante la función “CastSpell”. Si modificamos su contenido, mejor cambiar también la función “ShouldAICastSpell” (que calcula cuando un oponente que tenga dicha habilidad la usará) para evitar que los enemigos no nos hagan tomar nuestra propia medicina.

¡Qué gran invento el scripting y XML!

Otro ejemplo que me he encontrado muy recientemente es el caso del Might & Magic X – Legacy, otro vivo ejemplo de que la “vieja escuela” de RPGs sigue vivita y coleando, y que se basa en Unity, un motor muy popular para la creación de videojuegos. Aquí, las reglas que definen las capacidades de los personajes o los puntos de experiencia para llegar a cada nivel se definen en un… fichero de texto CSV! Así, tal cual, perfectamente comentado y todo, para no tener que pasar por el trabajo de pensar cómo llevar a cabo ingeniería inversa. Así pues, si no estamos de acuerdo con las habilidades iniciales de las diferentes clases de personaje, las podemos cambiar.

Yo quiero un cruzado con una espada de doble puño. La reglas penalizan dicho opción, ya que los cruzados óptimos se basan en espada y escudo. Para demostrar nuestro desacuerdo con los diseñadores del juego, vamos a cambiar esto. Buscamos el fichero “CharacterClassStaticData.csv” en la jerarquía de carpetas del juego, donde se definen todas las clases, y echamos un vistazo. Cada entrada indica claramente la definición de las diferentes clases de personaje (12 en total). Ya en los comentarios de las primeras líneas de texto nos indica el formato de cada entrada, con lo que es sencillo encontrar las listas de habilidades, sus características iniciales o puntos de vida/magia. Las habilidades se clasifican en experto, maestro o gran maestro de acuerdo a 3 listas de valores entre dobles comillas (si hay un único valor, no son necesarias).

Might & Magic. Todo se puede resolver editando un fichero de texto

Donde hay que pensar un poco es con como asociar los distintos valores numéricos a las propias habilidades. Pero con un poco de trabajo deductivo comparando los niveles de las habilidades del resto de clases, ya conocidos, o simplemente a base de prueba y error, vemos que la habilidad de armas a dos manos tiene asignado el código 8. Para no abusar y mantener la base que cada clase solo tiene 4 habilidades al máximo nivel potencial, haremos un trueque de habilidades entre listas existentes. Pondremos armas a dos manos como habilidad de gran maestro, bajaremos disciplina arcana (código 6) a maestro y eliminaremos escudo (código 9), que ya no nos sirve para nada. Por lo tanto, intercambiamos valores y ya lo tenemos. Y así crearíamos una clase a nuestro gusto modificando los propios ficheros del juego. Nuevamente, eso, sí, hay que ser cuidadoso de no poner valores incorrectos. En caso de poner el mismo valor repetido en distintas listas, parece ser que el juego lee los valores secuencialmente, por lo que el primero que encuentra (el vinculado a la habilidad más baja) es el que vale. Y si queremos abusar, pues nada, todo al tope…

Así pues, ya vemos que incluso juegos acabados de salir del horno pueden ser “pokeados” simplemente trasteando sus ficheros y rebuscando. Es solo paciencia y un poco de suerte. Como deberes, podéis echar un vistazo a la saga de juegos indie muy entretenida llamada Avernum, que también basan el comportamiento de sus personajes exclusivamente en scripts guardados en ficheros en texto plano.

Joan Arnedo Moreno es profesor de los estudios de Informática, Multimedia y Telecomunicaciones en la UOC. Coordinador de las asignaturas de la rama de seguridad y director académico del postgrado de Cisco Networking Technologies, también cuenta con más de 30 años de experiencia jugando a videojuegos.

Publicado en Videojuegos | Etiquetado , , | 2 comentarios

El jefe de proyecto como un guerrero

Publiqué hace tiempo una entrada en la que proponía “el arte de esperar y estar preparado” en la gestión de proyectos. Es una bella frase de Schnitzler que sirve para muchas cosas. Un buen lector, Miguel Angel Bueno, me comentó que le recordaba El arte de la guerra, de Sun Tzu (Sunzi, en pinyin). Le dije que no, que los jefes de proyecto sabemos hacer, mientras que los buenos militares (y los buenos políticos) saben no hacer: “la hazaña suprema es derrotar al enemigo sin entrar siquiera en combate”. Nosotros anhelamos el combate, y nos cuesta la retirada y la derrota. En otro post, se me ocurrió que hay tres clases de jefes de proyecto: el piloto, el descubridor y el conquistador. Estas y otras “paridas” se han recogido hace poco en un libro de la editorial de la UOC.

Diagrama de armadura japonesa por Wendelin Boeheim. Imagen de dominio público.

Vuelvo a leer El arte de la guerra en la bella edición de Susaeta, encuadernada según la técnica china tradicional, y creo que Miguel Angel Bueno tenía bastante razón. Hay muchas cosas en que el jefe de proyecto, como cualquier directivo, se parece a un buen guerrero y un buen proyecto se parece a una buena batalla.

  • Definir y planificar el proyecto. “La guerra es el camino hacia la destrucción o la supervivencia: se impone el análisis”. El análisis externo (la situación tuya y de los otros), el cálculo de las eventualidades y contingencias, la apertura de diferentes oportunidades y…, a veces, el engaño.
  • La gestión ágil: una guerra corta. Es verdad que la mejor guerra es la que no hay que librar, pero si tenemos que ir a la guerra, que sea corta. Este es también el principio de la gestión ágil de proyectos. Una guerra larga es cara e incierta. Un proyecto largo debilita a la organización, la nuestra y la del cliente. Es mejor 100 proyectos de 100 días que un proyecto de 10.000 días.
  • Una preparación cuidadosa. Time spent planning is never time wasted“, dicen en las novelas de espías: “saber cuándo combatir y cuándo no hacerlo; saber qué hacer tanto en caso de superioridad numérica como de inferioridad numérica; mantener unidos en su propósito a los hombres y oficiales; una preparación cuidadosa para coger al adversario desprevenido…” 
  • Manejar a los interesados, por lo civil o por lo militar. Las metodologías de IBM de las que hablamos hace tiempo aquí, aportan un análisis fino y profesional de las estrategias de gestión de stakeholders. “Mientras no estéis seguros de la victoria, defendeos; cuando la victoria esté asegurada, atacad”. Yo suelo ir cojeando a las primeras reuniones con clientes correosos; dicen que las fieras jamás atacan a los animales heridos.
  • Pensar, pensar, pensar es tan importante como hacer. Ya lo sé, cuesta trabajo y hay prisa. “En el arte de la guerra, lo primero la evaluación, luego la valoración, después el cálculo, a continuación el equilibrio y, por último, la victoria.” Pensar y equilibrar, dice Sunzi, “lo sesgado” y “lo directo”, ser maestro en “lo sustancial y lo insustancial”. En los proyectos más sofisticados un aparente desorden, las paradojas y las contradicciones, pueden esconder un orden profundo.
  • Ejecutar en equipo. “El general experimentado busca un impulso combinado y no confía en la habilidad individual”. En el combate, lo más importante es la formación, la organización y la comunicación.  En el proyecto, lo más importante es el trabajo en equipo y otras habilidades interpersonales (los soft skills), que acaban siendo tan o más importantes que las competencias técnicas.
  • Tener espías. “Trazad planes para averiguar las intenciones del enemigo y sus posibilidades de éxito.” Los espías más útiles son los espías dobles. (He vuelto a leer El espía perfecto de Le Carré: el placer y el dolor de la traición y la venganza. También por cierto, esta novela representa la llegada al mundo del espionaje de la inteligencia de negocio y los big data: el análisis).

Hay más cosas: El arte de la guerra, este librito pequeño, no se acaba nunca y siempre descubres o piensas algo nuevo. Muchas empresas de todo el mundo y los departamentos de informática lo tienen entre sus libros de cabecera para la gestión y la ejecución de sus estrategias y proyectos.

Publicado en Profesión | Etiquetado , , , | 3 comentarios

MiniDebConf 2014 en Barcelona

[versió en Català]

Debian Women organiza una MiniDebConf en Barcelona el 15-16 de Marzo de 2014.

El encuentro consistirá en una serie de charlas y acontecimientos sociales, a los cuales se invita a todo el mundo pero donde los speakers de las charlas serán personas que se identifiquen como mujeres, con el objetivo de alentar a las mujeres que aún no han dado su primera charla en DebConf. Es decir, el encuentro está abierta a hombres y mujeres pero todos los ponentes serán mujeres.

Logo de MiniDebConf 2014

Logo de MiniDebConf 2014

Se pretende proporcionar modelos a seguir para las mujeres que están interesadas a contribuir en Debian y desmontar el mito de que no hay suficientes mujeres que pueden dar charlas en DebConf. La idea detrás de la conferencia no es hablar de las mujeres en el software libre, o mujeres en Debian, sino hacer que los debates sobre temas propios de Debian sean más inclusivos para las mujeres.

¿Qué es Debian?

Debian es una organización formada únicamente por voluntarios y dedicada al desarrollo de software libre y a hacer promoción de los ideales de la comunidad de software libre.

El proyecto Debian empezó en 1993, cuando Ian Murdock difundió una invitación abierta a los desarrolladores de software para contribuir a una distribución basada en el, entonces relativamente nuevo, núcleo Linux. Este pequeño grupo de entusiastas especializados, al principio patrocinados por la Free Software Fundation bajo la filosofía de GNU, ha crecido a lo largo de los años hasta convertirse en una organización de un millar desarrolladores de Debian.

Los desarrolladores de Debian están inmersos en varias actividades, incluyendo la administración de Web y FTP , diseño gráfico, el análisis legal de licencias de software, la documentación y, por supuesto, el mantenimiento de los paquetes de software.

¿Qué es Debian Women?

The Debian Women Project es un subproyecto del proyecto Debian. El proyecto Debian Women se fundó el mayo de 2004 con el objetivo de equilibrar y diversificar el proyecto Debian con la participación más activa de las mujeres interesadas. En particular, persigue aumentar la visibilidad de las mujeres activas, proporcionando mentoring y modelos, y creando oportunidades para la colaboración con otros miembros del proyecto Debian.

Sus actividades incluyen el siguiente:

  • Mantener una lista de correo para la discusión de temas relacionados.
  • Mantener un canal IRC para la discusión de temas relacionados, preguntas técnicas y para favorecer los contactos entre las mujeres que están interesadas en contribuir a Debian y conocer a otros miembros de Debian.
  • Organizar debates BOF en conferencias de Linux, para promover la discusión de los problemas que enfrentan las mujeres y su participación a Debian y Linux.
  • Dar charlas a conferencias, universidades y escuelas.
  • Alentar activamente y educar la comunidad de Debian para aumentar la comprensión de los problemas específicos que enfrentan las mujeres que quieren contribuir más a Debian.

¡Desde los EIMT animamos a todas y todos los interesados a participar!

M. Antonia Huertas es doctora en Matemáticas por la Universidad de Barcelona (UB). Licenciada en Matemáticas por la Universidad de Barcelona y en Humanidades por la Universitat Oberta de Catalunya (UOC). Es profesora de los Estudios de Informática, Multimedia y Telecomunicación de la UOC. Su trabajo de investigación se centra en Lógica y en e-Learning.


Debian Women organitza una MiniDebConf a Barcelona el 15-16 de Març de 2014.

La trobada consistirà en una sèrie de xerrades i esdeveniments socials, als quals es convida a tothom però on els speakers de les xerrades seran persones que s’identifiquin com a dones, amb l’objectiu d’encoratjar a les dones que encara no han donat la seva primera xerrada DebConf. És a dir, la trobada està oberta a homes i dones però tots els ponents seran dones.

Logo de MiniDebConf 2014

Logo de MiniDebConf 2014

Es pretèn proporcionar models a seguir per a les dones que estan interessades a contribuir en Debian i  desmuntar el mite de que no hi ha prou dones que poden donar xerrades a DebConf. La idea darrere de la conferència no és parlar de les dones en el programari lliure, o dones en Debian, sinò fer que els debats sobre temes propis de Debian siguin més inclusius per a les dones.

¿Què és Debian?

Debian és una organització formada únicament per voluntaris i dedicada al desenvolupament de programari lliure i a fer promoció dels ideals de la comunitat de programari lliure.

El projecte Debian va començar al 1993, quan Ian Murdock va difondre una invitació oberta als desenvolupadors de programari per contribuir a una distribució basada en el, aleshores relativament nou, nucli Linux. Aquest petit grup d’entusiastes especialitzats, al principi patrocinats per la Free Software Fundation sota la filosofia de GNU, ha crescut al llarg dels anys fins a esdevenir una organització d’un miler desenvolupadors de Debian.

Els desenvolupadors de Debian estan inmersos en diverses activitats, incloent l’administració de Web i FTP , disseny gràfic, l’anàlisi legal de llicències de programari, la documentació i, per descomptat, el manteniment dels paquets de programari.

¿Què es Debian Women?

The Debian Women Project  és un subprojecte del projecte Debian. El projecte Debian Women es va fundar el maig de 2004 amb l’objectiu d’equilibrar i diversificar el projecte Debian amb la participació més activa de les dones interessades. En particular, persegueix aumentar la visibilitat de les dones actives, proporcionant mentoring i models, i creant oportunitats per la col·laboració amb d’altres membres del projecte Debian.

Les seves activitats inclouen el següent:

  • Mantenir una llista de correu per a la discussió de temes relacionats.
  • Mantenir  un canal IRC per a la discussió de temes relacionats, preguntes tècniques i per afavorir els contactes entre les dones que estan interessades a contribuir a Debian i conèixer altres membres de Debian.
  • Organitzar debats BOF en conferències de Linux, per promoure la discussió dels problemes que enfronten les dones i la seva participació a Debian i Linux.
  • Donar xerrades a conferències, universitats i escoles.
  • Encoratjar activament i educar la comunitat de Debian per augmentar la comprensió dels problemes específics que enfronten les dones que volen contribuir més a Debian.

Des dels EIMT encoratjem a totes i tots els interessats a participar-hi!

M. Antonia Huertas és doctora en Matemàtiques per la Universitat de Barcelona (UB). Llicenciada en Matemàtiques per la Universitat de Barcelona i en Humanitats per la Universitat Oberta de Catalunya (UOC). És professora dels Estudis d’Informàtica, Multimèdia i Telecomunicació de la UOC. El seu treball de recerca es centra en Lògica i en e-Learning.

Publicado en Coloquio, Desarrollo, Software libre | Etiquetado , , , , | 1 comentario