2009/12/02

Manifiesto: En defensa de los derechos fundamentales en Internet

Ante la inclusión en el Anteproyecto de Ley de Economía sostenible de modificaciones legislativas que afectan al libre ejercicio de las libertades de expresión, información y el derecho de acceso a la cultura a través de Internet, los periodistas, bloggers, usuarios, profesionales y creadores de internet manifestamos nuestra firme oposición al proyecto, y declaramos que…

  1. Los derechos de autor no pueden situarse por encima de los derechos fundamentales de los ciudadanos, como el derecho a la privacidad, a la seguridad, a la presunción de inocencia, a la tutela judicial efectiva y a la libertad de expresión.

  2. La suspensión de derechos fundamentales es y debe seguir siendo competencia exclusiva del poder judicial. Ni un cierre sin sentencia. Este anteproyecto, en contra de lo establecido en el artículo 20.5 de la Constitución, pone en manos de un órgano no judicial -un organismo dependiente del ministerio de Cultura-, la potestad de impedir a los ciudadanos españoles el acceso a cualquier página web.

  3. La nueva legislación creará inseguridad jurídica en todo el sector tecnológico español, perjudicando uno de los pocos campos de desarrollo y futuro de nuestra economía, entorpeciendo la creación de empresas, introduciendo trabas a la libre competencia y ralentizando su proyección internacional.

  4. La nueva legislación propuesta amenaza a los nuevos creadores y entorpece la creación cultural. Con Internet y los sucesivos avances tecnológicos se ha democratizado extraordinariamente la creación y emisión de contenidos de todo tipo, que ya no provienen prevalentemente de las industrias culturales tradicionales, sino de multitud de fuentes diferentes.

  5. Los autores, como todos los trabajadores, tienen derecho a vivir de su trabajo con nuevas ideas creativas, modelos de negocio y actividades asociadas a sus creaciones. Intentar sostener con cambios legislativos a una industria obsoleta que no sabe adaptarse a este nuevo entorno no es ni justo ni realista. Si su modelo de negocio se basaba en el control de las copias de las obras y en Internet no es posible sin vulnerar derechos fundamentales, deberían buscar otro modelo.

  6. Consideramos que las industrias culturales necesitan para sobrevivir alternativas modernas, eficaces, creíbles y asequibles y que se adecuen a los nuevos usos sociales, en lugar de limitaciones tan desproporcionadas como ineficaces para el fin que dicen perseguir.

  7. Internet debe funcionar de forma libre y sin interferencias políticas auspiciadas por sectores que pretenden perpetuar obsoletos modelos de negocio e imposibilitar que el saber humano siga siendo libre.

  8. Exigimos que el Gobierno garantice por ley la neutralidad de la Red en España, ante cualquier presión que pueda producirse, como marco para el desarrollo de una economía sostenible y realista de cara al futuro.

  9. Proponemos una verdadera reforma del derecho de propiedad intelectual orientada a su fin: devolver a la sociedad el conocimiento, promover el dominio público y limitar los abusos de las entidades gestoras.

  10. En democracia las leyes y sus modificaciones deben aprobarse tras el oportuno debate público y habiendo consultado previamente a todas las partes implicadas. No es de recibo que se realicen cambios legislativos que afectan a derechos fundamentales en una ley no orgánica y que versa sobre otra materia.

Este manifiesto, elaborado de forma conjunta por varios autores, es de todos y de ninguno. Si quieres sumarte a él, difúndelo por Internet.

2009/07/20

El Triforce en Starcraft

Mucho se está hablando últimamente del guiño de Google al triforce. Justo el otro día (probablemente a raiz de esto) me di cuenta de este otro triforce:

Pantalla del menú principal de Starcraft que muestra un símbolo triforce

Detalle:

Detalle de la anterior pantalla donde se ve el triforce

Parece que a la gente de Bizzard también les gusta jugar al Zelda.

PD: No creo que nadie piense que Blizzard y Nintendo están haciendo algo en conjunto, ya que el Starcraft donde aparece esto es del año 1998 (hace 11 años, aunque sacaron un parche en enero de 2009), pero lo hago notar por si acaso a alguien se le ha ocurrido la peregrina idea (hay gente 'pa to').

2009/06/23

Salto mental hacia atrás

Cuando dos personas discuten, ya sea online o en la vida real, es inevitable (un poco como la ley de Godwin) que llegue un momento en el que uno de los dos diga algo parecido a esto:

— Eso que dices es una estupidez

En ese momento, si el otro interlocutor tiene las ideas medianamente claras y la cabeza despejada no suele pasar nada grave, y la discusión continua sin mayores percances; pero hay ocasiones (ya sea por que el calor de la discusión ofusca la mente, o por que directamente es una persona de mente ofuscada —hecho que no voy a entrar a valorar aquí—), en las que el interlocutor aludido puede que ejecute lo que voy a llamar como "salto mental hacia atrás", y que ejemplifico de manera simplificada a continuación:

