Thursday, August 18, 2005

Re: Ctrl+N in IE

Havoc comments on Internet Explorer showing the same page you're already viewing when you open a new window:

I'm pretty sure this is the only page on the Internet that I could not possibly want to see in the new window, since I already had it open.


Havoc is a smart guy, and usually he's right in the money, but he is soooo wrong on this one.

First, it's not always the case that you do not want to see the same page on the new window. You may want to check the bottom of the page to have a window with the footnotes, but still retain a window on the current reading position. But granted it's extremelly rare.

The thing that is invaluable is having the whole history of previous / next links on the new window. When you create a new window it's usually just because you want to fork your lecture. You have found two interesting links to follow on the same page, for instance. In no way is one of the windows more important than the other one to the user. Both are part of the current lecture “tree”.

All the Mozilla derivated I've seen handles new windows (or tabs) from a programmer point of view. They are just new, virgin, history-less windows. A pity.

Wednesday, August 17, 2005

¿Es ilegal compartir música con eDonkey / eMule / bittorrent / KaZaa?

La respuesta intuitiva a esta pregunta es que sí, ya conoceis el discurso oficial, pirateria, chicos malos, etc.

En pocos paises se ha puesto en duda que algo asi sea ilegal, siendo bastante controvertido el método usado contra “los culpables”.

Los EE.UU. fueron pioneros de los ataques en justicia hacia este tipo de programas, primero contra sus creadores. Estos no siempre fueron condenados, argumentando que no eran responsables de las obras que los usuarios copiaban con sus programas. Cuando este método falló, los ataques cambiaron de objetivo, pasando a ser contra cualquiera que compartiese música sin la conveniente autorización del autor.

¿Como atacar a millones de personas? No hace falta atacar a millones, solo tenían que seleccionar unos cientos para conseguir el efecto deseado. Nadie volvió a sentirse impune, y arrancar kazaa pasaba a ser como jugar a la ruleta rusa.

En Europa la ley es distinta, pero naturalmente a grandes rasgos se mantiene la idea de la de EE.UU. Protección del copyright y de los derechos de autor.

Después de esta disgresión, volvamos a casa, a España, donde una lectura ingenua de la LPI parece sacar fuera de la ley a
los usuarios de los programas P2P.

Un extracto de los artículos que son en mi opinión relevantes:


Artículo 17. Derecho exclusivo de explotación y sus modalidades

Corresponde al autor el ejercicio exclusivo de los derechos de explotación de su obra en cualquier forma y, en especial, los derechos de reproducción, distribución, comunicación pública y transformación, que no podrán ser realizadas sin su autorización, salvo en los casos previstos en la presente Ley.

Artículo 18. Reproducción

Se entiende por reproducción la fijación de la obra en un medio que permita su comunicación y la obtención de copias de toda o parte de ella.

Artículo 19. Distribución

1. Se entiende por distribución la puesta a disposición del público del original o copias de la obra mediante su venta, alquiler, préstamo o de cualquier otra forma.
[...]

Artículo 20. Comunicación pública

1. Se entenderá por comunicación pública todo acto por el cual una pluralidad de personas pueda tener acceso a la obra sin previa distribución de ejemplares a cada una de ellas.

No se considerará pública la comunicación cuando se celebre dentro de un ámbito estrictamente doméstico que no esté integrado o conectado a una red de difusión de cualquier tipo.
[...]

Artículo 31. Reproducción sin autorización

1. Las obras ya divulgadas podrán reproducirse sin autorización del autor y sin perjuicio en lo pertinente, de lo dispuesto en el artículo 34 de esta Ley, en los siguientes casos:
[...]
2.º Para uso privado del copista, sin perjuicio de lo dispuesto en los artículos 25 y 99.a) de esta Ley, y siempre que la copia no sea objeto de utilización colectiva ni lucrativa.
[...]


