FOSDEM is one of the largest gatherings of Free Software contributors in the world and happens each February in Brussels (Belgium). One of the developer rooms will be the CrossDesktop DevRoom, which will host Desktop-related talks.

Are you interested in giving a talk about open source and Qt, KDE, Enlightenment, Gnome, XFCE, Windows, Mac OS X, general desktop matters, mobile development, applications that enhance desktops and/or web?

We have extended the deadline for a few more days, until January 8th. If you want to submit a talk proposal, hurry up!

I have to say I am very surprised to see very few Qt/KDE talk proposals. Is there nothing interesting the Qt and KDE world have to say to 5,000+ people?

There is more information in the Call for Talks we published a couple of months.

If you are interested in Qt/KDE, come visit us at the KDE booth. If you add yourself to the KDE FOSDEM 2012 wiki page, we will be able to better organize the usual dinner on Sunday and/or smaller meetings for “special interest groups”.

 

En mi opinión, en España desde hace ya unas cuantas décadas hay subvenciones para absolutamente todo. Se ha perdido totalmente la cultura del esfuerzo y todo el mundo quiere un “premio de consolación” que sea casi tan bueno como el primer premio, lo cual resulta nefasto. ¿Para qué intentar ser el mejor si el segundo va a tener casi lo mismo con el 10% de trabajo?

Un ejemplo de esto es la investigación, desarrollo e innovación: en lugar de fomentar la I+D+i de verdad y exigirle resultados (dentro de lo que se puede; obviamente la investigación básica por definición no puede garantizar resultados), subvencionamos acciones supuestamente de I+D+i que no son otra cosa que reventa de resultados de I+D+i de otros países. De la falta de medios para la I+D+i real ya hablaremos otro día.

Un caso concreto

Pongamos que la Agencia Espacial Española quiere que sus agentes Mortadelo y Filemón sean capaces de reparar los satélites y naves espaciales españolas en órbita.

Tal como andan las cosas hoy en día, el Gobierno de turno pondría un porrón (porroncito, que ya se sabe que para Ciencia hay bien poco dinero) de millones para subvencionar que algunas empresas (las de siempre, vamos, pero de la corrupción ya hablaremos otro día) investigaran el tema. Investigaran. Si además llegan a algo, albricias y loanzas.

El modelo estadounidense sería “ligeramente diferente”: iríamos a esas empresas y les diríamos “te compro un soldador robotizado para juntar fistros con trócolas en el espacio exterior. ¿Que no lo tienes? Pues búscate la vida porque cuando lo tengas de lo compro. Es más, aquí tienes un adelanto (no subvención: esto ya es parte del pago). Y ojo, que quiero que la tecnología sea tuya, no me vale que me revendas algo que han hecho los alemanes, rusos o japoneses”.

La diferencia

Modelo americano “compro cuando lo tengas“: si el precio por el que se va a vender el soldador espacial de fistros es 100, yo te doy ahora 30 de adelanto, cuando me enseñes una soldador de fistros en tierra otros 20 y cuando me des el soldador espacial de fistros te doy otros 50. Coste total = 100. Además, la tecnología es estadounidense y se va a vender a otros países y se va a cobrar royalties, implantación, etc. A medio-largo plazo, negocio redondo.

Modelo español “compro lo que tengas“: si tienes un producto que haga X, te lo compro. El coste total es 100 + las subvenciones que se dan. Puede ser 120, 150, 200 ó 200.000. Nótese que da igual que el producto sea propio o que seas revendedor, así que no se incentiva en absoluto que sea tecnología propia, con lo cual mayoritariamente se revende tecnología extranjera. Negocio redondo a corto plazo para que el amiguete de turno pegue el pelotazo.

Creo que la diferencia quede clara y no hace falta preguntarse porqué España anda como anda.

Corolario

Ejemplo claro de esto: las subvenciones a la energía fotovoltaica.

En España subvencionamos instalaciones, así que se ponen placas fabricadas en China con tecnología alemana.

En USA se compran placas solares que produzcan electricidad a 6 cént/kWh, que no existen, así que están obligando a las empresas de allí a ponerse las pilas en investigación.

 

FOSDEM is one of the largest gatherings of Free Software contributors in the world and happens each February in Brussels (Belgium). One of the developer rooms will be the CrossDesktop DevRoom, which will host Desktop-related talks.

Are you interested in giving a talk about open source and Qt, KDE, Enlightenment, Gnome, XFCE, Windows, Mac OS X, general desktop matters, mobile development, applications that enhance desktops and/or web?

Hurry up and submit your proposal, deadline is December 20th!

There is more information in the Call for Talks we published one month ago.

If you are interested in Qt/KDE, come visit us at the KDE booth. If you add yourself to the KDE FOSDEM 2012 wiki page, we will be able to better organize the usual dinner on Sunday and/or smaller meetings for “special interest groups”.

 

Origen

El spam y los contenidos robados son un problema cada vez mayor en la web. Para evitar el spam en los comentarios en blogs, foros, etc, hay dos fórmulas populares:

  • Pedir al usuario que se registre, con lo cual una gran mayoría de usuarios reales desisten y nuestro sitio web se queda sin valiosas contribuciones
  • Pedir al usuario que escriba una secuencia de letras y/o números distorsionados tal que así:
    El nombre técnico de eso es “captcha