— ¿Me estás llamando estúpido?

Si el lector quiere identificar este comportamiento en vivo y en directo, puede pasarse por los artículos más comentados del menéame, o encender la televisión cuando emitan uno de esos programas de prensa rosa que hace tiempo dejé de ver por monótonos y escandalosos (para ver algo monótono y escandaloso prefiero el porno). En general, y al igual que la Ley de Godwin mencionada antes, cuanto más larga sea la discusión más probabilidades hay de que alguno de los participantes haya dado un salto mental hacia atrás.

El lector avispado se habrá dado cuenta de la diferencia entre calificar una idea y calificar a una persona. Me hago cargo de que no siempre en el transcurso de una discusión se tienen las ideas tan claras como para identificar la diferencia, y de que personas perfectamente inteligentes y capaces de identificarla mientras leen un artículo en un blog (como este) pueden verse temporalmente confundidas por el calor de la discusión.

Por favor, discuta con precaución.

2009/06/19

Observación electoral

Fuentes: Vistazo general al sistema electoral con motivo de las elecciones europeas, y Explicación bastante extensa de la fórmula d'Hont.

Después de leer hace unos días los artículos enlazados sobre el sistema electoral, mi cerebro se ha puesto a funcionar en segundo plano y me acaba de surgir, cual acelga silvestre, esta curiosidad: Si votas, tu voto es secreto (en principio sólo tu sabes a quién has votado y, además de los votos a partidos —que hay más de 2—, se puede votar nulo o en blanco), sin embargo (en teoría) sí que se podría saber quién no ha votado.

Lo expongo en forma de lista que son más fáciles de entender:

  1. Todo el mundo en edad de votar está censado. Por esto unas semanas antes de las elecciones, te llega por correo una tarjetita azul del censo con tus datos, los datos del colegio electoral en el que tienes que votar, y en qué mesa concreto deberías hacerlo.
  2. Cuando vas a votar apuntan tu nombre en una lista, esto es: anotan los datos del documento de identidad, y apuntan "Fulanito ha venido a votar". Pero como el voto va en un sobre, más o menos cerrado, sólo tu sabes lo que hay dentro.
  3. Tras las elecciones, se cuentan las lineas de las listas de gente que ha ido a votar (según el punto 2), y se restan de la cantidad de gente que esta censada (según el punto 1). Esto se hace para calcular el numero de abstenciones, es lógico, y fácil de entender: "los que hay en total" menos "los que sí han venido a votar" es igual a "los que no han venido a votar".

Y salgo de la lista por que toca el salto mortal con tirabuzón: En un principio, en el último paso sólo se manejan números, ya que las hojas donde se va apuntando la gente que llega a la mesa electoral son un formulario muy fácil de contar sin tener que revisarlas exhaustivamente, pero daos cuenta que los nombres están ahí registrados, igual que están registrados los nombres en la lista del censo. Quiero decir que, igual que restando los números puedes saber cuanta abstención hay, cruzando los nombres se podría saber quien no ha votado (los que sí han votado están más claro, pero al haber más posibilidades tampoco sirve de mucho). Traducir ambas listas para su proceso informático, hoy en día es básicamente trivial, incluso aunque una de las listas esté manuscrita (al margen: precisamente el hecho de que una de las 2 esté automatizada, hace que sea más sencillo todavía).

En realidad no se si esto es siquiera posible: no se que se hace con esas listas de votantes tras las elecciones (¿habrá algún procedimiento para destruirlas?, ¿se archivan tras el recuento?, ni idea), tampoco se si las listas del censo las puede ver cualquiera (¿son públicamente accesibles?, ¿a quién hay que sobornar para que lo sean?), ni tampoco me he planteado que utilidad podría tener saber quién se abstuvo (¿encuesta de satisfacción política?, ¿terapia de adoctrinamiento?, ¿penalización fiscal a los abstenienses?); pero me parece curioso que exista esa posibilidad (sobre todo, teniendo en cuenta que, en algunos países con democraduras se impide el voto a algunas personas —a veces veo relaciones como esa y no se por qué—).

PD: seguramente (espero), que esto esté contemplado de alguna manera (no perversa) en la ley. Ya digo que yo no lo se ahora mismo: si alguien sabe algo que deje un comentario y así nos enteramos todos :)

2009/06/15

El Cardenal Richelieu revisando código

Si me das seis lineas del puño y letra del hombre más honesto, encontraría algo en ellas por lo que colgarle.

—Cardenal Richelieu

Si me das 6 lineas escritas del teclado del mejor programador, encontraría algo en ellas por lo que exclamar WTF!?!??

—Programador Richelieu

2009/04/16

Encriptar está mal dicho

Efectivamente, si quiero enterrar algo en una cripta (ya sea un familiar fenecido u otra cosa), no puedo usar el verbo "encriptar", pues el DRAE no reconoce esa acepción para esa palabra (a fecha de 16 de abril de 2009).

