Publicity optimization, IE Business School

  • Lecturer in «Publicity optimization», IE Business School, Madrid, 2004.
  • Conferenciante en «Optimización de la publicidad», IE Business School, Madrid, 2004.

Level 10 of 10 in the hacking test, Instisec

Level 10 of 10 in the hacking test, Instisec

Curso interesante, entretenido y, finalmente, genial organizado por Instituto para la Seguridad en Internet, Instisec. Primero recibí el curso y luego participé del primer reto de hacking boinas negras organizado por Instisec, donde obtuve un 10 de 10 y me entretuve en documentar todas las pruebas y medir su capacidad para filtrar aspirantes a superarlas.

  • «Internet Application Security» and level 10 of 10 in the hacking test of the Internet Security Institute, Madrid, 2003.
  • «Aplicaciones seguras en internet» y nivel 10 de 10 en el test de hacking del Instituto para la Seguridad en Internet, Madrid, 2003.

Forest - Forecast & Strategy Club

Forest - Forecast Strategy Club, programa de octubre de 2002

Conferenciante de la sección de reflexión estratégica, titulada «¿Estrategia o táctica en tiempos de incertidumbre?» para el Forest - Forecast & Strategy Club.

Este club fue creado por el Centro de Predicción Económica (CEPREDE) y esta reunión de octubre de 2002 tuvo lugar en los salones en la Cámara de Comercio e Industria de Madrid.

  • Lecturer in «Strategic discussion», Forest - Forecast & Strategy Club (CEPREDE), Cámara de Comercio e Industria, Madrid, October of 2002.
  • Conferenciante en «Reflexión estratégica», Forest - Forecast & Strategy Club (CEPREDE), Cámara de Comercio e Industria, Madrid, octubre de 2002.

Architecture for time oriented systems

Organizado por mi amigo y compañero Manuel Alonso, Doctor por la Universidad Politécnica de Madrid y, por entonces, profesor de la Universidad Antonio de Nebrija.

  • Lecturer in «Architecture for time oriented systems», Antonio de Nebrija University, Madrid, 2000.
  • Conferenciante en «Arquitectura de sistemas orientados al tiempo», Universidad Antonio de Nebrija, Madrid, 2000.

Dynamic modelling of markets

Participación en 2 ediciones de las jornadas organizadas por Departamento de Estadística de la Universidad de Salamanca.

  • Speaker on «Dynamic modelling of markets», Salamanca University, Salamanca, 2 editions, 1999 & 2001.
  • Ponente en «Modelización dinámica de los mercados», Universidad de Salamanca, Salamanca, 2 ediciones, 1999 y 2001.

Advanced forecasting, IIR

Ponencia para el Institute for International Research (IIR) y en calidad de Director General de Bayes Inference SA.

  • Speaker on «Advanced forecasting», Institute of International Research (IIR), Madrid, 1996.
  • Ponente en «Modelos avanzados de previsión», Institute of International Research (IIR), Madrid, 1996.

MBA, IESE, Universidad de Navarra

  • Master in Business Administration (Executive MBA), IESE Business School, University of Navarra, 2 years, 1995-1996.
  • Máster en Administración de Negocios (Executive MBA), IESE, Universidad de Navarra, 2 años, 1995-1996.

Diccionario de informática

  • Coauthor of «Computer science dictionary», Foundation for Industrial Innovation & Computer Sciences School (UPM), Madrid, 1996.
  • Coautor de «Diccionario de informática», Fundación para la Innovación Industrial y Facultad de Informática de Madrid (UPM), Madrid, 1996.

Bayes Forecast, dirección general y clientes

  • Since 1995 to 2005: Leading and mentoring a group of 50+ economists, software engineers and mathematicians. Responsible for the commercial actions, whole planning, execution, and goal achievement of the projects for client companies like Coca-Cola, Microsoft, Telefónica, Spanish National Uranium Institute, Mercadona, Carrefour, Forces Elèctriques d’Andorra, Grupo Sogecable, Movistar, NCR, Unidad Editorial, etc. These projects included electronic capture of information, analysis and modelling of huge and dynamic operational and sales data, reporting and delivering forecast estimates, business intelligence and customer relationship management and marketing (CRM).
  • De 1995 a 2004: Liderando un grupo de más de 50 ingenieros de software, matemáticos y economistas. Con responsabilidad directa en la comercialización y el desarrollo de proyectos de modelización de la demanda y los mercados, sistemas de previsión de ventas, de optimización e inteligencia de negocio. Para clientes como Coca-Cola, Microsoft, Telefónica, Empresa Nacional de Uranio, Mercadona, Forces Elèctriques d’Andorra, Sogecable, Movistar, NCR, Unidad Editorial (El Mundo), Recoletos Compañía Editorial (Marca y Expansión), etc.