Esta segunda estrategia es la más usada, porque no ahuyenda a los usuarios reales pero sí a los robots, que son incapaces de resolver el captcha.

 

¿Los robots son incapaces de resolver el captcha?

Pues depende del tipo de captcha. El que hay ahí arriba es relativamente sencillo de resolver con un poco de procesado de señal: eliminamos el ruído, eliminamos las líneas de cículos y al final nos queda una imagen limpia con el 3163.

Hay, sin embargo, un tipo de captcha que por definición es imposible de resolver: el ReCaptcha.

 

Cómo funciona ReCaptcha

Recaptcha pone 2 palabras:

  • Una de ellas ya la tiene el sistema resuelta (bien porque sí se puede resolver vía OCR, bien porque se saca de una base de datos de correspondencia “garabato – palabra”)
  • La otra es una palabra que ningún OCR ha sido capaz de reconocer

El orden de las palabras es aleatorio: unas veces la que se puede reconocer está a la derecha, otras a la izquierda.

La idea es que un humano es mejor que un OCR, así que será capaz de reconocer ambas palabras.

El sistema recaptcha sabe cuál es la que ya está resuelta y esa se usa de palabra de control:

  • Si me resuelves bien la que yo conozco, entonces es que eres un humano y tomaré en consideración la otra
  • Si la palabra de control la fallas, no te hago ni caso

Es decir, el sistema Recaptcha da por resuelto el captcha simplemente con acertar una de las dos palabras (con resolver la palabra de control ya es suficiente). El problema es que no puedes saber cuál es la palabra de control.

Vamos, que por definición es imposible resolverlo mediante reconocimiento de caracteres (OCR).

 

Cómo romper ReCaptcha

La única manera de romper un recaptcha sería:

  • Aprovecharse de que resolviendo la palabra de control el captcha se da por resuelto
  • Tener una base de datos de imagen – palabra de control
  • Tener infinito tiempo, porque vas a tener que comparar todas las imágenes una a una (por supuesto, se puede optimizar, pero tampoco demasiado).

Nótese lo de “infinito tiempo”. ¿Entiendes ahora porque todos los sitios que usan recaptcha hacen que caduque a los 20, 30 ó 60 segundos?

Otros usos de ReCaptcha

Lo mejor de todo, que no había dicho ahí arriba, es que las palabras del recaptcha están sacadas de fallos en el OCR al escanear libros, documentos, etc de bibliotecas, periódicos, etc

P. ej. Google Books se pone a escanear un libro y luego Google usa todos los fallos de reconocimiento como captchas en Blogger y así puede terminar el escaneo de todos los libros a coste cero. De hecho, están haciendo esto.

 

Here I am, with 9 other people, at the KDAB office in Berlin. We are in the KDE eV sprint, talking about promo stuff, eV stuff, corportate membership, future, etc. Really interesting stuff.

Most of us (including our intern Inu) spent the morning trying to improve Join the Game, others went to define a policy for what to publish in the donors page, thank you page, etc

I’d say it has been very productive. Everybody came with very nice ideas; some of them we will finish here, others we will need ask for help from some community members (especially from artists!)

The sprint continues tomorrow.

 

FOSDEM is one of the largest gatherings of Free Software contributors in the world and happens each February in Brussels (Belgium). One of the developer rooms will be the CrossDesktop DevRoom, which will host Desktop-related talks.

We are now inviting proposals for talks about Free/Libre/Open-source Software on the topics of Desktop development, Desktop applications and interoperativity amongst Desktop Environments. This is a unique opportunity to show novel ideas and developments to a wide technical audience.

Topics accepted include, but are not limited to: Enlightenment, Gnome, KDE, XFCE, Windows, Mac OS X, general desktop matters, applications that enhance desktops and web (when related to desktop).

Talks can be very specific, such as developing mobile applications with Qt Quick; or as general as predictions for the fusion of Desktop and web in 5 years time. Topics that are of interest to the users and developers of all desktop environments are especially welcome. The FOSDEM 2011 schedule might give you some inspiration.

Please include the following information when submitting a proposal: your name, the title of your talk (please be descriptive, as titles will be listed with around 250 from other projects) and a short abstract of one or two paragraphs.

The deadline for submissions is December 20th 2011. FOSDEM will be held on the weekend of 4-5 February 2012. Please submit your proposals to crossdesktop-devroom@lists.fosdem.org

Also, if you are attending FOSDEM 2012, please add yourself to the KDE community wiki page so that we organize better. We need volunteers for the booth!

 

Traducción del original en inglés: “A Silicon Valley School That Doesn’t Compute” publicado en el New York Times el domingo 22 de octubre de 2011. De la traducción: copyright (c) Pau Garcia i Quiles, 2011.

Un colegio de Silicon Valley no computa

Por MATT RICHTEL