De hecho, como veis en el enlace, el DRAE no reconoce ninguna acepción asociada al verbo "encriptar", ergo cualquier uso de esa palabra será un neologismo.

Yo personalmente, prefiero usar encriptar como sinónimo de cifrar, significando "ocultar algo con clave secreta o de un modo enigmático". Además, el DRAE incluye otros vocablos como críptico, o criptografía (que no, no es escribir en las criptas, ni con las criptas [tampoco es tan raro]), ambos con las mismas connotaciones de ocultación (y no de enterramiento) ya que la raíz griega de todas estas palabras es κρυπτός, que significa ocultar, y no enterrar en una cripta.

Y que se genere un neologismo de raíz griega a partir del inglés, que recoge desde hace tiempo el verbo "to encrypt" como sinónimo de "to cypher", me parece a mi que no habla demasiado bien de la consideración que los autoproclamados "encargados" de la lengua tienen por su propia lengua.

2009/04/08

Te tienes que olvidar de la gente que te hace un drama por todo

Hay un momento en la vida en el que te tienes que olvidar de la gente que te hace un drama por todo y de sus historias absurdas, y rodearte de gente que te haga reír tanto que olvides todo lo malo y te enfoques sólo en lo bueno. Al final, la vida es demasiado corta como para no ser feliz.

Texto original en inglés:

There comes a time in life when you have to let go of all the pointless drama and the people who create it and surround yourself with people who make you laugh so hard that you forget the bad and focus solely on the good. After all, life is too short to be anything but happy.

Se lo vi a Eduo, que lo vio en ffffound, que lo vieron en don't touch my moleskine, que lo vio en friendfeed.

2009/03/21

Pensando lo impensable y los periódicos

Ví a John Gruber comentando este artículo de Clay Shirky sobre el papel de los diarios de papel en el actual mundo digital, y me apeteció traducirlo. Probablemente la mayoría de los que se pasen por aquí entienda el inglés, pero aun así, cuando me encuentro con un artículo tan interesante como el de Shirky me apetece, just for the sake of it.

Ahí va la traducción: Pensando lo impensable y los periódicos. Se aceptan correcciones y esas cosas.

2009/03/10

Test de agudeza visual

De esta notilla de menéame sobre la extremadamente aguda percepción visual de las personas autistas, llego por un comentario (nº16) a este test de agudeza visual que me ha sido imposible evitar hacerlo (probablemente tenga hoy el lado femenino [que se encarga de los tests y encuestas de las revistas] más sensible de lo normal).

Mi resultado: "dec. VA: 1,51,  logMAR: -0,18,  Snellen fraction: 1,8/1,2" en el test de precisión Landolt-C. Teniendo en cuenta que lo normal es un VA de 1, que no uso gafas, ni lentillas ni otros dispositivos que alteren mi percepción visual (en cuanto saquen las lentillas con HUD y conexión a la red me pido unas), ni estoy operado de la vista, y que desde hace un tiempo paso entre 8 y 16 horas al día delante de una pantalla de ordenador: estoy bastante satisfecho del resultado.

Instrucciones por si alguien quiere probarse: Lo primero es calibrar el test: dándole al botón de preferencias, abajo hay una linea seguida de 2 campos, el 1º tiene la longitud de la linea (que hay que medir e introducir el resultado) en milímetros, y después hay que introducir la distancia del observador a la pantalla en centímetros. Aviso por que por defecto pone 399cm (3m) y yo las primeras veces me equivoque pensando que ponía 399mm (39cm). Dependiendo de la longitud del cable de tu teclado, y del espacio que tengas en tu habitación, a lo mejor necesitas reducir esa distancia XD. El caso es que, debido a la resolución (dpi) de los monitores (que el programa calcula con la medida de la linea que has puesto en la casilla anterior), hay un límite inferior que no conviene rebasar por que entonces los caracteres no se ven bien, si has puesto un número demasiado pequeño, el texto a la derecha del campo de la distancia del observador se pondrá en rojo para avisar. Lo segundo, es opcional, es cambiar el límite de precisión mostrada (max displayed acuity, en la columna de la derecha más o menos por el centro) de 2 a unlimited (para darte algo de margen, por si acaso resulta que eres un lince). Y lo tercero y último también es opcional, es activar el resultado como fracción de Snellen. El resto de parámetros los puedes dejar igual.

¿Qué significa el resultado?, pues hay varios:

dec. VA (agudeza visual decimal): según el manual deduzco lo siguiente: se asume 1 como la agudeza visual (VA) de una persona normal sana, a partir de ahí, lo normal es estar entre 1 y 2 para la gente con buena vista, y entre 0 y 1 para la gente con no tan buena vista.

logMAR (logaritmo del ángulo mínimo de resolución): surge del anterior: "logMAR = log10(1/VA)" con lo que al aumentar el VA, el logMAR disminuye. Fácil de calcular, dice el manual que es la mejor medida para hacer medias aritméticas y cosas así.