Bayes Forecast, diseñador inicial de TOL

  • Initial founder of the project TOL, Time Oriented Language, an Open Source Software.
  • Diseñador inicial de TOL, lenguaje de programación orientado al tiempo y a la modelización estadística propiedad de Bayes Forecast.

Bayes Forecast, web crawlers especializados

  • Developer of several web crawling systems based on ad-hoc or heuristic search (references and keywords matching).
  • Creador de web crawlers especializados en la recopilación de información en internet por áreas de conocimiento.

Bayes Forecast, entorno software

  • Developement environment: Operating systems: Windows, Linux, Aix, Irix, and Solaris; Databases: Oracle, SQL Server, and Teradata (data warehouse); Languages: C++, C, JavaScript, Visual Basic, Html, and TOL (Time Oriented Language).
  • Entorno software: Sistemas operativos: Windows, Linux, Aix, Irix y Solaris; Bases de datos: Oracle, SQL Server y Teradata (data warehouse); Lenguajes: C++, C, JavaScript, Visual Basic, Html y TOL (Time Oriented Language).

Investigación Operativa, UNED

  • Collaborator in forecasting programming with the Department of Operations Research, UNED University, Madrid, 1995.
  • Colaborador en programación de previsiones con el Departamento de Investigación Operativa, UNED, Madrid, 1995.

MAP y Fundación Ortega y Gasset

Profesor de la asignatura «Conceptos fundamentales de informática», del Curso de Postgrado en Administración Pública, del Ministerio para las Administraciones Públicas (MAP), el Instituto Nacional de Administraciones Públicas (INAP) y la Fundación Ortega y Gasset, dos ediciones, Madrid, 1995 y 1996.

  • Teacher of «Computer science concepts», Ministry of Public Administration & Ortega y Gasset Foundation, 2 editions, Madrid, 1995 & 1996.
  • Profesor de «Conceptos fundamentales de informática», Ministerio para las Administraciones Públicas y Fundación Ortega y Gasset, 2 ediciones, Madrid, 1995 y 1996.

De BMP Windows a ICO Unix

De BMP de 16 bits de Windows a ICO Unix y a BIF

El programa de conversión de Bitmaps (BMP) de 16 bits de Windows al formato ICO (de icono) de Unix lo comenzó a desarrollar Juan Ramón Miraz, al comienzo de los noventa, y la versión final que se adjunta en este post la terminé yo.

El formato ICO de Unix especifica un mapa de bits como una matriz de caracteres ASCII, donde cada letra se asocia con el color del pixel de su misma fila y columna. Hubo una época que los bitmaps de los botones de los interfaces de usuario yo lo pintaba así, utilizando el editor vi de Unix y letra a letra. Por ejemplo, asociaba la v al verde, la b al blanco, la r al rojo, etc., para que me fuera más fácil, e iba poniendo letras, una a una, hasta que el botón quedaba bien. Para mi era una gratificante labor artesanal.

A partir de este programa también desarrollé el que convierte del formato BMP al formato BIF, que era un formato propio mio, que utilizaba en combinación con Clipper.

Aunque ahora se podrían recompilar estos dos códigos fuente para las versiones de Windows de 64 bits, sigo utilizando los ejecutables originales de 16 bits. Antes estos ejecutables de 16 bits podían correr mediante emulación en Windows de 32 bits, pero ahora el Windows de 64 bits ya no emula al de 16 bits.

Para poder seguir ejecutando estas pequeñas joyas históricas, sin necesidad de recompilarlas (y más aun en aquellos casos en el que el compilador es también de 16 bits) utilizo el emulador de x86 con DOS de DOSBox que se publica con licencia GNU GPL y aceptan donaciones (yo se la di).

Aunque adjunto en PDF el código fuente completo de los 2 programas de conversión y un ejemplo del formato ICO generado con mi logotipo personal, pongo a continuación el ciclo fundamental de extracción de pixels de un Bitmap (BMP) de 16 colores. Como curiosidad, en esta época, por razones de normalización con el equipo de software con el que trabajaba, los corchetes { } están en la vertical del bloque de código y no dos caracteres antes como es mi costumbre habitual:


for (Y=0, YMax=Bmih.biHeight; Y < YMax; Y++)
  {
  fseek(Bmp, RowStart, SEEK_SET);
  for (X=0, XMax=Bmih.biWidth; X < XMax; X++)
    {
    Arg = fgetc(Bmp);
    H = (Arg >> 4) & 0x0F;  H = Color[H];
    L = Arg & 0x0F;         L = Color[L];
    X++;
    fprintf(Pix,"%c%c",(char)H,(char)L);
    }
  RowStart -= RowBytes;
  fprintf(Pix,"\n");
  fputc('.',stdout); fflush(stdout);
  }