Existen varias formas de clasificar el software. Probablemente el más común es hacerlo en función de su tipología y su cometido (procesador de textos, editor gráfico, sistema operativo, cliente de correo, gestor de bases de datos, virus, gusano, troyano, etc.). Lo que yo voy a hacer es centrarme en el tipo de licencia o contrato con el que se distribuya el software.
Índice de contenidos de este artículo:
- Software sin licencia
- Software propietario o privativo
- Software libre
- Código abierto
- FLOSS o FOSS
- Software multilicencia
Sofware sin licencia
Lo cierto es que hay muchísimo software que en realidad no tiene ningún tipo de licencia:
- Es el caso de los programas desarrollados internamente en multitud de empresas para satisfacer necesidades propias (gestión de las vacaciones, gestión de los tickets de gastos, ubicación de los libros, etc.). Estos programas suelen estar desarrollados en lenguajes como COBOL, Pascal, Visual Basic (Access), Delphi, Lotus Notes, Java, etc.
- Tampoco se suele especificar ningún tipo de licencia a los scripts utilizados por los administradores de sistemas para realizar sus labores diarias. Estos pequeños programas suelen estar escritos en Bath, Bash, Perl, Python, etc.
- Lo mismo suele ocurrir con infinidad de pequeñas funciones de JavaScript utilizadas por los diseñadores web para todo tipo de tareas.
Es práctica común que los diseñadores de páginas web reutilicen
Al no especificarse ningún tipo de licencia, según la mayoría de legislaciones del mundo, se da por supuesto que los autores de dichos programas se reservan todos los derechos sobre los mismos. Esto significa que aunque podamos acceder al código fuente de un programa cuya licencia no está definida, no podemos ni copiarlo, ni modificarlo, ni nada de nada. Esto en ciertos casos resulta un fastidio puesto que es práctica común que los diseñadores de páginas web por ejemplo reutilicen elementos de diseño de otros sitios web, incluido el código JavaScript del mismo. Lo mismo ocurre con programas de Visual Basic, PHP, etc. De hecho, existen sitios web cuya función es precisamente la compartición de pequeñas utilidades de software (aunque no suelen tener asignado ningún tipo de licencia): LaWebDelProgramador, FreeProgrammingResources, Scripts, HotScripts, NeedScripts, etc.
Software propietario o privativo
Se denomina así al típico software que se comercializa con una licencia restrictiva, a través de la cual el vendedor limita los derechos del comprador lo máximo posible. Normalmente sólo está permitido instalar el software en un único equipo y para hacerlo, durante la instalación es necesario introducir un código de activación o un número de licencia durante para comprobar que hemos adquirido el programa lícitamente. El vendedor no suele hacer público el código fuente del software, sino todo lo contrario.
El vendedor limita los derechos del comprador lo máximo posible
Ejemplos de este tipo de software son el sistema operativo Microsoft Windows, el programa de retoque fotográfico Photoshop y muchos otros más.
El otro gran grupo de software es el llamado libre o abierto (en contraposición a propietario/privativo), cuyo código fuente sí está disponible y cuyas licencias permiten hacer muchas cosas más que instalar el software en un sólo equipo y no dejar que nadie lo copie.
Software libre
El software libre (en inglés free software) es un término acuñado por Richard Stallman, fundador de la Fundación para el Software Libre (en inglés FSF), y que además lo definió como todo software que cumple estas cuatro libertades:
- La libertad de usar el programa, con cualquier propósito.
- La libertad de estudiar cómo funciona el programa, y adaptarlo a tus necesidades. El acceso al código fuente es una condición previa para esto.
- La libertad de distribuir copias, con lo que puedes ayudar a tu vecino.
- La libertad de mejorar el programa y hacer públicas las mejoras a los demás, de modo que toda la comunidad se beneficie. El acceso al código fuente es una condición previa para esto.
Como es lógico, la concesión de estas libertades por parte de los autores contrasta completamente con el enfoque del software propietario. Es más, el hecho de permitir copiar los programas libremente contrasta completamente con el enfoque tradicional de la propiedad intelectual. Por este motivo, el software libre resultó en sus inicios bastante polémico. La gente (incluso los programadores), se preguntaban cómo era posible ganarse la vida si no se cobraba por cada licencia vendida como en el software propietario. Por suerte, en la actualidad la viabilidad económica del software libre está más que demostrada.
La primera y más conocida de las licencias utilizadas para el software libre es la Licencia Pública General (en inglés General Public License, GPL). Esta y otras licencias libres tienen programas de software libre como Linux, el paquete ofimático OpenOffice o el navegador web Firefox.
Los programas de software libre también tienen licencias
Es importante dejar claro que al igual que los programas propietarios, los programas de software libre también tienen licencias. Lo que ocurre es que normalmente no se cobra por dichas licencias. También hay que tener en cuenta que los programas de software libre tienen unos autores (básicamente los programadores) y por tanto tienen también unos propietarios. Es por ello que haya gente a la que el término software propietario no le parezca suficientemente claro, puesto que si nos atenemos al significado literal del mismo, en realidad el software libre es tan propietario como el software propietario. Lo que ocurre es que sus autores no se reservan todos los derechos, sino que los liberan (excepto el reconocimiento de la autoría). Como solución a esta ambigüedad, en lugar de software propietario cada vez se utiliza más el término software privativo.
En realidad el software libre es tan propietario como el software propietario
El término software libre (en inglés free software), también resulta ambigüo para los anglosajones, puesto que la palabra free en inglés tiene dos significados: gratis y libre. Pero el software libre no siempre tiene por qué ser gratis, por lo que hay gente que prefiere utilizar el término código abierto u open source.
Código abierto
El software de código fuente abierto o simplemente código abierto (en inglés open source), es muy similar al software libre. La Open Source Initiative (OSI), encabezada por Eric Raymond, definió este tipo de software para desmarcarse del fuerte enfoque ético del software libre y acercarse más al mundo empresarial (más pragmático y orientado al beneficio cuantificable).
Lo que ocurre es que en la pŕactica, las libertades definidas por unos y otros son muy similares y en ámbitos no puristas incluso se utilizan como sinónimos.
La mayoría de las licencias utilizadas en los programas de software libre, en realidad también pueden clasificarse como licencias open source, y viceversa. En cualquier caso, las libertades que ofrecen ambos tipos de software están a años luz del software propietario o privativo.
La mayoría de las licencias utilizadas en los programas de software libre, en realidad también pueden clasificarse como licencias open source, y viceversa
El término código abierto u open source también resulta problemático puesto que puede dar a entender que el código fuente del programa está abierto, es decir, visible, pero nada más. Si eso fuese así (como de hecho ocurre con algún que otro programa), seguiría siendo software propietario, puesto que no garantizaría la libertad de ser copiado, adaptado, mejorado y distribuido (sólo permitiría la libertad de ser estudiado). Sea por unos motivos o por otros, lo cierto es que el término software libre es el más extendido y utilizado (tanto en inglés como en los otros idiomas).
FLOSS o FOSS
Como se puede observar, existen dos ramas bien diferenciadas en las alternativas al software propietario. Por una lado está la rama que se desmarca del software propietario por motivos éticos (las libertades que proporciona el software libre son la clave) y por otro lado está la rama que lo hace por motivos pragmáticos (la clave es que el open source es más seguro y de mayor calidad).
Para aunar ambas sensibilidades en un mismo concepto, se comenzó a utilizar los términos Free and Open-Source Software (FOSS) y Free/Libre/Open-Source Software (FLOSS). Lo que ocurre es que el primero lo utilizan los que tienen motivaciones pragmáticas y el segundo lo utilizan los que tienen motivaciones éticas, por lo que la dicotomía en los términos persiste.
Aparte de los tipos de software descritos en este artículo, existen otros tipos menores de software, algunos de lo cuales son realmente curiosos: Adware, Beerware, Careware, Crippleware, Donateware, Donationware, Freeware, Greenware, Nagware, Postcardware, Ransomware, Registerware, Shareware, Trialware/Demoware.
Software multilicencia
Para terminar esta clasificación de softwares, es preciso mencionar algunos programas que sus autores deciden licenciar de más de una forma al mismo tiempo.
El caso más conocido es el del servidor de bases de datos MySQL, en el que sus desarrolladores (hasta ahora la empresa MySQL AB, que precisamente acaba de ser comprada por Sun) sacan su producto con una licencia libre para que la comunidad lo use a su antojo, pero también sacan una versión propietaria dirigida a empresas que tiene algunas pequeñas mejoras de rendimiento e integración que la otra versión no tiene (y por la que algunos están dipuestos a pagar). Este es por cierto, uno de los posibles modelos de negocio que existen relacionados con el software libre.
Pingback: Rafa Larreina » Al final todos en desacuerdo con el Canon digital
Eskerrik asko por tus comentarios.
Me he permitido poner en mi página un enlace a este comentario tuyo para que todo el mundo tenga claro de que hablamos cuando se trata sobre los diferentes tipos de software.
Creo que tu post es muy claro y didáctico, y me ha parecido oportuno darlo a conocer porque sobre esto -como esta de moda- todo el mundo hablamos, y demasiadas veces con poco fundamento
Me alegro de que lo encuentres útil. Precisamente lo escribí con la intención de que resultara educativo.