Asi pues siguiendo con análisis “intuitivo”, la ley da derecho exclusivo al autor para la “reproducción, distribución, comunicación pública” de su obra, añadiendo una excepción para la reproducción de la obra, siempre que esta no sea “objeto de utilización colectiva ni lucrativa”. Una copia de un CD para llevar en el coche, por ejemplo. Primer detalle curioso, no necesitas hacer la copia a partir de un “original”, y en caso de que asi lo hagas, el “original” no tiene porque ser tuyo.

Hay sin embargo un abogado español, David Bravo Bueno que sostiene que compartir música en un programa P2P no cae dentro de:

  1. la utilización colectiva de la reproducción de una obra
  2. ni la distribución
  3. ni la comunicación pública

David expone su tesis en su Copia este libro (página 105 en adelante).

Las restricciones del artículo 31 son, tal y como David explica:

  1. Que la obra esté divulgada.
  2. Que la copia lo sea para uso privado del copista.
  3. Que la obra no sea objeto de utilización colectiva.
  4. Que no sea objeto de utilización lucrativa.

La única restricción potencialmente problemática para los que usan un programa P2P es la de la utilización colectiva, ya que al mismo tiempo que una canción o película se descarga en el ordenador se esta también enviando a los demás usuarios.

Sin embargo la ley entiende “utilización” en el sentido de escuchar una canción, o ver una pelicula, pero no se está “utilizando” una obra por el mero hecho de servir de soporte a una copia.

Asi pues, nada viola el derecho de reproducción sin autorización del autor cuando se usa un programa P2P.

Sin embargo, y aqui es donde mi postura se diferencia de la de David, no comparto su argumentación sobre la “Distribución” (página 111). él dice:


Sin embargo, es de manual (literalmente) que el acto de distribución no puede darse nunca en Internet porque se refiere, exclusivamente, a ejemplares físicos de las obras. El libro “Manual de Propiedad Intelectual” coordinado por Rodrigo Bercovitz nos recuerda que “la distribución implica necesariamente la incorporación de la obra a un soporte físico que permita su comercialización pública a través de los medios señalados en el art. 19. El carácter físico del soporte exige la posibilidad de aprehensión del mismo por parte del público (…). Todos aquellos modos de explotación que no permitan la incorporación física de la obra no pueden ser considerados como de distribución (…). El aspecto fundamental del derecho de distribución es que la obra se incorpore a un soporte tangible, general y similar para el conjunto de integrantes del público”.


(Un pie de nota añade que en este aspecto la doctrina especializada es unánime.)

Hay algo en lo que no estoy de acuerdo. Si leemos detalladamente los artículos 19 y 18 (en este orden), vemos lo siguiente:


Se entiende por distribución la puesta a disposición del público de[...] copias de la obra.
Se entiende por reproducción la fijación de la obra en un medio que permita [...] la obtención de copias[...]


Según cuenta David, son estos dos artículos juntos los que llevan a la conclusión de que para que haya distribución, la obra se tiene que incorporar a un soporte físico. Mi educación es la de un físico y no un abogado, pero volviendo a mis orígenes cartesianos, yo no veo en la descripción de la reproducción una claúsula que diga que solo se pueden obtener copias a través de la fijación de la obra en un medio.

Es decir, el enúnciado del artículo 18 no parece dar una forma exclusiva a la obtención de copias, y a partir de ahi, la deducción de que las copias a las que se refiere el artículo 19 tengan que tener un soporte material me parece errónea.

David comenta también que utilizar un programa P2P tampoco infringe el derecho exclusivo del autor a la “Comunicación pública” de la obra. Su argumento es el siguiente:


Las redes Peer to Peer establecen conexiones exclusivamente entre dos personas. Son redes “punto a punto” y resulta difícil calificar como comunicación pública un sistema que carece de público.


Esto es falso. Se puede traducir Peer to Peer como se quiera, pero
eso no hace que la comunicación sea exclusivamente entre dos personas. El término Peer to Peer tiene origen en la ausencia de un servidor en la red, asi pues todos los nodos de la red tienen el mismo estatus, y las comunicaciones se realizan entre “pares” (ningún comunicante tiene un estatus más elevado que el otro).