Snellen fraction: indica la distancia a la que se reconoció el carácter y la distancia donde un observador normal lo hubiera reconocido. Por ejemplo, se suele hablar de 20/20 para una persona sana, y (según la nota de menéame) un halcón tendría 20/6, que se leería: "un objeto que esté a 20m, un halcón lo vería como si estuviera a 6m y tuviese 20/20" (o eso es lo que entiendo yo). A partir de aquí se puede calcular el VA como el resultado de la fracción.

Imagino que esto no sustituirá la visita al oculista para hacerse la revisión pero, oyes, se pierde un ratico majo procrastinando :)

2009/03/07

I (too) watched the Watchmen

Como reza el título, ya vi a los Watchmen. Así que toca poner la opinión en la red, como hacen otros.

Para poner las cosas en perspectiva, 300 (del mismo director) me gustó más. Incluso Sin City me gustó más. Pero Watchmen no es ni una mala película ni una mala adaptación. El caso es que es algo irregular, no a lo largo de la película, sino que algunos aspectos destacan más que otros:

Aviso de destripe: Si no quieres que te destripen el final de la peli o del cómic, no leas el resto del artículo.

La historia y la adaptación del cómic son bastante buenos, incluso con los cambios que tiene que no son tantos, y no son tan graves. Quizás que Laurie está muy blanda y le falta fuerza, aunque a lo mejor lo estoy comparando al cómic animado que sacaron hace poco donde el narrador, que también interpretaba a todos los personajes, le ponía bastante drama a las intervenciones de Laurie, o tal vez ha sido por el cambio de final, donde el segundo espectro de seda no tiene tanto protagonismo en el devenir de los eventos como en el comic original. En general, la historia es suficiente para aguantar sentado el tiempo que dura la película que no es poco.

El casting y la caracterización tiene grandes aciertos como Dan o Kovaks, trabajos aceptables como Laurie o Veidt, y algunos problemas como la madre de Laurie (especialmente la caracterización del envejecimiento es odiosa), Nixon (que parece una caricatura y era como darme un calbote cada vez que aparecía en pantalla), y el Comediante (sí, es muy parecido al cómic, pero yo lo vi bastante soso para lo despreciable que debería ser). Creo que también tengo que mencionar al doblaje aquí, por que en lineas generales no me ha gustado nada (salvo excepciones como el doblador de Dan y quizás en la adaptación de Kovaks haya faltado algo de contundencia en la adaptación) con especial mención a la voz de Laurie que me ha parecido la peor con bastante ventaja (aunque quizás peor escogida que actuada).

La música se oye cuando se debe oír, y se adapta bastante a la situación, aunque por algún motivo que no llego a comprender, a veces creo que sonaba demasiado fuerte.

En definitiva me ha gustado, pero no me ha gustado tanto como yo esperaba.

2009/02/25

mplayer por linea de comandos pero sin la linea de comandos (OS X)

Despues de compilar el mplayer para OS X (los binarios precompilados me dan algunos probmemillas, además de estar un poco obsoletos) me parece un peñazo tener que estar abriendo el Terminal y toda la pesca cada vez que quiero ver una peli, así que aquí va un pequeño AppleScript que, automáticamente, abre un Terminal e invoca al mplayer con lo que haya seleccionado en la ventana de finder que hay en primer plano:

tell application "Finder"
 set these_items to the selection
end tell

set file_list to ""
repeat with i from 1 to the count of these_items
 -- This could be done in 1 line but it becomes unreadable
 set this_file to (item i of these_items) as alias
 set this_file to quoted form of POSIX path of this_file as string
 set file_list to (file_list & this_file) & " "
end repeat

tell application "Terminal"
 (* Of course, for this to work, mplayer needs
  to be reachable from the $PATH
  *)
 do script "mplayer " & file_list
end tell

Funciona genial con QuickSilver, y si hay más de 1 archivo los reproduce uno tras otro en la misma ventana de mplayer. Además mplayer es bastante listo como para saber cuando no está abriendo un archivo multimedia y pasar al siguiente sin alborotar demasiado, así que no hay que preocuparse por tratar eso y se simplifica mucho mucho el código.

Como mejora quedaría detectar un archivo de subtítulos con el formato de nombre "nombre_del_archivo_de_video.lang.srt" y pasarselo al mplayer (que no lo detecta automáticamente por culpa de la parte ".lang." [VLC, o QuickTime+Perian, sí detectan ese patrón]), pero la falta de operaciones con texto de AppleScript hace esto demasiado complejo para que compense (No RegEx?, No party). Probablemente en un futuro migre el código a Python, o a una combinación AppleScript/Python (¡/igor/ no: /aigor/!).

2009/02/23

webcomics en mi greader