LOS ALTOS, California — El Director Técnico de Ebay envía a sus hijos a un colegio local de nueve aulas. Lo mismo hacen empleados de gigantes de Silicon Valley como Google, Apple, Yahoo y Hewlett-Packard.

Sin embargo, las principales herramientas de enseñanza del colegio son todo menos alta tecnología: lápices y papel, agujas de coser y, ocasionamente, barro. Ni un ordenador a la vista. Absolutamente ninguna pantalla. No se permiten en el aula, y el colegio observa con gesto torcido su uso en casa.

Los colegios de todo el país se han dado prisa en dotar a sus aulas de ordenadores, y muchos altos cargos de educación opinan que no hacerlo sería una estupidez. Pero en el epicentro de la economía tecnológica, lo que encontramos es el punto de vista contrario: ordenadores y escuela no casan.

Estamos en el Colegio Waldorf de la Península, uno de los 160 colegios Waldorf del país que suscriben una filosofía de enseñanza centrada en la actividad física y el aprendizaje a través de actividades creativas y prácticas. Los que apoyan este enfoque dicen que los ordenadores inhiben el pensamiento creativo, el movimiento, la interacción humana y que distraen.

El método Waldorf nació hace casi un siglo, pero su huella aquí entre los digerati [contracción de “digital literati”, referido a la élite de las comunidades virtuales y la industria informática, N del T] hace evidente el intenso debate sobre el rol de los ordenadores en educación.

“Me opongo categóricamente la idea de que se necesitan ayudas tecnológicas en Escuela Secundaria”, dice Alan Eagle, de 50 años, cuya hija Andie es uno de los 196 niños en la Escuela Infantil Waldorf y cuyo hijo William, de 13 años, es alumno de la escuela secundaria que está cerca. “La idea de que una aplicación en un iPad puede enseñar mejor a mis hijos a leer o hacer cálculos aritméticos es ridícula”.

El señor Eagle sabe algo de tecnología. Es Ingeniero Informático por la Universidad de Dartmouth y trabaja en comunicaciones ejecutivas en Google, donde ha escrito discursos para el presidente, Eric E. Schmidt. Él usa un iPad y un smartphone. Pero dice que su hija, en Quinto Grado, “no sabe usar Google”, y su hijo está empezando a aprender. (A partir de Octavo Grado, la escuela permite un uso limitado de dispositivos electrónicos).

Tres cuartos de los estudiantes aquí tienen padres con fuerte conexión con la alta tecnología. El señor Eagle, como otros padres, no ve contradicción. La tecnología, dice, tiene su momento y lugar: “si yo trabajara en Miramax e hiciera películas eróticas, por muy buenas que fueran, no querría que mis hijos las vieran hasta que tuvieran 17 años”.

Mientras que otros colegios de la región presumen de sus aulas computerizadas, el colegio Waldorf abraza una metodología simple, casi retro: pizarras con tizas de colores, estanterías con enciclopedias, pupitres de madera llenos de cuadernos de trabajo, y lápices del número 2.

Un martes no hace mucho, Andie Eagle y sus compañeros de Quinto Grado refrescaban sus habilidades tejedoras, zigzagueando agujas de coser sobre madejas de lana, haciendo muestras. Según el colegio, esta actividad ayuda a desarrollar habilidades de resolución de problemas, identificación de patrones, matemáticas y coordinación. Su objetivo a largo plazo: hacer calcetines.

Al final del pasillo, un profesor taladraba a sus alumnos de Tercer Grado con lecciones de multiplicación y les pedía que imaginasen que sus cuerpos eran relámpagos. Les preguntaba un problema matemático -cuatro veces cinco- y, al unísono, gritaron “20” y chasquearon los dedos sobre los números en la pizarra. Un aula de calculadoras humanas.

En Segundo Grado, los estudiantes en pie formaban un círculo y aprendían idiomas mediante la repetición de versos que recitaba el profesor, mientras se pasaban bolsas de guisantes cual pelota de beisbol. Es un ejercicio que intenta sincronizar cuerpo y mente. En ésta, como en otras clases, el día puede empezar recitando o leyendo un verso sobre Dios que no hace mención a ninguna divinidad concreta.

La profesora de Andie, Cathy Waheed, que fue ingeniera informática, intenta hacer que el aprendizaje sea al mismo tiempo irresistible y muy tangible. El año pasado les enseñó fracciones haciendo que los niños partieran comida -manzanas, quesadillas y pasteles- en cuartos, mitades y dieciseisavos.

“Las siguientes tres semanas nos comimos nuestras fracciones”, dice. “Cuando tuve suficientes piezas fraccionarias del pastel, ya tenía su atención”.

Algunos expertos en educación señalan que las presiones para equipar las aulas con ordenadores son injustificadas, porque los estudios no muestran mejores resultados en exámenes ni ninguna otra ganancia mesurable.

¿Es mejor aprender con fracciones de pastel y cosiendo? El Waldorf dice que es difícil de comparar, en parte porque ellos, como colegio privado, no hacen los exámenes estándar en niveles infantiles. El Waldorf reconoce que sus estudiantes de primeros grados no lo harían bien en esos exámenes porque, dicen, no les taladran con el currículo estándar de matemáticas y lectura.

