1. EL SOFTWARE LIBRE
El software libre (en inglés free software, aunque esta denominación también se confunde a veces con "gratis" por la ambigüedad del
término "free" en el idioma inglés, por lo que también se usa "libre software" y "logical libre") es la denominación del software que respeta
la libertad de los usuarios sobre su producto adquirido y, por tanto, una vez obtenido puede ser usado, copiado, estudiado, modificado, y
redistribuido libremente. Según la Free Software Foundation, el software libre se refiere a la libertad de los usuarios para ejecutar, copiar,
distribuir, estudiar, modificar el software y distribuirlo modificado.
2. El software libre suele estar disponible gratuitamente, o al precio de costo de la distribución a través de otros medios; sin embargo no es
obligatorio que sea así, por lo tanto no hay que asociar software libre a "software gratuito" (denominado usualmente freeware), ya que,
conservando su carácter de libre, puede ser distribuido comercialmente ("software comercial"). Análogamente, el "software gratis" o "gratuito"
incluye en ocasiones el código fuente; no obstante, este tipo de software no es libre en el mismo sentido que el software libre, a menos que se
garanticen los derechos de modificación y redistribución de dichas versiones modificadas del programa.
Tampoco debe confundirse software libre con "software de dominio público". Éste último es aquel software que no requiere de licencia, pues sus
derechos de explotación son para toda la humanidad, porque pertenece a todos por igual. Cualquiera puede hacer uso de él, siempre con fines
legales y consignando su autoría original. Este software sería aquel cuyo autor lo dona a la humanidad o cuyos derechos de autor han expirado,
tras un plazo contado desde la muerte de este, habitualmente 70 años. Si un autor condiciona su uso bajo una licencia, por muy débil que sea, ya
no es del dominio público.
LIBERTADES DEL SOFTWARE LIBRE
1. LIBERTAD 0: la libertad de usar el programa, con cualquier propósito.
2. LIBERTAD 1: la libertad de estudiar cómo funciona el programa y modificarlo, adaptándolo a tus necesidades.
3. LIBERTAD 2: la libertad de distribuir copias del programa, con lo cual puedes ayudar a tu prójimo.
4. LIBERTAD 3: la libertad de mejorar el programa y hacer públicas esas mejoras a los demás, de modo que toda la comunidad se beneficie.
Las libertades 1 y 3 requieren acceso al código fuente porque estudiar y modificar software sin su código fuente es muy poco viable.
El término software no libre se emplea para referirse al software distribuido bajo una licencia de software más restrictiva que no garantiza estas
cuatro libertades. Las leyes de la propiedad intelectual reservan la mayoría de los derechos de modificación, duplicación y redistribución para el
dueño del copyright; el software dispuesto bajo una licencia de software libre rescinde específicamente la mayoría de estos derechos reservados.
La definición de software libre no contempla el asunto del precio; un eslogan frecuentemente usado es "libre como en libertad, no como en
cerveza gratis" o en inglés "Free as in freedom, not as in free beer" (aludiendo a la ambigüedad del término inglés "free"), y es habitual ver a la
venta CD de software libre como distribuciones Linux. Sin embargo, en esta situación, el comprador del CD tiene el derecho de copiarlo y
redistribuirlo. El software gratis puede incluir restricciones que no se adaptan a la definición de software libre —por ejemplo, puede no incluir el
código fuente, puede prohibir explícitamente a los distribuidores recibir una compensación a cambio, etc.
3. El software de Aplicación
Es aquel que hace que el computador coopere con el usuario en la realización de tareas típicamente humanas, tales
como gestionar una contabilidad o escribir un texto.
La diferencia entre los programas de aplicación y los de sistema estriba en que los de sistema suponen ayuda al usuario
para relacionarse con el computador y hacer un uso más cómo del mismo, mientras los de aplicación son programas que
cooperan con el usuario para la realización de las actividades mencionadas.
Algunos ejemplos de software aplicaciones son:
> Procesadores de texto. (Bloc de Notas)
> Editores. (PhotoShop para el Diseño Gráfico)
> Hojas de Cálculo. (MS Excel)
> Sistemas gestores de bases de datos. (MySQL)
> Programas de comunicaciones. (MSN Messenger)
> Paquetes integrados. (Ofimática: Word, Excel, PowerPoint…)
> Programas de diseño asistido por computador. (AutoCAD)
4. El software en la educación
La libertad del software asume un rol de especial importancia en el ámbito educativo. Las instituciones educativas de
todos los niveles deben utilizar y enseñar exclusivamente software libre porque es el único que les permite cumplir con
sus misiones fundamentales: difundir el conocimiento y enseñar a los estudiantes a ser buenos miembros de su
comunidad. El código fuente y los métodos del software libre son parte del conocimiento humano. Al contrario, el software
privativo es conocimiento secreto y restringido y, por lo tanto, se opone a la misión de las instituciones educativas. El
software libre favorece la enseñanza, mientras el software privativo la prohíbe.
El software libre no es simplemente un asunto técnico, es un asunto ético,social y político. Es una cuestión de derechos
humanos que los usuarios de software deberían tener. La libertad y la cooperación son valores esenciales del software
libre. El sistema GNU pone en práctica estos valores y el principio del compartir, pues compartir es bueno y útil para el
progreso de la humanidad.
5. LENGUAJE DE PROGRAMACION
Los lenguajes de programación son herramientas que nos permiten crear programas y software. Entre ellos tenemos
Delphi, Visual Basic, Pascal, Java, etc… Una computadora funciona bajo control de un programa el cual debe estar
almacenado en la unidad de memoria; tales como el disco duro; Los lenguajes de programación de una computadora en
particular se conocen como código de máquinas o lenguaje de máquinas. Estos lenguajes codificados en una
computadora específica no podrán ser ejecutados en otra computadora diferente.
Para que estos programas funcionen para diferentes computadoras hay que realizar una versión para cada una de ellas,
lo que implica el aumento del costo de desarrollo. Por otra parte, los lenguajes de programación en código de máquina
son verdaderamente difíciles de entender para una persona, ya que están compuestos de códigos numéricos sin sentido
nemotécnico. Los lenguajes de programación facilitan la tarea de programación, ya que disponen de formas adecuadas
que permiten ser leidas y escritas por personas, a su vez resultan independientes del modelo de computador a utilizar.
Los lenguajes de programación representan en forma simbólica y en manera de un texto los códigos que podrán ser
leidos por una persona. Los lenguajes de programación son independientes de las computadoras a utilizar.