Para no dejar a febrero sólo con 1, pobrecito, voy a listar y comentar los webcomics (o gente que en vez de expresarse con texto en sus blogs lo hacen con imágenes sintéticas) que tengo en mi lector de feeds. Sin ningún orden en particular:

  • Goblins (Dibujo e historia Tarol Hunt, color Danielle Stephens). Temática fantástica bastante inspirada en los juegos de rol del mismo estilo, los protagonistas han ido cambiando desde el inicio, y hay varias tramas abiertas, pero ahora mismo la historia es bastante drama-aventura y está centrada en un grupo de 5 goblins aventureros algo estereotipados (paladín, clérigo, guerrero, monje, multiclase) pero bastante carismáticos. El ritmo es irregular, y algo lento últimamente.
  • The order of the stick (Richard Burlew). La orden del palote (que se llama así por que está dibujada con sencillas figuras de palotes) también es temática fantástica inspirada en los juegos de rol y literatura ídem, aunque aquí hay mucho mucho más metalenguaje que en Goblins. La orden del palote recorre el mundo en busca de aventuras, siendo las principales la venganza contra Xykon, y la búsqueda del 'descosido'. Todo un clásico.
  • Erfworld: The battle for Gobwin Knob (historia Rob Balder, imaginería Jamie Noguchi). La temática de "Erfworld: La batalla de Gobwin Knob" es un tanto peculiar, la base es fantasía orientada a wargame de mesa por turnos, y con unas pinceladas muy muy muy muy geeks: personajes (peluches, marshmallows, búhos de ORLY), elementos del jueg... de la batalla (lucha de bailes, golems de mierda), técnicas mágicas (flower power, matemancia, etc...) y tecnomágicas (el libro que funciona como un messenger), etc... además todo en un ambiente muy azucarado para "los buenos", y no tanto (pero no menos "huy mira que monos") para "los malos". Erfworld la comenté hace tiempo, aunque no dije demasiado (entonces acababa de salir). Ahora mismo me resulta difícil de seguir al ritmo habitual (mala memoria), pero los puntos geekypop que tiene me han enganchado y... no se puede no adorar a Wanda.
  • The dreamland chronicles (historia Scott Christian Sava, ejecución bastante gente). Temática fantástica, y en lugar de ser un webcomic dibujado está hecho con software 3D, aunque eso no le quita ningún mérito a un cuento para todos los públicos 'a la disney' como este. Trata sobre un mundo (dreamland) al que los niños acceden cuando sueñan, y que olvidan cuando se hacen mayores y sobre uno de los niños, Alex, que tras hacerse mayor, parece que ha vuelto a dreamland... y las cosas ya no son como él las recordaba.
  • Plétora de piñatas (Mauro Entrialgo). Actualidad. Son tiras cómicas sin una historia concreta que las una a todas, pero con unos cuantos personajes recurrentes con los que Mauro trata los temas que le parecen.
  • Geek in love (Ramón Redondo). Actualidad. Al principio parecía como que había una historia entremezclada con tiras costumbristas-geek, después la historia se fue a por tabaco y aún no ha vuelto, así que junto a las tiras de costumbrismo-geek se han mudado unas cuantas de actualidad geek para llenar el hueco.
  • La tira de Bit y Byte (parece que principalmente Manz). Juegos de palabras y costumbrismo geek. A veces publica.
  • La Tira ECOL (Javier Malonda). La tira es.comp.os.linux (alguien habrá que aún use las news para socializar, supongo) va de costumbrismo geek, 'starring' Bilo (linuxero stallmanista [creo]) y Nano (windousero sin escrúpulos [definitivamente]), y con la aparición estelar de el amigo mandrakero (que no recuerdo si ha sido nombrado), el robotito, y alguna que otra hembra humana (bastante anónima, por cierto).
  • xkcd (Randall Munroe). ¿Que puedo decir de xkcd que le haga justicia?. Si no lo sigues por que no lo conoces estas tardando, y si no te gusta 'No Mereces Vivir'™.
  • Profesor de música en un instituto público (Adrian Begoña). Pues va de eso, de lo que tiene que aguantar un profesor en un instituto público en España, principalmente alumnos (todos anónimos).
  • Explodingdog (Sam Brown and teh intertubes). Dibujos sueltos, sin una temática concreta. El autor recibe emails que los visitantes de su sitio le envían con una frase que sirva de inspiración para un dibujo, entonces Sam escoge una y la dibuja. Por lo visto él fue el primero en hacer esto (wikipedia dixit).
  • Eh tío (Morán). Acción, humor y miscelánea. Tuvo una historia, tuvo un popurrí de viñetas de humor sueltas, y parece que vuelve a tener una historia.
  • FreakAngels (historia Warren Ellis, imaginería Paul Duffield). Distopía con un grupo de 12 psionicos que provocan el apocalipsis (aunque no se ve nada de eso): la historia se limita al barrio londinense de Whitechapel, donde se han agrupado algunos de los 12, y donde parece que sobreviven con personas normales en un Londres anegado. Normalmente no me gusta el color lila, y la trama es algo lenta, pero el dibujo es atrapante, Duffield es un maestro en lo suyo.