Cuando se les pregunta por evidencia sobre la efectividad de su metodología, la Asociación de Colegios Waldorf de Norteamérica apunta al estudio de un grupo filial que muestra que un 94% de los estudiantes que se graduaron de los Institutos Waldorf en Estados Unidos entre 1994 y 2004 pasaron a la universidad, y muchos de ellos fueron admitidos en instituciones de prestigio como Oberlin, Berkeley y Vassar.

Obviamente los números no sorprenden: estos estudiantes proceden de familias que valoran la educación lo suficiente como para elegir selectos colegios privados, y normalmente tienen los medios para pagarlos. Es difícil separar los efectos de los métodos instructivos de baja tecnología de otros factores. Por ejemplo, los padres del Colegio de Los Altos dicen que éste atrae a grandes profesores que pasan por una intensa fase de aprendizaje usando la metodología de los Waldorf, y que esto crea un fuerte sentimiento de “misión” del que carecen otros colegios.

A falta de evidencia clara, el debate se reduce a la subjetividad, a la elección de los padres, y a las diferencias de opinión acerca de una palabra: compromiso. Los que abogan por equipar los colegios con tecnología dicen que los ordenadores mantienen la atención de los estudianes y que, de hecho, los jóvenes que se han destetado con dispositivos electrónicos no se manejan sin ellos.

Ann Flynn, Directora de Tecnologías Educativas de la Asociación Nacional de Consejos Escolares, que representa a los consejos escolares de todo el país, dice que los ordenadores son esenciales: “si los colegios tienen acceso a las herramientas y se las pueden permitir, pero no las usan, están engañando a nuestros niños”.

Paul Thomas, anteriormente maestro y ahora profesor asociado de educación en la Universidad Furman [la más prestigiosa de Carolina del Sur, N del T], que ha escrito 12 libros sobre métodos educativos en la escuela pública, no está de acuerdo: “poca tecnología en el aula favorece el aprendizaje”.

“Enseñar es una experiencia humana”, dice. “La tecnología es una distracción cuando lo que necesitamos es alfabetización, conocimientos de cálculo numérico y pensamiento crítico”.

Y los padres de los Waldorf argumentan que el compromiso real se consigue con buenos profesores y programaciones didácticas interesantes.

“El compromiso requiere contacto humano, contacto con el profesor, contacto con los compañeros”, dice Pierre Laurent, de 50 años, que trabaja en una start-up de alta tecnología y anteriormente trabajó en Intel y Microsoft. Tiene tres hijos en colegios Waldorf y quedó tan impresionado con los colegios que su esposa Mónica se incorporó como profesora en 2006.

Donde los defensores de dotar las aulas de tecnología dicen que los niños necesitan pasar más tiempo con el ordenador para competir en el mundo moderno, los padres del Waldorf contraatacan: ¿qué prisa hay, visto lo fácil que es adquirir esos conocimientos?

“Es superfácil. Es como aprender a usar la pasta de dientes” dice el señor Eagle. “En Google y demás empresas hacemos la tecnología lo más fácil de usar posible, para tontos. No hay razón para que los niños no se enganchen cuando sean mayores”.

También hay muchos padres relacionados con la alta tecnología en un colegio Waldorf en San Francisco y al norte de allí, en el Colegio Greenword de Mill Valley, que no tiene una acreditación Waldorf pero sí está inspirado por sus principios.

Hay unos 40 colegios Waldorf en California, una desproporción. Quizá porque el movimiento está echando raíces aquí, dice Lucy Wurtz, quien, junto con su marido Brad ayudó a fundar el Instituto Waldorf de Los Altos en 2007. El señor Wurtz es Director Ejecutivo de Power Assure, que ayuda a los centros de datos computerizados a reducir su consumo energético.

La experiencia de los Waldorf no sale barata: la matrícula anual en los colegios de Silicon Valley cuesta 17.750 dólares [12885 EUR, N del T] desde guardería la hasta Octavo Grado, y 24.400 dólares [17713 EUR, N del T] en el instituto, aunque la señora Wurtz dice que dan ayuda económica. Ella dice que el padre típico de Waldorf tiene un amplio rango de colegios públicos y privados de élite donde elegir, suele ser progresista y con educación superior, con ideas claras sobre educación. También suelen tener claro que cuando toque que sus hijos aprendan nuevas tecnologías, tendrán los medios y los expertos en casa.

Los estudiantes, mientras tanto, dicen que no echan en falta la tecnología, y que tampoco están haciendo el mono. Andie Eagle y sus compañeros de Quinto Grado dicen que ven películas de vez en cuando. Una chica, cuyo padre trabaja como ingeniero en Apple, dice que a veces su papá le pide que pruebe los juegos que está depurando. Un chico juega con simuladores de vuelo los fines de semana.

Los estudiantes dicen que se frustran cuando sus padres y parientes se centran tanto en teléfonos y otros dispositivos. Aurad Kamkar, de 11 años, dice que recientemente visitó a unos primos y se encontró con que estaban los cinco sentados, jugando con sus cacharrillos, y sin hacerse caso unos a otros. Él se puso a mover los brazos delante de ellos: “Les decía: ‘Hola chicos, estoy aquííííí'”.