En general, un usuario conectado en una red P2P envia sus obras compartidas a varios usuarios simúltaneamente. Cuando un usuario A carga una de las obras de otro usuario B de la misma red, nada impide que A no sea el único “cliente” de B.

Para finalizar, y ya que David comenta un caso judicial francés para apoyar su tesis de que cargar obras por internet es legal[1], mencionar que ha habido numerosas condenas en Francia a usuarios de programas P2P, a pesar de que no tenían animo de lucro.

Nota: No soy abogado, ni lo parezco. Solo soy un ciudadano interesado por saber si puede usar los programas P2P con la conciencia tranquila, o no. Ha habido decisiones de justicia contradictorias en este sentido en Francia, pero la gran mayoría apuntan a que no es legal. La opinión de los abogados también es contradictoria, pero la inmensa mayoría también parecen estar de acuerdo en que no es legal.

La ley francesa y la española en este sentido se parecen como dos gotas de agua, pero el lenguaje utilizado es lo suficientemente sutil como para ignorar todo lo que se salga de la LPI.

En Francia no tengo muchas dudas de que no debo usar un programa P2P, y la única forma que me queda de sacar una conclusión al respecto es leer por mi mismo la ley, ya que la opinión de los expertos es contradictoria.

Si alguien quiere aportar alguna corrección a este artículo, que me la mande y la añadiré gustosamente.



1: Tesis con la que estoy de acuerdo. Con lo que no estoy de acuerdo es con que enviar obras por internet también sea legal.

Tuesday, August 16, 2005

Fade in and out

Playing with the effects in script.aculo.us I added a new little effect to switch from an element to another one smoothly.

Better see it in action, go to Panoramio, register as a new user, and see the little fade out of “Login     Register” and the fade in of “Hi Foo Bar”.

Sure enough, it was not working on IE. It's a documented problem, the Opacity effect didn't work on elements without layout. The “layout” is some kind of karma that IE throws on certain elements, and you can activate it manually if you use the right CSS incantation.

So here we go, I put height: 1px; to my CSS elements to no joy, it still didn't work. Let's try zoom: 1... on the money! My page didn't validate anyway (and no, I don't care) so I'm sell on zoom.

But now I have another problem. If you have cleartype activated the result is ugly beyond belief. Pssst. Well, nobody said that's going to be easy. Another google search, and we see this lovely blogger giving us a work-around. Just put an explicit background color to this element. Luckly enough I'm using an uniform background for this part of the site, so I just added a background-color: white; and now I have something that works like a charm at the very least on IE6 and on Firefox.

I can now take my breakfast.

Tuesday, August 09, 2005

Panoramio

It seems as this blog thing is not for me. I'm trying to resume regular posting (again).

I did lately some work on web technologies, to cut my teeth on Ajax and what not.

You can see the result at Panoramio. Still very crude, but I'm improving it. Things I should deploy very soon now™:


  • a way to login/register - so you can show your photos.

  • a revamped search - so you can have more than 50% chance of getting suggestions.

  • smaller previews on the sidebar - so you can... you know... see smaller previews on the sidebar

  • a help page - the thing that anybody ask for and nobody reads.


It's crazy the amount of work that can take a site that looks so simple. I should start blogging about all the stuff I find developping this thing, at least I will have a record.

The question of the day. Should I blog in spanish or in english?

As I don't think anybody is reading these rumblings, I will need to take a decision on my own...

Monday, July 11, 2005

Wednesday, June 08, 2005

Word document format

I've started to learn the Word document format.

First, a doc file is a container of several files, like a zip file but not compressed and optimized to be read in blocks of 512 bytes (or 4096 sometimes).

The container spec is easily understandable, so a few hours after reading it I had a little C program that was able to extract the different "sub-files" (streams from now on).