La verdad es que, como comento con Erfworld, como la mayoría de los cómics con continuidad salen despacito y mi memoria no es muy buena, me cuesta seguirles el hilo, evidentemente leerlos del tirón es más sencillo (y p.ej. acabo de releer precisamente Erfworld). Respecto a esto, FreakAngels es el único con continuidad de la lista que en lugar de publicarse página a página cada día o cada X tiempo, se publica 4 ó 6 páginas juntas 1 día de la semana, lo que se agradece bastante para el seguimiento.

PD: a lo mejor el último párrafo no tiene sentido, es tarde, lo revisaré mañana... si me acuerdo.

PPD: estoy 'atontao', ya tenía al menos el OS cliché en febrero.

2009/01/10

Cortar

Una característica común y muy usada en los escritorios de los sistemas operativos modernos (Windows, OS X y freedesktop) es el portapapeles.

Normalmente hay 3 instrucciones básicas para usarlo: copiar, pegar y cortar. De ellas, las 2 primeras funcionan prácticamente igual en todos los escritorios modernos y en cualquier contexto o programa; pero la instrucción cortar tiene algunas peculiaridades que dependen tanto del sistema operativo como del programa que esté activo al invocarlo.

Este artículo trata de la instrucción cortar, su origen, sus distintas implementaciones (en varios sistemas operativos y programas), y lo que opino de ellas ahora que se todo esto.

¿De donde viene el portapapeles?

Con un poco de wikipedia (clipboard, "cut, copy and paste") no se tarda mucho en descubrir que la invención de este patrón de trabajo se atribuye a Lawrence Tesler (también en wikipedia), que como podéis ver tiene un currículo impresionante.

El IEEE Spectrum (publicación principal del Instituto de Ingenieros eléctricos y electrónicos), lo entrevistó en su artículo "Of Modes And Men", donde hay un par de pistas sobre la experiencia de Tesler con el portapapeles; traduzco del artículo:

[...] se puso a desarrollar Gypsy, un sistema de procesado de texto sin estados modales que fue el primero en usar elementos que ahora nos son familiares: la función de cortar-y-pegar para mover texto, un formulario para escribir términos de búsqueda, selección de texto manteniendo pulsado un botón del ratón y arrastrando el cursor, tipografías en cursiva y negrita, e impresión lo-que-ves-es-lo-que-hay.

y del apartado "Larry's lexicon" (el vocabulario de Larry):

Cortar-y-pegar: En 1969 Tesler se ofreció voluntario para ayudar a crear un catálogo para la Mid-Peninsula Free University del Área de la Bahía. Él y Jim Warren, fundador de la feria de ordenadores de la costa oeste, hicieron la fotocomposición para ese catálogo. Por aquella época Tesler vio una demo de una instrucción de ordenador que te permitía recuperar algo que habías borrado. La instrucción se invocaba con "Escape P punto y coma" (o algo igual de farragoso). Varios años después, cuando Tesler estaba escribiendo en Xerox PARC un libro blanco sobre el futuro de la informática, recordó aquellas experiencias para predecir que serías capaz de "cortar y pegar" en los documentos de ordenador

Igualmente interesante es el documento `"Gypsy", Una investigación del sistema de edición asistido por ordenador de Ginn` (enlazado desde el artículo sobre Gypsy de la wikipedia) el documento escrito por Betty Burr y Ralph Kimball sobre la experiencia en la implementación del programa desarrollado por Tesler y Tim Mott en el Xerox PARC. Primero en la página 23, que aunque no parezca relacionado, es muy importante:

Miedo a perder el trabajo y la presión de las fechas de entrega

Todos estamos bajo una cantidad de presión increíble, y además tenemos que pelearnos con un sistema experimental. . . .

Creo que lanzaría la puta máquina por la ventana si me hace perder el trabajo del día.

La fiabilidad del sistema era un asunto muy emocional entre los editores de Ginn y fue mencionada por la mayoría de los entrevistados. Los editores pidieron repetidamente una forma más a prueba de idiotas de protegerse de las pérdidas de trabajo debidas a futuros fallos del sistema. Si el editor pierde un archivo, debe reconstruir mucho trabajo de memoria, ya que gran parte del proceso de edición requiere elaborar juicios subjetivos. Como las fechas de prensas, artistas, y publicación del libro se han calculado en base a las fechas de entrega del editor, estos fallos son muy serios.

Experiencias tempranas con el sistema, donde se perdieron de verdad algunos archivos, parece que han dejado a los editores con una preocupación omnipresente. El grado de preocupación estaba inversamente relacionado con la cantidad de experiencia con el sistema; el aumento en la fiabilidad ha convencido a los usuarios continuos que pueden tener más fe en el sistema.