Finn Heilig, de 10 años, cuyo padre trabaja en Google, dice que le gusta aprender con lápiz y papel más que con un ordenador, porque así puede ver cómo progresa con el tiempo.

“Puedes mirar atrás y ver lo mala que era tu letra en Primer Grado. No puedes hacer eso con los ordenadores porque todas la letra es siempre igual”, dice Finn. “Además, si aprendes a escribir en papel, puedes escribir aunque te caiga agua en el ordenador o se vaya la luz”.

Fotografías en el artículo

  • Encabezado (niña acostada en un pupitre leyendo): “El Colegio Waldorf de Los Altos, California, evita la tecnología. Aquí, Bryn Perry lee sobre un pupitre”
  • Lateral izquierdo: “Cathy Waheed helps Shira Zeev, a fifth grader. Waldorf parents are happy to delay their children’s engagement with technology”

Presentación “Escuela a la antigua en Silicon Valley

  • Foto 1Mientras los colegios de todo el país se han dado prisa en dotar a sus aulas de ordenadores, el Colegio Waldorf de la Península, en Los Altos, California, tiene una política de “pantallas no”. Y sin embargo, es una elección frecuente para hijos cuyos padres trabajan en gigantes de Silicon Valley como Google, Apple y Yahoo.
  • Foto 2Hay 160 colegios Waldorf del país que suscriben una filosofía de enseñanza centrada en la actividad física y el aprendizaje a través de actividades creativas y prácticas. Los que apoyan este enfoque dicen que los ordenadores inhiben el pensamiento creativo, el movimiento, la interacción humana y que distraen.
  • Foto 3Representantes del colegio dicen que el padre típico de Waldorf tiene un amplio rango de colegios públicos y privados de élite donde elegir, suele ser progresista y con educación superior, con ideas claras sobre educación. También suelen tener claro que cuando toque que sus hijos aprendan nuevas tecnologías, tendrán los medios y los expertos en casa.
  • Foto 4El método Waldorf nació hace casi un siglo, pero su huella aquí entre los digerati [contracción de “digital literati”, referido a la élite de las comunidades virtuales y la industria informática, N del T] hace evidente el intenso debate sobre el rol de los ordenadores en educación. Tres cuartas pares de los estudiantes del colegio de Los Altos tienen padres con fuerte conexión la alta tecnología.
  • Foto 5Mientras que otros colegios de la región presumen de sus aulas computerizadas, el colegio Waldorf abraza una metodología simple, casi retro: pizarras con tizas de colores, estanterías con enciclopedias, pupitres de madera llenos de cuadernos de trabajo, y lápices del número 2.
  • Foto 6Los padres de los Waldorf argumentan que el compromiso real se consigue con buenos profesores y programaciones didácticas interesantes. Aquí, Shira Zeev escucha a su maestra de Quinto Grado durante una clase.
  • Foto 7Los estudiantes hacen ensalada de las verduras que han crecido en el jardín del colegio. El aprendizaje en el colegio es a menudo irresistible y muy tangible. El año pasado, una maestra enseñó fracciones haciendo a los niños cortar la comida -manzanas, quesadillas y pasteles- en cuartos, mitades y dieciseisavos.
  • Foto 8La experiencia de los Waldorf no sale barata: la matrícula anual en los colegios de Silicon Valley cuesta 17.750 dólares [12885 EUR, N del T] desde guardería la hasta Octavo Grado, y 24.400 dólares [17713 EUR, N del T] en el instituto, aunque la señora Wurtz dice que dan ayuda económica.
  • Foto 9Trabajo en clase: los estudiantes practican sus habilidades tejedoras, zigzagueando agujas de coser sobre madejas de lana, haciendo pequeñas muestras. Según el colegio, esta actividad ayuda a desarrollar habilidades de resolución de problemas, identificación de patrones, matemáticas y coordinación. Objetivo a largo plazo: hacer calcetines.
  • Foto 10Algunos expertos en educación señalan que las presiones para equipar las aulas con ordenadores son injustificadas, porque los estudios no muestran mejores resultados en exámenes ni ninguna otra ganancia mesurable. ¿Es mejor aprender con fracciones de pastel y cosiendo? Los que apuestan por el Waldorf dicen que es difícil de comparar, en parte porque ellos, como colegio privado, no hacen los exámenes estándar en niveles infantiles.
  • Foto 11Los estudiantes, mientras tanto, dicen que no echan en falta la tecnología, y que tampoco están haciendo el mono. Andie Eagle y sus compañeros de Quinto Grado dicen que ven películas de vez en cuando. Una chica, cuyo padre trabaja como ingeniero en Apple, dice que a veces su papá le pide que pruebe los juegos que está depurando. Un chico juega con simuladores de vuelo los fines de semana. Aquí, Sakurako Kida, de 10 años, lee en japonés en clase.
  • Foto 12En Segundo Grado, los estudiantes en pie formaban un círculo y aprendían idiomas mediante la repetición de versos que recitaba el profesor, mientras se pasaban bolsas de guisantes cual pelota de beisbol. Es un ejercicio que intenta sincronizar cuerpo y mente.