All the meat for a Word document is in the "WordDocument" stream. Besides this stream you will find at least the "SummaryInformation" and the "DocumentSummaryInformation" streams, that store things like the Title, Subject, Author, etc. (go to File -> Properties in Word to see them).

The "SummaryInformation" and "DocumentSummaryInformation" streams are described in the Ole2 Programmer's Reference (fortunately we have a copy at work).

The "WordDocument" stream's format is much harder to decode, as here Word stores all the format information, text, etc. It seems that Microsoft published the Word spec on MSDN, and people have copied it on Wotsit, correcting some bits in the process.

So, with this spec, I read the header of the WordDocument trying to extract the text of my mini Word test file. First surprise, the doc says that text is stored between FIB.fcMin and FIB.fcMac (FIB is the header), but fcMin is 0x200 bytes before the beginning of my "Hello". If I read the text between FIB.fcMin and FIB.fcMac I got:

00 00 00 ... repeat 0x200 times ... H e l l o

I first though that I had a bug in my Ole decoder, as 0x200 is exactly the size of one big block in the Ole Container, but no luck, it seems that my code was not buggy, as I extracted the WordDocument stream using laola, but I was getting the same result.

Weird.

After looking at libwv, it seems that it ignores completely fcMin, as since Word 97 you need to read the piece table stored in the word file, even if it has been saved without the "fast-save" option (to know the encoding of each piece of text you read).

So I headed to where the piece table is supposed to be, to extract at least the first piece of text, but so far I've not yet made any sense from the piece table in my test document :-(

To be continued...

And then...

it crashed.

After 2 hours working on an icon, Gimp decided I should take a rest, and it crashed.

Of course, it would not be funny if I had saved it, and sure enough, I didn't save it. Not a single time.

I can hear you...
It's your fault! You should always save no matter what software are you using.


But sorry, I'm not that stupid. It's GIMP fault, 100%. Given that it's not the first time it decides to ruin several hours of my work, I wonder if I should start learning Photoshop. It can't be as hard as it seems...

And for all the artists out there, a wonderful link from simplebits: firewheel design has the best Portfolio I've never seen. Their colors on all their creations are extremely hot and vivid. A pleasure for the eye.

Friday, May 20, 2005

J2ME experiments

Adel (the brother of my wife) has a new shiny Nokia 63whatever, that comes with a java vm, and so yesterday evening I decided to take a look at J2ME programming.

After downloading the Nokia SDK, double checking that I'm too stupid to make it work with eclipse, downloading eclipseme and installing it, I finally had a j2me development environment available.

I did a little snake game, and it worked more or less flawlessly. This evening I will add some graphics to it and take some screenshots.

Update: And here you have it. It's a pity that my graphics skills suck so hard. Worst of all, I actually passed a lot of time picking colors and drawing things. The background image comes from one of the background of GNOME Art (the Happy gnome one).

Screenshot of Yet Another Snake for Nokia

Jar file, Jad file and the source code (license: do whatever you want with it).

Thursday, May 19, 2005

And talking about free time...

A fan group creates Star Wars Revelations, a film based on you know what.

Speaking about amateur's films, an ex-coworker, Sebastian Ruchet works on a five episodes TV serie, France Five.

New piece of art

New piece of art discovered at the British museum:



It remained several days at the British museum until they discovered the joke. This world still amazes me :-)

eBay buys Loquo

So it's official.

eBay has bough Loquo, and thus Loquo will be from now on part of the Kijiji network.

I've been helping Ubaldo and others pals with Loquo these lasts months, and so I feel as a tiny part of it. I'm sure Ubaldo will keep the great work he has done in Loquo, and he will be a great asset for Kijiji!

P.S.: BTW, don't mix blogger and Opera. I've lost a copy of my two latests posts when I was writing them.

Too much free time

There are people out there that have too much free time in their hands. Look at what can be done in MS Paint.

Amazing.

Seen in Garret LeSage blog.