Y luego en la página 25, relacionado mucho más directamente con el portapapeles:

En Gypsy, el espacio donde se almacena todo lo que se borra se llama 'cubo de basura' [wastebasket]. Los usuarios tomaron el nombre demasiado literalmente y no pensaron en ese espacio como almacén de material editado sino como basura que no podía ser reutilizada. Pocos editores usaron efectivamente el cubo de basura para almacenar material temporalmente y pegarlo después en el manuscrito. Esto es debido parcialmente a la extraña naturaleza de la interacción con el cubo de basura y la escasa visibilidad de los elementos allí almacenados. El tamaño inicial del cubo de basura es de sólo dos líneas, así que cuando se corta una gran cantidad de texto, sólo se muestran las últimas dos lineas de texto. La limitación de las dos lineas es especialmente mala si el editor debe revisar el cubo de basura o manipularlo de alguna manera antes de hacer el pegado. Había disponible una instrucción para agrandar el cubo de basura, pero se perdió de alguna forma entre los implementadores de Gypsy y los editores, ya que ninguno de ellos sabía de su existencia.

Entonces tenemos que la primera implementación del portapapeles fue realmente transformar la instrucción borrar+buffer de seguridad (a modo de edición no destructiva que, como dijo Tesler, ya existía en otros sistemas) en la papelera, y que la instrucción cortar ha sido malentendida por bastante gente desde el mismo momento de su concepción; según el documento sobre Gypsy, debido a la poca visibilidad del 'cubo de basura'.

En la siguiente iteración del trabajo de Tesler y compañía (Lisa, ya en Apple), las funciones de edición no destructivas probadas en Gypsy se separaron en tres funciones que han permanecido hasta la actualidad sin demasiados cambios:

  • La instrucción de deshacer, que se usaba principalmente dentro de las aplicaciones, y también era deshacible con lo que además funcionaba como rehacer y, evidentemente, sólo permitía un nivel de marcha atrás. Deshacer no funcionaba con el sistema de archivos más allá de las operaciones con el texto de los nombres de los documentos.
  • La papelera propiamente dicha que, al igual que hoy en día, sólo estaba disponible para el sistema de archivos: el contenido borrado de las aplicaciones no era recuperable salvo con la instrucción de deshacer. Y el espacio para archivos era limitado, borrándose completamente los más antiguos cuando llegaban nuevos y se rebasaba el límite.
  • Un portapapeles parecido a las implementaciones actuales, donde la única forma de modificar su contenido es a través de las instrucciones cortar, copiar y pegar de cada aplicación. Además el sistema incluía un visor del portapapeles con su propio icono en el escritorio desde el 1º momento. Este sistema no permitía cortar, copiar ni pegar archivos en el explorador de archivos mediante las mismas instrucciones que el resto de aplicaciones y, al igual que la función de deshacer, actuaba sobre el texto de los nombres de los documentos. Para copiar archivos había dos modos de hacerlo: duplicar+arrastrar, o copiar una referencia+pegar, y para moverlos se hacía en 2 pasos copiando y borrando, o se arrastraban con el ratón.

Todo esto y más podéis probarlo vosotros mismos en cualquier ordenador de hoy en día con el emulador LisaEm, y con las ROMs de Lisa Write y del Lisa Office System, así que no me extenderé más.

Implementaciones actuales de cortar (y pegar)

Después de Lisa, el portapapeles y la papelera no han cambiado prácticamente. Aún así voy a repasar cómo parece que se comporta la instrucción de cortar según varias implementaciones actuales en diversas aplicaciones.

  • Implementación genérica en la mayoría de programas (textedit/notepad/word/pages, gedit/kate, photoshop/gimp, audacity, etc) tanto en Windows, OS X, como freedesktop
    cortar = copiar al portapapeles
           + borrar el original
    pegar = copia lo que haya en el portapapeles al documento actual
  • Implementación particular de los exploradores de archivos en Windows, y escritorios basados en freedesktop
    cortar = copiar al portapapeles
           + marcar
    pegar = pegar
          + borrar el original
  • Implementación particular de Finder (explorador de archivos de OS X)
    cortar = ∄ (está desactivado)

Además de estas, me gustaría destacar una variante interesante que también he visto:

  • Implementación particular en varias hojas de cálculo (MS-Excel, OpenOffice.org <v3.0 , Google Spreadsheets) para los valores en las casillas de las tablas
    cortar = copiar al portapapeles
           + marcar
    pegar = borrar el original
          + copia lo que haya en el portapapeles al documento actual
          + actualizar formulas si es el primer pegado desde que se cortó.
  • Implementación particular en Numbers (hoja de cálculo de Apple) para los valores en las casillas de las tablas
    cortar = copiar al portapapeles
           + borrar el original
    pegar = copia lo que haya en el portapapeles al documento actual (no actualiza formulas)
    
    marcar para desplazar = marcar
    desplazar = mover a la nueva posición lo que está marcado
              + actualizar formulas