Más

Este artículo es parte de la serie “Poniendo nota a la Escuela Digital” del New York Times.

Nota

Aunque en el artículo de Matt Richtel se hace referencia las escuelas Waldorf, NO comulgo con su metodología, ideología ni filosofía. Es más, recomiendo encarecidamente leer el artículo “Antroposofía: la secta y su banco” de Mauricio José Schwarz.

Red Hat‘s Matthew Garrett let the cat out of the bag about a month ago: when UEFI Secure Boot is adopted by mainboard manufacturers to satisfy Microsoft Windows 8 requirements, it may very well be the case that Linux and others (BSD, Haiku, Minix, OS/2, etc) will no longer boot.

Matthew has written about it extensively and seems to know very well what the issues are (part I, part II), the details about signing binaries and why Linux does not support Secure Boot yet.

The Free Software Foundation has also released a statement and started a campaign, which is, as usually, anti-Microsoft instead of pro-solutions.

Now let me express my opinion on this matter: this is not Microsoft’s fault.

Facts

Let’s see what are the facts in this controversy:

  • Secure Boot is here to stay. In my humble opinion, the idea is good and it will prevent and/or lessen malware effects, especially on Windows.
  • Binaries need to be signed with a certificate from the binaries’ vendor (Microsoft, Apple, Red Hat, etc)
  • The certificate that signs those binaries needs to be installed in the UEFI BIOS
  • Everybody wants their certificate bundled with the UEFI BIOS so that their operating system works “out of the box”
  • Given that there are many UEFI and mainboard manufacturers, getting your certificate included is not an easy task: it requires time, effort and money.

Problem

The problem stems from the fact that most Linux vendors do not have the power to get their certificates in UEFI BIOS. Red Hat and Suse will for sure get their certificates bundled in server UEFI BIOS. Debian and Ubuntu? Maybe. NetBSD, OpenIndiana, Slackware, etc? No way.

This is, in my humble opinion, a serious defect in the standard. A huge omission. Apparently while developing the Secure Boot specification everybody was busy talking about signed binaries, yet nobody thought for a second how the certificates will get into the UEFI BIOS.

What should have been done

The UEFI secure boot standard should have defined an organization (a “Secure Boot Certification Authority”) that would issue and/or receive certificates from organizations/companies (Red Hat, Oracle, Ubuntu, Microsoft, Apple, etc) that want their binaries signed.

This SBCA would also be in charge of verifying the background of those organizations.

There is actually no need for a new organization: just use an existing one, such as Verisign, that carries on with this task for Microsoft for kernel-level binaries (AuthentiCode).

Given that there is no Secure Boot Certification Authority, Microsoft asked BIOS (UEFI) developers and manufacturers to include their certificates, which looks 100% logical to me. The fact that Linux distributions do not have such power is unfortunate, but it is not Microsoft’s fault at all.

What can we do?

Given its strong ties with Intel, AMD and others, maybe the Linux Foundation could start a task force and a “Temporary Secure Boot Certification Authority” to deal with UEFI BIOS manufacturers and developers.

This task force and TSBCA would act as a proxy for minorities such as Linux, BSD, etc distributions.

I am convinced this is our best chance to get something done in a reasonable amount of time.

Complaining will not get us anything. Screaming at Microsoft will not get us anything. We need to propose solutions.

Wait! Non-Microsoft certificates? Why?

In addition to the missing Secure Boot Certification Authority, there is a second problem apparently nobody is talking about: what is the advantage mainboard manufacturers get from including non-Microsoft certificates?

For instance: why would Gigabyte (or any other mainboard manufacturer) include the certificate for, say, Haiku?

The benefit for Gigabyte would be negligible and if someone with ill-intentions gets Haiku’s certificate, that piece of malware will be installable on all Gigabyte’s mainboards.This would lead to manufacturer-targetted malware, which would be fatal to Gigabyte: “oh, want to be immune to the-grandchild-of-Stuxnet? Buy (a computer with) an MSI mainboard, which does not include Haiku’s certificate”

Given that 99% of desktops and laptops only run Windows, the result of this (yet unresolved) problem would be that manufacturers will only install Microsoft certificates, therefore they would be immune to malware signed with a Slackware certificate in the wild.

If we are lucky, mainboard manufacturers will give us an utility to install more certificates under your own risk.

The solution to the first problem looks easy to me. The solution to the second looks much more worrying to me.

 

Application virtualization is an umbrella term that describes software technologies that improve portability, manageability and compatibility of applications by encapsulating them from the underlying operating system on which they are executed.

A fully virtualized application is not installed in the traditional sense, although it is still executed as if it were. The application is fooled at runtime into believing that it is directly interfacing with the original operating system and all the resources managed by it, when in reality it is not.

In this context, the term “virtualization” refers to the artifact being encapsulated (application), which is quite different to its meaning in hardware virtualization, where it refers to the artifact being abstracted (physical hardware).

So Wikipedia says.

In layman terms, application virtualization is “I want to run a third party application without it requiring installation”. Probably you know it as “portable application“.

