[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Sobre el software



Me gustaría comentar algunas impresiones relativas a qué es y sobre todo, qué 
entiende la gente, por software.
Frente a tratar de definir de una forma precisa el software, resulta más fácil 
enumerar las diferentes formas de clasificarlo, dependiendo del criterio 
utilizado.
Primero, el relativo al contrato social: qué reglas son de obligado 
cumplimiento por parte de cada una de las partes involucradas.
Simplificando mucho, las categorías serían "software propietario" vs "software 
libre". 
Desde esta primera clasificación, ya hay (mal)interpretaciones. Por un lado, 
aparentemente son polos opuestos, y sin embargo, hay matices que dan a 
entender una gama de grises.
El software propietario aparentemente es más fácilmente entendible en una 
sociedad bajo un modelo capitalista: el resultado de mi esfuerzo es 
"propiedad mía", y tengo derecho a reclamar y a que se me bonifique si algún 
otro me copia/me ataca/se quiere aprovechar.
El problema para entender el "software libre" se basa en que el "software 
propietario" aparentemente es el concepto natural, aprendido, en otras 
palabras, lo que haría cualquiera con sentido común.
Entonces, ¿qué es el software libre? Pues la respuesta inicialmente no está 
clara, y en cualquier caso es difícil de asimilar. Requiere de numerosas 
explicaciones: que quizá sea un abuso que se exija saber Excel o Word cuando 
se piden conocimientos de "ofimática", que Internet no es el Internet 
Explorer, etc.
Y es que el mundo empresarial está lleno de "usuarios de nivel medio", es 
decir, de personas cuyas actividades profesionales se basan en software que 
utilizan con mayor o menor facilidad o eficacia, pero que en el que no 
quieren y no "necesitan" profundizar ni estudiar sus detalles internos. Si 
hay problemas, disponen de un servicio al que transmitir sus problemas y 
exigir soluciones. No pueden hacer otra cosa.
Explicar qué es el software libre implica plantear la posibilidad, 
lamentablemente a posteriori, de que cada uno tome su decisión en cuanto al 
software que utiliza.
De alguna forma, el software libre lleva asociada cierta irrealidad: "¿Quién 
usa Linux? ¿Cómo iba alguien a instalar Apache sin tener un teléfono al que 
recurrir si algo va mal? ¿No dirás en serio lo de que prefieres no instalarte 
el plugin de Flash?".
Sin embargo, el discurso cambia cuando se sustituyen opiniones por datos, 
subjetividades por medidas objetivas.
Lo relevante es que el hecho de que el software libre salga mejor parado, o 
no, al compararlo con alternativas propietarias no está ligado a su 
naturaleza. Sería un error que se empezase a utilizar GNU/Linux porque "es 
mejor", "no tiene virus", etc. Lo ideal es que sirviera para tomar una 
decisión razonada, profundizando en las consecuencias de la misma.

Por otro lado, es difícil separar la actividad de comercialización de 
software, con la idea de software propietario. Si a esto le unimos la 
confusión entre "libre" y "gratis", tenemos dos problemas de concepto en 
ambos polos. El razonamiento aparentemente es:
1) software propietario => actividad comercial,
2) actividad comercial => precio
3) libre => no propietario
Por tanto,
4) libre => no comercial => gratis
Y de ahí, implicaciones tales como "hipoteca => no me puedo permitir hacer 
software libre", y, para introducir el último condicionante, "valoro el 
altruismo de los que hacen software libre, pero yo tengo facturas que pagar". 
Parece que al software libre se le asocian cualidades positivas, como 
"altruista" (aunque sea falsa), más allá de lo realmente diferenciador: la 
libertad otorgada al receptor del software.

Dejando a un lado esta clasificación, Stallman se refiere al software como 
"funcional", es decir, en el sentido de diseñado para realizar determinadas 
tareas o acciones más eficientemente de lo que lo haría una persona.

Para mi el software, en cuanto a su "utilidad", requiere un análisis más 
profundo. En este sentido, yo propondría otra clasificación:
1.- Herramientas
1.1.- Para el desarrollo de software
1.2.- Para generar y consumir contenido
2.- Modelos
2.1.- Simulaciones
2.2.- Comportamiento humano

El problema más importante y estimulante en mi opinión es el incorrecto 
enfoque con el que se abarcan problemas del grupo 2.2 anterior. Por poner un 
ejemplo, se habla de "carrito virtual" como forma de hacer más fácilmente 
entendible el mecanismo gracias al cual el usuario puede realizar compras a 
través de un navegador web, cuando en realidad es el mecanismo el que debe 
adecuarse al concepto, es decir, debe ser una representación del mismo.

En este sentido, el "estado del arte" está, a mi entender, en un estado muy 
precario, hasta el punto de no poder explicar por qué un carrito virtual, 
desde este punto de vista, no *debe* estar implementado en shell scripts, 
aunque "funcione".
En cualquier caso, si dura es la batalla de "propietario" vs "libre", ésta ya 
me parece insalvable, a no ser que aparezca un friki como Stallman...