Probablemente haya alguna más, pero tampoco voy a extender esto más, que ya me está quedando muy largo.

Conclusión

¿Cómo es posible que tanta gente lo esté haciendo tan mal?.

A ver, la idea de cortar y pegar que parte de la forma de mover las cosas en el "mundo analógico" anterior al ordenador: para desplazar un texto, si no tienes un ordenador, tienes que cortar de algún lado con unas tijeras, y eso implica una destrucción que es físicamente evidente pero aceptable ya que lo que normalmente se recorta no son originales (pensando en el sistema de fotocomposición con el que había trabajado Tesler). Pero si en un ordenador se puede representar el acto de mover de modo coherente, eliminando la capacidad destructiva de cortar (sobre todo siendo tan importante evitar la pérdida de información) y evitando redundancia, ¿Por qué se mantiene una orden destructiva entre un puñado de otras ordenes inofensivas? (especialmente cuando los sistemas actuales ya no están exclusivamente ligados al entorno de edición que las generó originalmente).

Si me preguntan a mi, yo eliminaría por completo la orden de cortar de cualquier rincon del sistema y, si de verdad hay que poner algo en su lugar, pondría algo parecido a Numbers: una orden de 'Marcar/Desmarcar para mover' y una nueva orden 'Mover ítem(s) marcado(s)' (tal vez también haga falta otra para Desmarcar todo, habría que mirarlo), tanto en los administradores de archivos, como en el resto de programas. Nadie debería usar 'mover' como sinónimo de 'borrar', ni a propósito, ni accidentalmente (aunque quitar 1 entrada de menú para poner 3 en su lugar, tal vez sea un poco demasiado, ya digo que habría que estudiarlo más a fondo, por que la implementación de la hoja de cálculo de Apple tampoco me acaba de convencer).

No se si a estas alturas, Microsoft, Apple, o Freedesktop se van a poner a revisar el concepto y su implementación, aunque por lo pronto, creo que Apple va en una dirección aceptable con su implementación en Numbers, que espero extienda a otras aplicaciones. De momento seguiremos trabajando con la fuerza de la costumbre, esperando que algún día alguien la anule.

2009/01/03

La historia de un pegote

No hace mucho tiempo, vengo escuchando de un juego de esos que no están respaldados por ninguna grán compañía, que parece que se está convirtiendo en el último bombazo por toda la red. El juego en cuestión es el Wold of Goo.

Según comentan en una entrada navideña del blog de la minicompañía (2 personas), estos son los laureles recibidos:

  • Mejor juego para Wii, por IGN
  • 2º mejor juego del año, por Gamasutra
  • Juego del año, por Rock Paper Shotgun
  • Juego del año, por Gametunel
  • Y, aunque no es un premio concedido como tal (pero sube la autoestima como si lo fuera), no hace mucho alcanzaron el 2º puesto en ventas en Amazon.com (justo por detrás de WoW, y por delante de AAAs como Spore, Left 4 dead, y Fallout 3)

Los enlaces si quereis echar un vistazo están en la entrada navideña que he enlazado antes, en el blog de 2dboy, que hoy no estoy muy hacendoso.

Conforme veía el revuelo, por el nombre me acordé de un juego-experimento que vi hará 2 o 3 años llamado Tower of Goo y, tras bajar y probar la demo para Mac de WoG, me quedó bastante claro que es una evolución del ToG.

La mecánica básica es similar: construir una estructura a base de simpáticos pegotes; y los gráficos básicos también son muy parecidos: redondas bolitas pegajosas e inquietas y estructuras gelatinosas que se tambalean como flanes; pero ahí terminan las semejanzas, en WoG han añadido unas cuantas entidades secundarias (p.ej.: el pintor de carteles, o la Goo corporation), gran variedad de pegotes además de los negritos del experimento inicial, y un "mundo de los pegotes" con la típica (biblia, abe's oddisey, lemmings, etc...) historia del éxodo (típica, pero muy bien llevada, al menos en la demo que he probado). Además hay una 2ª versión del experimento, Tower of Goo Unlimited, donde el escenario es infinito en 3 direcciones (para abajo no, evidentemente).

En definitiva, y a pesar del aviso que el autor ha dejado en ambas entradas del Experimental Gameplay Project, que traduzco:

NOTA IMPORTANTE por si te preguntas que relación hay entre esto [Tower of Goo] y World of Goo. Hice este pequeño prototipo, "Tower of Goo", hace algunos años como experimento en unos pocos días. Tiene problemas ¡y ni siquiera funciona en algunas máquinas!. Así que, por favor, no pienses que es representativo de World of Goo (sólo se aprovechó la idea básica). World of Goo es mucho más amigable, estable, ¡y relleno de delicias!

Me parece que es interesante que, si os ha gustado World of Goo (y teneis un windows o sucedaneo compatible), le echeis un vistazo a modo de 'arqueología de un buen juego'.