The trivial case

If we talk about Windows applications, for simple applications, application virtualization amounts to copying the .exe and any required DLL to some folder, then running the application from that folder.

Easy, huh?

Well, no.

Registry keys

Many applications add keys to the registry and will not run without those keys. Some even require other files, which are created in AppData, CommonAppData, etc.

To solve this kind of dependencies, application virtualization software packages such as VMware ThinApp, Microsoft App-V and Citrix XenApp monitor the registry and the filesystem for changes. To do so, they require an “application virtualization preparation” procedure. It’s like you have a clean virtual machine, take a snapshot, then install the application, take another snapshot, and compare them.

You could achieve more or less the same result for free by using FileMon + RegMon + RegShot.

Of course I am simplifying more than a bit here 🙂

Common files

Then there is the problem of file redirection.

The whole point of application virtualization is to be able to run the application without installation. But if this application’s setup installed files in CommonAppData (or the application creates them), how do we force the application to look for them in our “virtualized application folder”?

The technique usually involves generating a small .exe launcher that:

  • Sets a special PATH that looks where we want first
  • Uses hooking, DLL injection and some other low level tricks to force system calls to look into the places we want before (or even instead of) they look into the standard places
  • Registry emulation (in combination with hooking and DLL injection) to make sure those registry keys are taken from the registry in the sandbox instead of the actual registry
  • And more

In a way, we are cracking the application.

Cross-platform

What I have described above are the required steps to virtualize an application if the target platform (where the application is going to be run) is the same as the host platform (where the application virtualization was performed). For instance, if we are virtualizing the application on Windows XP SP3 32-bit and the application will run on Windows XP SP3 32-bit.

Even if the steps described above look complex to you (they are), that’s the simple case of application virtualization.

If the target platform is a different version (for instance, the app virtualization takes place on Windows XP 32-bit, while the target platform is supporting also Windows 7 64-bit), then it gets more complex: probably many Windows DLLs will need to be redistributed. Maybe even ntoskrnl.exe from the original system is required.

In addition to the serious problem redistribution poses in terms of licensing to anybody but Microsoft App-V, there is the technical side: how do you run Windows XP SP3 32-bit ntoskrnl.exe on Windows 7 SP1 64-bit? You cannot, which makes some applications (very few) impossible to virtualize.

Device drivers

The more general case for “impossible to virtualize applications” (we are always talking about application virtualization here, not full virtualization or paravirtualization) is device drivers.

None of the application virtualization solutions that exist so far can cope with drivers, and for a good reason: installing a driver requires administration permissions, verifying certificates, loading at the proper moment, etc. All of that needs to be done at kernel level, which requires administration permissions, thus defeating the point of application virtualization. Then there are the technical complications (the complexity of the implementation), and the fact that drivers assume they run with administration permissions, therefore they may perform actions that require administration permissions. If that driver is also app-virtualized, it will not run with administration permissions.

One possible remedy to the “driver virtualization problem” would be to implement a “driver loader process” that requires installation and will run with administration permissions. Think of it as the “runtime requirement” of our application virtualization solution.

I know, I know, it sounds contradictory: the whole point of my app virtualization software solution is to avoid application installation, yet my app virtualization solution requires a runtime installation? We are talking about a one-time installation, which would be perfectly acceptable in a business environment.

But why all this!?

You may wonder why this braindump.

The reason is the job that pays my bills requires virtualization. Given that we need driver support, we resorted to VirtualBox but we run a lot of instances of the applications we need to virtualize, which means we need a lot of Windows licenses for those virtual machines. Worse: we cannot know how many Windows licenses we need because the client may start any number of them and should not notice they run in virtual machines! Even worse: Microsoft have a very stupid attitude in the license negotiations and keep trying to force us to use Windows XP Mode and/or Hyper-V, which are not acceptable to us due to their technical limitations.

So it turned on the “think different switch” in my brain and I came with a solution: let’s port Wine to Windows and use it to virtualize applications.

The case for a Wine-based Application Virtualization solution

Crazy? I don’t think so. In fact, there would be a number of advantages:

  • No need for Windows licenses
  • No need for VirtualBox licenses
  • Wine already sandboxes everything into WINEPREFIX, and you can have as many of them as you want
  • You can tell wine to behave like Windows 2000 SP3, Windows XP, Windows XP SP3, Windows 7, etc. A simple configuration setting and you can run your application the environment it has been certified for. Compare that to configuring and deploying a full virtual machine (and thankfully this has been improved a lot in VBox 4; we used to have our own import/export in VBox 3)
  • No need to redistribute or depend on Microsoft non-freely-redistributable libraries or executables: Wine implements them
  • Wine has some limited support for drivers. Namely, it already supports USB drivers, which is all we need at this moment.

Some details with importance…

There are of course problems too:

  • Wine only compiles partially on Windows (as a curiosity, this is Wine 1.3.27 compiled for Windows using MinGW + MSYS)
  • The most important parts of wine are not available for Windows so far: wineserver, kernel, etc
  • Some very important parts of wine itself, no matter what platform it runs, are still missing or need improvement: MSI, support for installing the .NET framework (Mono is not enough, it does not support C++/CLI), more and more complete Windows “core” DLLs, LdrInitializeThunk and others in NTDLL, etc
  • Given that Windows and the Linux kernel are very different, some important architectural changes are required to get wine running on Windows

Is it possible to get this done?

I’d say a team of 3-4 people could get something working in 1 year. This could be sold as a product that would directly compete with ThinApp, XenApp, App-V, etc.

We even flirted with the idea of developing this ourselves, but we are under too much pressure on the project which needs this solution, we cannot commit 3-4 developers during 1-2 years to something that is not the main focus of development.

Pau, I’m scared!

Yes, this is probably the most challenging “A wish a day” so far. Just take a look at the answer to “Am I qualified?” in Codeweavers’ internships page:

Am I Qualified?

Probably not. Wine’s probably too hard for you. That’s no insult; it’s too hard for about 99% of C programmers out there. It is, frankly, the hardest programming gig on the planet, bar none. But if you think you’re up for a real challenge, read on…

Let’s say, just for the sake of argument, that you’re foolish enough that you think you might like to take a shot at hacking Wine. […]

Interactive whiteboards, also known as “digital whiteboards”, seem to be the latest trend in education. At least from the teacher’s point of view.

Given that all my immediate family are teachers, and I have taught my mom how to use the digital whiteboard at her school, I feel like I can talk a bit about them.

A digital whiteboard is essentially a big touchscreen (100” or more). Usually the image is projected with a beamer and they use infrared, ultrasound, or some other cheap system to touch-enable the board.

From a hardware point of view, it is quite simple. You can even use a WiiMote to convert any surface into a digital whiteboard thanks to Uwe Schmidt’s WiiMode Whiteboard software.

The interesting part of digital whiteboards, at least for me, is software.

I have tried myself three software packages (TeamBoard, SMART Notebook and Promethean ActivInspire) but there are many more: DabbleBoard, NotateIt, Luidia eBeam, BoardWorks, etc

All of those can be used for education. Some of them are generic enough to be fit for business meetings (DabbleBoard, NotateIt, TeamBoard), while others are highly specialized (Interact, focused on music-teaching).

I consider ActivInspire very good, with SMART as a distant second.

Now, let’s cut the crap. Why am I talking about digital whiteboards and commercial software in Planet KDE?

For starters, because there is no open source alternative. The only open source package I have found is Open Whiteboard and it has not been updated in four years.

Then there is the Linux issue. SMART works on Linux but that’s about it. And it’s not even the full package, some features are missing.

And of course, in KDE we happen to have the wonderful KDE Edu project!

Back in December I thought about this: would it be possible to develop a digital whiteboard software based on KDE? That’s actually why I started working on KSnapshot: screen capturing was one of the missing features in SMART.

The answer to the question is “of course”. However interested I am, currently my spare time is all taken by another project I am working on. I do have a clear picture of what needs to be done, though, and I’d love to mentor if someone is interested in taking over:

  1. Dissect ActivInspire, SMART, TeamBoard, eBeam, etc. They all have nice features and huge failures. Give me one day and I’d hand you a long list.
  2. Start small: use KParts and DBUS and take advantage of KolourPaint, KSnapshot, Flake, etc
  3. The first application would be a simple single-page, vector graphics, Paint-like program: draw lines, figures, insert text boxes (with formatting), pictures, hyperlinks, etc. Add snapshotting (via a call to kbackgroundsnapshot).
  4. Then, extend that application to allow multipage “notebooks”, some screen effects (like Calligra Stage‘s), template pages (useful for exercise sheets, “blank” pages which include date, time and letterhead), hiding the solutions, record and reply, etc
  5. Going a bit further, we could have a special “personality” of Plasma Active for education. Let’s give some actual use to those iPads kids are receiving. Anyone involved in an educational Linux distribution knows the kind of customization I am talking about.
  6. And of course let’s not forget about “apps”: let’s develop a framework for “educapplets”. Educapplets is the name I give to small edutainment games, applications (Mathematical, Geography, etc). Kind of what you can do these days with JClic, but based on Javascript + KDE Edu QML components + something like Windows Runtime but for KDE. (This is big enough to be split in two projects apart from the whiteboard project: one for the KDE RT, another for the educapplet framework).
  7. Your ideas?

I think this project could be developed as a collaboration between KDE Edu and “KDE Business” (a hypothetical extension of KDE PIM). Being unique (open source, multiplatform, powerful), it would have a lot of potential to carve in those markets.

On the other hand, this is actually an application, something built outside KDE SC, which means it might fit better as one of the projects in that hypothetical Apache-like KDE eV I talked about a few weeks ago.

Oh, by the way: some schools seem to be adopting whiteboards for children of all ages. I am strongly against it. In my humble opinion, and that’s what my experience says, computers should only be involved in the classroom after the students have mastered how to do things manually. Disagree? OK: what would you say if when you were a student, you would have been told to use a typewriter and a solar calculator instead of a notebook and a pencil? Ridiculous, isn’t it? My point, exactly.

Volunteers, please comment and/or contact me.