TheDarkMode

Tips y educación sobre tecnología

En un artículo anterior he explicado lo que es Kiwix, y cómo iniciar el servidor utilizando la herramienta de terminal kiwix-serve. Sin embargo, en esta ocasión, vamos a ver cómo crear un servidor que corre automáticamente y de fondo, tan pronto como se inicie el sistema.

Instalación:

Para ello vamos a necesitar instalar kiwix-tools. Si tu distribución GNU/Linux está basada en Debian, puedes instalarla con el comando:

sudo apt install kiwix-tools

Una vez lo hayas instalado, vamos a crear un archivo de configuración para poder ejecutar kiwix-serve como un servicio:

Configuración del servicio:

sudo nano /etc/systemd/system/kiwix-serve.service

Luego tendrás que colocar la siguiente configuración en el archivo de texto:

[Unit]
Description=Kiwix
		
[Service]
Type=simple
User=USUARIO 
ExecStart=/usr/bin/kiwix-serve --library /etc/kiwix/library.xml --port 8080 --daemon
Restart=always
RemainAfterExit=yes
		
[Install]
WantedBy=multi-user.target

Donde dice USUARIO escribe el nombre de usuario que utilizas en tu computadora.

Guarda el documento de texto después de copiar la configuración.

Ahora vamos a crear un directorio para guardar el archivo xml de la librería de Kiwix:

sudo mkdir /etc/kiwix

Después de realizar todo esto, vamos a crear un directorio en la carpeta Home de tu usuario llamada Kiwix. Puedes realizar esto utilizando el gestor de archivos gráfico. En la carpeta Kiwix puedes colocar los archivos Zim que hayan sido previamente descargados.

Añadir Contenidos:

Ahora podemos añadir los archivos Zim a la librería utilizando el comando kiwix-manage. Este tiene 3 funciones:

  1. Kiwix-manage /dirección/de/la/librería add dirección/del/archivo/zim. Este comando va a añadir un archivo Zim a la librería.
  2. Kiwix-manage /dirección/de/la/librería remove dirección/del/archivo/zim. Este comando va a eliminar un archivo Zim a la librería.
  3. Kiwix-manage /dirección/de/la/librería show dirección/del/archivo/zim. Mostrar el ZIM_ID de un archivo zim asignado a una librería existente.

Si tenemos un archivo llamado wikipedia.zim en la carpeta de Kiwix en Home, entonces podemos añadirlo utilizando el comando:

sudo kiwix-manage /etc/kiwix/library.xml add /home/USUARIO/Kiwix/wikipedia.zim

Presionamos la tecla ENTER. Automáticamente, va a añadir el archivo de librería en /etc/kiwix/ y va a añadir nuestro archivo Zim a la misma.

Ejecutar el Servicio:

Ahora, para iniciar el servidor vamos a ejecutar:

sudo systemctl enable kiwix-serve.service
sudo systemctl start kiwix-serve.service

Si queremos asegurarnos de que esté corriendo correctamente podemos escribir: sudo systemctl status kiwix-serve.service y el servicio está corriendo correctamente, el resultado debería ser parecido a esto:

● kiwix-serve.service - Kiwix
     Loaded: loaded (/etc/systemd/system/kiwix-serve.service; enabled; preset: >
     Active: active (exited) since Fri 2023-01-13 14:57:05 -04; 1 day 5h ago
    Process: 367 ExecStart=/usr/bin/kiwix-serve --library /etc/kiwix/library.xm>
   Main PID: 367 (code=exited, status=0/SUCCESS)
      Tasks: 5 (limit: 4151)
        CPU: 934ms
     CGroup: /system.slice/kiwix-serve.service
             └─422 /usr/bin/kiwix-serve --library /etc/kiwix/library.xml --por

Es recomendable posteriormente ejecutar sudo systemctl daemon-reload para poder reiniciar los servicios y que se ejecute correctamente, o directamente reiniciar la computadora.

Para poder acceder a la librería, podemos irnos al navegador disponible en nuestro servidor y escribir en la barra de URL's: localhost:8080 entonces debería enviarnos a la página principal de nuestra librería de Kiwix.

Obtener IP del Servidor:

Para poder acceder a la librería desde otro dispositivo conectado a la misma red que nuestro servidor, primero necesitamos conseguir la dirección IP del mismo. Podemos hacerlo fácilmente con el comando: ip a | grep inet

El resultado debería ser similar a esto:

inet 127.0.0.1/8 scope host lo
inet6 ::1/128 scope host 
inet 192.168.1.8/24 brd 192.168.1.255 scope global dynamic noprefixroute wlan0
inet6 fe80::d403:8a0a:93f6:e6d/64 scope link noprefixroute 

En la tercera línea dice que mi dirección IP local es 192.168.1.8 entonces desde otro dispositivo puedo colocar en el navegador web la dirección 192.168.1.8:8080 para acceder a toda mi librería local de Kiwix.

Conclusiones:

Y de esta forma ya hemos creado un servidor local de Kiwix. Este se va a ejecutar al momento de encender la computadora, sin necesidad de que volvamos a interactuar con el programa o la computadora misma, salvo cuando queramos actualizar o añadir los contenidos disponibles.

Esto puede ser útil para implementarse en computadoras de bajos recursos, y ninguno de los pasos necesarios para el proceso de configuración del servidor dependen de una interfaz gráfica.

Agradezco mucho a la comunidad de Kiwix por ayudarme a buscar la forma más eficiente y conveniente para crear el servidor, y ahora les traigo el proceso detallado en idioma español.

Licencia: CC BY 4.0

Kiwix es un proyecto de software libre, el cual permite a través de la aplicación de su lector descargar, visualizar y buscar contenido disponible no solo en Wikipedia, sino también contenidos de otros proyectos de Wikimedia. Esto permite que toda la información contenida pueda accederse sin conexión a internet, gracias a que está alojado en el disco local de la computadora, la memoria de un dispositivo móvil, o en un servidor en red local.

Esto puede ser una ventaja para estudiantes, docentes, investigadores de distintas áreas que vivan o trabajen en áreas remotas donde hay poca o nula conectividad a internet. También puede aplicarse en escuelas ubicadas en sitios remotos o centros de comunicación comunitarios.

Kiwix funciona instalando la aplicación del lector, y posteriormente descargando los contenidos, identificados como archivos .zim. Dichos contenidos pueden descargarse de forma directa desde el lector, o mediante el navegador, pero es recomendable descargar los más pesados (Como por ejemplo, el de la Wikipedia completa) utilizando qBittorrent, debido a que Torrent permite pausar y continuar las descargas en cualquier momento sin perder progreso.

A continuación, vamos a ver cómo instalarlo en Canaima GNU/Linux (Este método funciona en Debian y otras distros basadas en Debian).

Instalación:

  • Tan pronto inicie su sistema operativo Canaima, inicie el emulador de terminal. Puede localizar la terminal en el primer icono a la izquierda en la barra inferior (configuración por defecto en Canaima). También puede abrir la terminal desde el menú de aplicaciones, o presionando la combinación de teclas CTRL + ALT + T.

  • Cuando inicie la terminal, asegurándose de estar conectado a internet, actualice los repositorios con el siguiente comando^[El comando debe redactarse exactamente como está escrito, respetando las minúsculas. También puede copiar y pegar los comandos este este artículo y la terminal]: sudo apt update

sudo le permite ejecutar acciones como Super Usuario, siendo necesario para instalar nuevos programas y aplicaciones. apt es el gestor de paquetes disponible en Debian y distros derivadas como Ubuntu, Canaima, PureOS, Devuan, así como derivados de Ubuntu como Linux Mint, Pop!OS, Trisquel, entre otras. update es el comando de apt para actualizar repositorios.

El sistema va a requerir que introduzca su contraseña de usuario. Espere a que la terminal termine todas sus operaciones antes de continuar.

Alternativamente, puede aprovechar de instalar actualizaciones pendientes en su sistema con el siguiente comando:

sudo apt upgrade

Tenga en cuenta que instalar todas las actualizaciones puede tomar un tiempo, dependiendo de su conexión a internet y la cantidad de software instalado en su sistema.

  • Cuando los repositorios hayan sido actualizados, vamos a proceder a instalar Kiwix mediante el siguiente comando:
sudo apt install kiwix

install es el comando de apt para instalar software, seguido del nombre exacto del paquete que desee instalar, en este caso kiwix. Presione la tecla Enter. Acto seguido solicitará ingresar la contraseña de su usuario en la computadora. Una vez introducida la contraseña, le pedirá confirmación de la instalación. Si su sistema está en idioma español, presione la tecla s y luego Enter, si su sistema está configurado en inglés, utilice la tecla y en su lugar.

Ahora solo queda esperar a que finalice la descarga e instalación y tendrá todo listo.

  • Alternativamente, para poder utilizar Kiwix como servidor, es necesario instalar:
sudo apt install kiwix-tools

Windows:

La versión del lector para Windows puede descargarse desde su Sitio Web oficial.

Aplicaciones Móviles:

El lector de Kiwix también puede instalarse en dispositivos móviles, y puede descargarse desde la Google Play Store, F-Droid, y la iOS App Store.

Ejecutar:

Una vez instalado el lector, este aparecerá en el menú de aplicaciones del sistema, permitiendo ejecutarlo fácilmente.

Iniciar el servidor:

Para iniciar el servidor de Kiwix, es necesario abrir la terminal. El comando para iniciar el servidor es:

kiwix-serve

Sin embargo, son necesarios unos comandos adicionales para asignar un puerto en red y cargar los archivos .zim previamente descargados. Para asignar un puerto vamos a escribir:

kiwix-serve --port=8080

A partir de aquí, ya se podrá acceder al servidor de Kiwix desde otro dispositivo conectado a la misma red a través del navegador. Pero aún no tiene contenido. Para añadir los archivos .zim solo debemos escribirlos después de especificar el puerto.

Por ejemplo, en el caso de que tengamos el archivo de Wikipedia, el comando completo sería:

kiwix-serve --port=8080 wikipedia.zim

Pueden añadirse múltiples archivos .zim a la vez. En caso de que se encuentren en una carpeta distinta, solo hay que especificar la ruta de la carpeta. Por ejemplo, suponiendo que se encuentren en una carpeta llamada zims:

kiwix-serve --port=8080 zims/wikipedia.zim

Iniciar el servidor de forma más fácil.

Para iniciar el servidor sin tener que escribir todo el tiempo el mismo comando, podemos hacer lo siguiente.

Abra un editor de texto, como puede ser VIM en la terminal, o algún editor gráfico como _Pluma, Mousepad, entre otros, y vamos a escribir el siguiente texto^[Aquí vamos a utilizar el último ejemplo, puede cambiar dependiendo de la cantidad de archivos zim que cargues, y la carpeta donde los guardes].

#!/bin/bash

kiwix-serve --port=8080 zims/wikipedia.zim

Luego lo vamos a guardar con el nombre: kiwix.sh.

Posteriormente, vamos a abrir una terminal, y vamos a ejecutar el comando chmod +x kiwix.sh, esto hará el archivo .sh ejecutable. Ahora es posible iniciar el servidor junto con la configuración simplemente escribiendo ./kiwix.sh.

Todo esto podemos realizarlo de forma más sencilla en un único comando, el cual sería el siguiente:

echo "kiwix-serve --port=8080 zims/wikipedia.zim" > kiwix.sh && chmod +x kiwix.sh

Por último, si queremos correrlo en un comando simple, poder hacerlo mediante el siguiente comando en Canaima:

echo "alias kiwix='./kiwix.sh'" >> .zshrc

De esta forma, solo necesitamos escribir kiwix en la terminal, para poder ejecutarlo todo. Lo que hace es añadir un alias al final del archivo .zshrc. Si utilizar otra distribución GNU/Linux, tienes que confirmar si el shell que utiliza es Bash o ZSH. Puedes confirmarlo en la terminal escribiendo: echo $SHELL. Si entre el resultado te dice /bin/bash entonces utiliza:

echo "alias kiwix='./kiwix.sh'" >> .bashrc

Puedes ver todo esto en práctica en un videotutorial en Youtube que he realizado.

También tengo un vídeo acerca de cómo instalar y utilizar la aplicación para android de Kiwix.

Licencia: CC BY 4.0

La forma tradicional para vender software, consistía en crear instaladores en medios portables como Disquetes, CD's o DVD's, distribuirlo a tiendas físicas de software, donde el comprador podría adquirirlo por un precio fijo de compra.

Con la llegada del internet, gradualmente dejó de ser necesario distribuir físicamente a tiendas, porque ahora era mucho más fácil y cómodo pagar directamente al desarrollador desde su página web oficial, a través de una transferencia bancaria o usando un procesador de pagos (como por ejemplo Paypal), y a cambio, quien quiera usarlo podrá tanto descargar el instalador virtual, como activar el producto con un código de licencia único.

Pero hoy en día existe otro modo de monetización, conocido como “Software como Servicio'' (Software As A Service) o “SAAS''. Este modelo de negocios consiste en pagar una cantidad fija de dinero mensual, trimestral, semestral, o anual, a cambio de poder utilizar las aplicaciones o servicios. De esta forma, la compañía y los desarrolladores tienen un ingreso económico constante de sus usuarios.

Alternativamente, también se considera SAAS a un software que tenga un precio fijo de entrada, pero que se actualice constantemente con nuevas características o contenido de pago. Por lo general, estos servicios ofrecen un periodo de prueba, o acceso a unas características limitadas de forma gratuita para que el usuario pueda evaluar si merece la pena comenzar a pagar.

Ejemplos de SAAS:

  1. Office 365: Microsoft en el año 2017 cambió el modelo de negocios de MS Office para convertirlo en un SAAS. La suscripción incluye aplicaciones como Word, Excel y Powerpoint, incorporando almacenamiento en la nube, y aplicaciones para dispositivos móviles. Todavía es posible pagar una licencia para la suite de ofimática, pero esta modalidad no se publicita por parte de la empresa.
  2. Aplicaciones de Diseño: En el año 2013, la compañía Adobe puso todas las aplicaciones bajo su dominio (Photoshop, Illustrator, Premiere, After Effects, Audition, etc) bajo una suscripción mensual llamada Adobe Creative Cloud, eliminando completamente la posibilidad de adquirir licencias por aplicaciones individuales. Otras empresas competidoras como Corel y Avid siguen este mismo modelo.
  3. Servicios en la Nube: Servicios de almacenamiento en la nube tales como Dropbox, Google Drive, iCloud, OneDrive, entre otros, cuentan con precios mensuales correspondientes a la cantidad de espacio contratado. El usuario debe seguir pagando el servicio para acceder a sus archivos.
  4. Servicios de Streaming: Sitios como Netflix, Disney+, Paramount+, HBOMAX, Amazon Prime Video, Apple TV+ y otros ofrecen un catálogo de series y películas originales y licenciadas. De igual forma hay servicios de streaming de música como Apple Music, Amazon Music, Spotify, Deezer, Tidal, etc.
  5. Hosting: Gran parte de los sitios web que existen en internet, corren no bajo servidores propios, sino en servidores rentados a otras empresas que cuentan con la infraestructura necesaria. Ejemplo de esto sería Amazon Web Services, Google Cloud Platform y CloudFlare. Su uso es tan extendido, que cuando alguna de estas plataformas experimenta dificultades técnicas, muchas páginas también se caen, haciendo pensar a muchas personas tienen problemas de conexión a internet.

Sistemas Operativos como servicio:

En algunos casos, el sistema operativo puede considerarse en sí mismo un servicio, o una plataforma para vender servicios. Este es el caso de Windows a partir de Windows 10. Si bien todavía es necesario comprar licencias de software para poder acceder a todas sus características, y ocultar la marca de agua de “Activa Windows”, la compañía ahora permite que se utilice el sistema sin mayores restricciones, esto lo hacen para reducir las barreras de entrada, e incentivar a utilizar el resto de servicios que ofrece Microsoft. Adicionalmente, muestra publicidad de aplicaciones y juegos disponibles desde la Tienda de Microsoft directamente en el Menú Inicio.

También Microsoft ofrece un servicio llamado “Windows 365” el cual ofrece utilizar el sistema operativo a través de la nube, a cambio de una suscripción mensual. Esto permite un acceso a la versión más reciente del sistema desde prácticamente cualquier computadora con acceso a internet. Este servicio está pensado para grandes empresas y complejos de oficinas, donde utilizar este servicio pueda ser más rentable que comprar nuevo Hardware apto para correr la versión más reciente de Windows.

En el caso de MacOS, el sistema operativo es gratuito para todas las personas que compren una computadora de Apple, ofreciendo de forma inmediata todos los servicios que ofrecen, como iCloud, Apple Music, Apple TV, así como las herramientas de integración con sus dispositivos móviles.

Ventajas del SAAS:

Algunas de las ventajas que puede traer el SAAS son:

  1. Precios de entrada accesibles: Al principio, puede ser más conveniente pagar una suscripción periódica, que pagar cientos de dólares por una licencia individual.
  2. Actualizaciones: Las aplicaciones incluidas dentro de una suscripción se actualizarán automáticamente, sin necesidad de comprar una licencia nueva para acceder a las versiones más recientes de las mismas.
  3. Catálogos: En el caso de los servicios de streaming, el acceso a los amplios catálogos de contenido se hace mucho más conveniente y mucho más económico, que pagar por cada canción y álbum, película o serie individualmente.
  4. Integración: Las suscripciones suelen tener buenas integraciones con las aplicaciones y servicios de las empresas desarrolladoras, como por ejemplo, Adobe incorpora el acceso a Adobe Fonts y Adobe Stock en sus principales aplicaciones.
  5. Flexibilidad: Las aplicaciones dentro de un servicio de suscripción generalmente pueden ser instaladas libremente en múltiples dispositivos sin restricciones, o incluir a múltiples miembros de un equipo dentro de un mismo plan empresarial o personalizado, lo cual lo hace eficiente y flexible.

Desventajas del SAAS:

  1. No tienes verdadera posesión del software: En el SAAS no compras el software que utilizas, sino que la empresa te da el acceso a él, y puede revocarte ese acceso en el momento dejes de pagar, o sencillamente decidan expulsarte o limitarte, llevándose así toda tu información, proyectos, archivos y documentos.
  2. Es caro en el largo plazo: Las suscripciones a lo largo del tiempo van sumando una cantidad de dinero mucho mayor, a comparación de pagar una sola vez por una licencia.
  3. Arbitrariedad: El usuario en cualquier momento puede estar sujeto a decisiones arbitrarias que la compañía puede tomar en cualquier momento, como aumentar el precio de la suscripción, remover beneficios, o impedirte regresar a una versión anterior de una aplicación. De igual forma, puede ocurrir que cobren comisiones por cancelación muy altas al intentar cancelar el servicio.
  4. Privacidad y seguridad: En un software como servicio, se está confiando toda la información personal en una compañía o en servicios de terceros, exponiendo su información a ser accedida y vista por los administradores de estos servicios. En algunos casos, sus datos pueden venderse a “Data Brokers” y ser utilizada por agencias publicitarias para mostrarle anuncios personalizados a través de sus redes. También puede ser accedida por agentes gubernamentales en programas de vigilancia masiva, o como parte de investigaciones contra su persona. Para evitar esto, es recomendable encriptar sus archivos e información, utilizar servicios que ofrezcan encriptación “de punta a punta”, o crear usted su propio servicio, a través de soluciones auto gestionables como “Nextcloud”.

La principal desventaja a largo plazo del SAAS, es que desincentiva la innovación, la autonomía digital, y el aprendizaje. Algunos servicios se aprovechan del desconocimiento técnico de las personas comunes, ofreciendo soluciones mucho más sencillas, pero que con el tiempo les hacen dependientes, debido a que el SAAS da paso a una mentalidad y metodología de trabajo que se puede resumir como “Le pagaremos a alguien para que lo resuelva por nosotros”.

Crear sistemas y servicios propios requiere de aprendizaje, tiempo y esfuerzo, comparado con simplemente pagar por un servicio existente, o descargar aplicaciones que funcionan con unos pocos clicks. Por ejemplo, crear un servicio autogestionado para ver una colección personal de películas requeriría: Tener todas las películas en formato físico, digitalizarlas, almacenarlas en un disco duro, crear un servidor web, instalar Kodi o Plex en el servidor, configurarlo todo, y finalmente sentarse a ver las películas. A comparación, pagar por una suscripción de Netflix suena mucho más conveniente.

Pero la ventaja de tener un servicio autogestionado es que la persona quien lo usa está verdaderamente en control, por el contrario, en el ejemplo de Netflix, no es posible ver la trilogía de “El Padrino”, estas películas anteriormente estaban disponibles en el catálogo, pero cuando Paramount creó su propio servicio competidor, las retiró de Netflix.

En el caso de empresas que contraten SAAS para sus funciones esenciales, se exponen a que sus operaciones, o la información de sus consumidores, se pierda inesperadamente por problemas técnicos, o por decisiones arbitrarias de terceros. También es posible que requieran de soporte técnico, el cual pueda tardar horas o días en dar una solución, por no tener un empleado capacitado disponible para dar dichas soluciones.

Licencia: CC BY 4.0

Las suites de Ofimática son aplicaciones de productividad especializadas en la creación de documentos para su uso en oficinas. Una Suite de Ofimática suele incluir como requerimientos básicos:

  • Procesador de Textos: Para la redacción y edición de cartas, memorándum, libros, ensayos, tesis, o cualquier otro tipo de documento de texto.
  • Hojas de Cálculo: Para la creación y edición de tablas de valores separados por comas.
  • Diapositivas: Para crear y editar presentaciones de imágenes, textos y gráficos, también integran un visor para dichas presentaciones.

Existen múltiples suites de ofimática, como por ejemplo:

  • Microsoft 365: Es una suite propietaria desarrollada por Microsoft. Es la más conocida en este ámbito, pues se integra con el sistema operativo MS Windows y se ha convertido en estándar en la industria. Actualmente, está disponible bajo un modelo de “Software como servicio” con suscripciones mensuales. Recientemente, ha sido renombrada a simplemente “Microsoft 365”, eliminando la palabra “Office” considerando que ahora muchas personas utilizan la suite en dispositivos móviles y trabajan a distancia desde sus hogares. Ahora estos servicios se les conoce como símplemente “Microsoft 365”
  • LibreOffice: Es una suite libre, gratuita y de código abierto, creada por los desarrolladores originales de “OpenOffice” (la cual abandonaron cuando el software fue comprado por la empresa Oracle). Es una de las principales alternativas a MS Office, cumpliendo con la mayoría de tareas básicas que el usuario promedio realiza en una suite de ofimática.
  • OnlyOffice: Es una suite gratuita y de código abierto, con una interfaz muy similar a la de MS Office, mejor compatibilidad con formatos de esta última, y tiene la posibilidad de ser utilizada en la nube, ya sea con su propio servicio, o con métodos autogestionados por el usuario, como por ejemplo Nextcloud.
  • WPS: Es una suite propietaria originaria de China disponible tanto para sistemas operativos de escritorio, como para dispositivos móviles.
  • iWork: Es una suite propietaria, desarrollada por Apple, disponible exclusivamente en MacOS, iOS, y iPadOS. Viene integrada con el servicio en la nube de Apple “iCloud”.

Licencia: CC BY 4.0

Son aquellas aplicaciones que nos permiten navegar por internet, abrir los sitios web que deseamos, revisar redes sociales, ver vídeos, realizar compras, y otra infinidad de tareas.

Actualmente, los navegadores web son, quizás, la aplicación más importante para el usuario promedio, y al día de hoy pueden considerarse “MacroApps” o “MegaApps”, debido a que sus funcionalidades pueden extenderse infinitamente gracias a extensiones y modificaciones, combinado con el enfoque de muchos desarrolladores a que sus servicios puedan utilizarse desde una página web.

Tanto así, que Google ha creado “ChromeOS” un sistema operativo completo que única y exclusivamente ejecuta el navegador “Chrome”.

De igual forma, existe un framework de programación llamado “Electron” el cual utiliza como base a Chromium para que los desarrolladores puedan crear sus aplicaciones en lo que, en esencia, es una pestaña de navegador. Algunas aplicaciones creadas en Electron son: Discord, Joplin, Slack, WhatsApp Desktop, Microsoft Visual Studio, todoist, Ferdi, Notion, Element, entre muchas otras.

Algunos de los navegadores web más utilizados son:

  • Chrome: Este es un navegador desarrollado por Google, y pensado para utilizarse junto con el resto de sus servicios.
  • Chromium: Es la base bajo la cual se desarrolla Chrome, pero a diferencia de este, Chromium es de código abierto (No es totalmente Software Libre), lo cual permite que otros desarrolladores y empresas puedan utilizar la tecnología base para sus propios proyectos.
  • Firefox: Es un navegador desarrollado por la Fundación Mozilla, junto con un colectivo de programadores voluntarios a nivel global, publicado bajo licencias libres. Se enfoca mucho en la privacidad de sus usuarios y la personalización.
  • Safari: Desarrollado por Apple Inc, pensado para ser utilizado exclusivamente en dispositivos de Apple (Antiguamente existía una versión para Windows, pero ahora está discontinuada y no se sigue desarrollando). Es un navegador de código cerrado y licencia privativa, por lo que no existen variantes.

Sin embargo, existen muchos otros navegadores basados tanto en las tecnologías Chromium y Firefox, algunos siendo forks directos, mientras que otros añaden una gran cantidad de funciones adicionales.

  • Opera: Actualmente, propiedad de diversos conglomerados empresariales chinos, es un navegador que ofrece una gran cantidad de opciones de personalización, tanto funcional como estéticos, ofreciendo una barra lateral de acceso a numerosas aplicaciones de chat como Whatsapp, Telegram o Discord. También existe una variante llamada “Opera GX” Pensada en usuarios aficionados a los videojuegos.
  • Vivaldi: Desarrollado por algunos de los creadores de Opera, tiene un enfoque similar en cuanto a la personalización, pero añadiendo una enorme cantidad de servicios asociados, y una mayor cantidad de opciones de personalización.
  • Edge: Es el sucesor de “Internet Explorer” (Actualmente discontinuado, abandonado, y sin ningún tipo de soporte), y del navegador Edge Legacy, desarrollado por Microsoft, siendo actualmente, el navegador por defecto preinstalado en Windows 10 y Windows 11.
  • Brave: Fundado por un ex ejecutivo de la Fundación Mozilla, Brave es un navegador centrado en la protección de los datos personales de sus usuarios, ofreciendo un efectivo bloqueador de anuncios y de rastreadores. Su principal característica es la integración con un cripto token propio llamado “BAT”, el cual se da a todos los usuarios como recompensa al abrir anuncios especialmente seleccionados por Brave, que respetan la privacidad del usuario, y puede intercambiarse con otras cripto monedas, tokens, o dinero fiat a través de plataformas como Uphold o Gemini. Cabe aclarar, el promedio de ganancias es de 2 dólares americanos al mes, utilizándolo todos los días y abriendo anuncios múltiples veces al día.
  • QuteBrowser: Es un navegador para un nicho muy concreto, está pensado para poder utilizarse y navegar por la web utilizando únicamente el teclado, a través de atajos y combinaciones de teclas, siguiendo un esquema similar al del editor de textos Vi.
  • LibreWolf: Es un fork muy enfocado en la privacidad en internet del usuario, implementando bloqueador de anuncios y rastreadores.
  • Waterfox: Un fork que comparte la misma filosofía que LibreWolf, e incluye similares configuraciones.
  • Palemoon: Está pensado para ser lo más ligero posible, apto para correr en computadoras de muy bajos recursos.
  • IceCat: Comparte los mismos principios y filosofía que LibreWolf, pero trae configuraciones por defecto para eliminar componentes privativos y no libres de las páginas web que se visitan, como por ejemplo, elementos creados con JavaScript.
  • TorBrowser: Es un navegador desarrollado por The Tor Proyect, diseñado específicamente para tener completo anonimato en internet, y navegar en sitios web “.onion”, o como es popularmente conocido, “Navegar por la DeepWeb”. Este bloquea todo componente de la web que potencialmente pueda utilizarse para obtener la identidad de quien lo esté usando, y se conecta únicamente a la red Tor, la cual es una red completamente separada de la web “normal” y permite navegar de forma anónima. Generalmente, no existe ninguna razón para que un usuario común utilice Tor Browser o navegue en la “Deep Web”.

Internet Explorer:

Internet Explorer fue, antaño, el navegador web más utilizado en el mundo, debido a que se incluía de forma gratuita en Windows 95, y todas las versiones de Windows posteriores. Sin embargo, este navegador no pudo seguir adaptándose a medida que la web, y las tecnologías que apoyan a esta, quedándose siempre atrás, a comparación de otros navegadores nuevos y más populares, como Chrome y Firefox.

Con la llegada de Windows 10, Microsoft creó un nuevo navegador, llamado “Edge”. Desde ese momento, la compañía ha estado desincentivando a sus usuarios a abandonar Internet Explorer.

Con el tiempo, dejó de recibir actualizaciones de características y de seguridad. Finalmente, en el año 2019, ejecutivos de Microsoft declararon que “Internet Explorer es una solución de compatibilidad”¹. Refiriéndose que deje utilizarse para ejecutar código o sistemas web anticuados. No es recomendable, bajo ninguna circunstancia, seguir utilizando Internet Explorer, si no tiene una razón específica para ello.

Extensiones para navegador:

Las extensiones son complementos que dan funcionalidades adicionales al navegador. Estas se muestran en un icono en el navegador, al lado de la barra de dirección.

Algunas extensiones pueden añadir funciones sencillas, como bloquear anuncios, crear capturas de pantalla, o forzar modo oscuro en páginas que no lo posean, pero otras extensiones pueden tener muy extendidas, al punto de convertirse en aplicaciones completas.

Las extensiones se pueden encontrar en las respectivas tiendas de Firefox, Chrome, o Safari. Navegadores basados en Chrome como Opera tienen sus propias tiendas, pero las extensiones de Chrome funcionan de igual manera en estos.

Licencia: CC BY 4.0

Contenidos:

  1. ¿Qué son los lenguajes Markup?

  2. ¿Qué es Markdown?

  3. Razones para usar Markdown

  4. Editores de Markdown

  5. Escribiendo en Markdown

  6. Fuentes

Existen muchas formas de tomar notas en nuestros dispositivos electrónicos. Podemos tomar la vía más tradicional de abrir un procesador de textos, como MS Word y escribir, sin embargo, por eso mismo no se dan cuenta de la disposición de herramientas que les puede facilitar mucho el trabajo de crear anotaciones, documentos, clasificar información, o hacer materiales didácticos propios de formas sencillas y convenientes, es por eso que en esta guía, vamos a dar una introducción al lenguaje Markdown, y cómo puedes usarlo para tu beneficio.

¿Qué son los lenguajes Markup?

Son una serie de lenguajes con una sintaxis basada en etiquetas y símbolos, mediante los cuales dan formato, estructura y a los documentos y otros elementos adjuntos, sin interrumpir el proceso de escritura en sí. Son fácilmente legibles, escalables, flexibles y pueden editarse en cualquier aplicación que permita editar textos.

Los lenguajes Markup dominan internet, siendo el principal de estos HTML (Hypertext Markup Language), este es la base de sobre la cual se construyen el 94% de los sitios web existentes actualmente, muchas veces complementándose con CSS, un lenguaje de hojas de estilo que a menudo se combinan para mejorar su la apariencia del documento y crear estilos personalizados.

Existe una amplia variedad de lenguajes Markup, algunos se remotan tan atrás como finales de los 60's y principios de los 70's, como es el caso de SGML (Standard Generalized Markup Language), y hay quienes han desarrolado los suyos propios, como el caso de “Wikitext”, lenguaje utilizado en todos los artículos de Wikipedia; sin embargo, en la sección de “Herramientas para la educación digital” nos centraremos en Markdown por lo fácil y sencillo que es, y en un futuro, iniciaremos una guía de LaTex, el cual es un lenguaje de Markup mucho más complejo, pero ofrece muchas más posibilidades a nivel profesional y académico.

¿Qué es Markdown?

Es un lenguaje de Markup ligero creado por John Gruber and Aaron Swartz en el año 2004. Está diseñado para ser fácilmente legible por seres humanos, con unos símbolos muy sencillos, los cuales permiten dar formato sin interrumpir el proceso de escritura.

Se puede pensar en Markdown como una radical simplificación de HTML, siendo a su vez fácilmente convertible y compatible con este, también tiene características en común con otros lenguajes como AsciiDoc y Wikitext.

Razones para usar Markdown:

  • Flexibilidad: Markdown puede utilizarse para múltiples propósitos: construir sitios web, hacer anotaciones, redactar documentos, correos electrónicos, libros y documentación técnica, incluso crear diapositivas de forma sencilla.

  • Universalidad: Los archivos de Markdown pueden abrirse en cualquier editor de texto, en cualquier sistema operativo. Si bien hay aplicaciones especializadas, existe una amplia variedad, y si una aplicación no te gusta, puedes mover tus archivos a otra distinta libremente, a diferencia de los formatos de documentos propietarios, como los de MS Word o Apple Pages.

  • Durabilidad: Debido a que los archivos de Markdown son libres y pueden abrirse en una amplia variedad de aplicaciones, es duradero en el tiempo, sin importar si la aplicación donde se creó originalmente ya no existe o ya no recibe actualizaciones. Esto lo hace muy útil en entornos académicos, donde los documentos debes ser capaces de conservarse durante muchos años..

  • Uso Web: Una gran cantidad de sitios web y aplicaciones soportan el formato Markdown, como por ejemplo Reddit, Github, Gitlab, Telegram, Discord, Trello, Stack, Todoist, Notion. También puede usarse en Wordpress, Jerkyll, Ghost, SquareSpace, Hugo y Writefreely, y numerosas aplicaciones de toma de notas, las cuales veremos a continuación.

Editores de Markdown:

Existe una amplia variedad de editores especializados en Markdown. Estos no solo te facilitan la redacción, sino que también te permiten previsualizar, guardar, y exportar tus escritos. Aquí podemos ver una tabla con algunos editores recomendados:

Aplicación Plataformas Licencia Coste
Joplin Android, MacOS, Windows, GNU/Linux, iOS Libre Gratuita (Servicio de nube de pago opcional)
Quillnote Android Libre Gratuita
Ghostwriter GNU/Linux, Windows Libre Gratuita
MarkText GNU/Linux, Windows, MacOS Libre Gratuita
Stackedit Navegador Web Libre Gratuita (Características Premium)
Dillinger.io Navegador Web Libre Gratuita
Obsidian Windows, MacOS, GNU/Linux Privativa Gratuito

En los sitios web de cada uno de estos hay instrucciones para descargar e instalarlos. Si utilizas GNU/Linux puedes encontrarlos en los repositorios de tu distribución. No son los únicos editores que existen, existen decenas de editores de Markdown, pero estos son los que más recomiendo, sobretodo para principiantes.

Editores WYSIWYG:

La mayoría de procesadores de textos que conocemos, trabajan con lo que se conoce como WYSIWYG (What you see is what you get) que en inglés significa “Lo que ves es lo que obtienes” eso significa que da una visualización fiel de cómo se verá el documento final una vez sea exportado a un formato fácilmente legible. Sin embargo, la mayoría de editores de Markdown no trabajan de esa forma, sino que se dividen en 2 paneles: El panel de código, donde vez el formato crudo de lo que escribes, y el panel de previsualización, donde puedes apreciar el resultado final. La razón es que la aplicación debe renderizar el documento en tiempo real mientras vas escribiendo.

Interfaz de Joplin con ambos paneles

De los editores presentados en la tabla de arriba, el único que se clasifica como un WYSIWYG es Marktext, el cual te muestra en tiempo real cómo se verá el resultado final, manteniendo el minimalismo y la sencillez. Joplin y Obsidian también tienen un modo WYSIWYG, aunque este debe ser activado manualmente por el usuario.

Escribiendo en Markdown:

Ahora que has escogido e instalado un editor (o si decidiste practicar en texto plano), vamos a ver los comandos básicos:

Títulos:

Para insertar un título, simplemente necesitas poner un # antes del mismo. Automáticamente ajustará al formato.

# Título 1:

Subtítulos:

Para los subtítulos sólo necesitas añadir 2 o más # según la jerarquía del título. Por ejemplo:

## Subtítulo 1:
### Subtítulo 2:
#### Subtítulo 3:
##### Subtítulo 4:
###### Subtítulo 5:

Esto te ayudará a mantener una jerarquía y orden temático mientras escribes.

Formatos de texto:

En Markdown puedes crear un texto en negrita simplemente añadiendo ** justo antes y después de la palabra que quieras resaltar.

Este **texto** debe estar en **negrita**.

Y el resultado final se verá como:

“Este texto debe estar en negrita.”

De igual forma puedes hacer un texto en cursiva escribiendo * o alternativamente puedes usar un _ antes y después de la palabra o el texto.

Este *texto* debe estar en _cursiva_.

“Este texto debe estar en cursiva.”

Para tachar un texto, debes colocar doble ~ antes y después del mismo.

~~Este texto debe estar tachado~~

Este texto debe estar tachado

Para colocar una línea por debajo, debes usar una expresión propia de HTML la cual es <u> </u>.

<u>Este texto debe tener una línea por debajo</u>.

Este texto debe tener una línea por debajo.”

Listas:

Existen 2 tipos de listas que puedes hacer: Numeradas y no numeradas.

Listas numeradas:

Simplemente añade un número 1 seguido de un punto y comienza a escribir los contenidos. Tan pronto presiones la tecla ENTER se añadirá la siguiente.

1. Elemento 1
2. Elemento 2
3. Elemento 3

El resultado final es el siguiente:

  1. Elemento 1
  2. Elemento 2
  3. Elemento 3

Listas no numeradas:

Puedes crearlas escribiendo un - o alternativamente un * al principio de una nueva línea, y cuando escribas los contenidos y presiones ENTER, se añadirá la siguiente automáticamente.

- Elemento no numerado.
- Otro elemento no numerado.
- Otro elemento no numerado más.

El resultado final es el siguiente:

  • Elemento no numerado.
  • Otro elemento no numerado.
  • Otro elemento no numerado más.

Separadores:

Para añadir un separador en la página, debes utilizar ___, o alternativamente ***. El resultado final se ve así:


Estos separadores son esenciales a la hora de crear diapositivas, pues marcan la separación entre una lámina y la siguiente.

En el futuro cercano, realizaremos una guía para crear diapositivas en MD.

Tablas:

Las tablas son muy sencillas de crear y expandir en MD. Es esencial el uso de | pues marca la separación entre las celdas. Cuando creas una tabla en MD, puedes convertirla fácilmente a un formato CSV, permitiendo ser importado fácilmente en editores de hojas de cálculo como MS Excel.

Para crear una tabla, primero necesitas un encabezado:

|Columna 1|Columna 2|Columna 2|

Luego necesitamos un separador debajo del encabezado:

|Columna 1|Columna 2|Columna 2|
|---------|---------|---------|

Los - que sirven como separación no necesitan ser de la longitud exacta del encabezado, pero ayudan a mantener un orden visual mientras escribes.

Luego, puedes seguir construyendo las filas hacia abajo añadiendo elementos a tu tabla.

|Columna 1|Columna 2|Columna 2|
|---------|---------|---------|
|Elemento 1|Contenido 1|Datos 1|
|Elemento 2|Contenido 2|Datos 2|
|Elemento 3|Contenido 3|Datos 3|

El resultado final debería verse así:

Columna 1 Columna 2 Columna 2
Elemento 1 Contenido 1 Datos 1
Elemento 2 Contenido 2 Datos 2
Elemento 3 Contenido 3 Datos 3

También puedes añadir : entre los separadores para establecer la alineación del texto.

|Columna 1|Columna 2|Columna 2|
|:---------|:---------:|---------:|
|Izquierda|Centro|Derecha|

El resultado final se ve así:

Columna 1 Columna 2 Columna 2
Izquierda Centro Derecha

Enlaces:

Los enlaces se pueden insertar simplemente pegándolos en el texto, pero, si quieres escribir un texto que contenga el enlace, puedes escribirlo dentro de los [], de forma que se vería así:

[Sitio web de DarkMode.](https://vis4valentine.com/darkmode)

Y el resultado final sería:

Sitio web de DarkMode.

Es una forma sencilla y didáctica de llevar a tus lectores a otros sitios de tu web, o guiarlos directamente a tus fuentes.

Imágenes:

Insertar imágenes es similar a insertar un enlace, con la diferencia de que se necesita incluir con ! al principio:

![Texto de la imagen opcional](Link a la imagen)

Si la imagen que necesitas se ubica en la misma carpeta donde guardas tu proyecto en Markdown, solo necesitas escribir el nombre del archivo. También puedes colocar el link de una imagen obtenida de internet.

![Logo Oficial de MD](https://upload.wikimedia.org/wikipedia/commons/thumb/e/ee/Markdown-blue-solid.svg/640px-Markdown-blue-solid.svg.png)

El resultado es el siguiente:

`Logo Oficial de MD

Citas en texto:

Para crear una cita de texto, necesitas poner > al inicio de la línea.

> "Texto Citado"

Y el resultado final es:

“Texto Citado”

Bloques de código:

Si estás realizando una guía técnica (como yo en estoy precisos momentos), vas a necesitar un bloque de código especial dónde poner los comandos, sin que entre en conflicto con el resto del formato de tu documento. Puedes hacerlo añadiendo 3 acentos graves ``` antes y después de tu segmento de código. Vamos a hacer un ejemplo mostrando un “Hola Mundo” en Python.

``` 
print('Hola Mundo')
```

Ahora, el resultado se vería así:

print('Hola Mundo')

Claro que, hasta ahora has visto muchos de estos durante esta guía, de no ser así, no sería capaz de mostrarte la sintaxis cruda de MD.

También puedes especificar el lenguaje de programación al cual estás referenciando, poniendo el nombre justo después de los 3 acentos graves iniciales:

```python

Dependiendo de tu editor, puede asignar una paleta de colores a la sintaxis del código.

Si quieres insertar código dentro de una línea de texto, puedes colocar un único acento grave antes de después del código.

Estos han sido los comandos básicos y esenciales para empezar a trabajar en Markdown. Las posibilidades pueden expandirse enormemente si se combina con HTML, e incluso CSS, pero eso ya queda para usuarios avanzados. En próximas entradas veremos los usos que se le puede dar a través de sus aplicaciones especializadas.

Fuentes:

  1. Blog oficial de Josh Gruber

  2. The Markdown Guide

Licencia: CC BY 4.0

TheDarkMode es un proyecto destinado a dar información sobre el mundo de la tecnología, y publicar artículos donde explicamos conceptos básicos y creamos materiales educativos para difundir la Alfabetización Tecnológica y el uso del Software Libre.

Sin embargo, hoy quiero enfocarme particularmente en la razón del nombre: “TheDarkMode”.

Dark Mode se traduce en español directamente como Modo Oscuro, haciendo referencia al modo de color que actualmente es muy popular en las interfaces gráficas de los principales sistemas operativos, tanto para escritorio como para móviles, y en aplicaciones y sitios web.

El Modo Oscuro es aquel que coloca los fondos de la interfaz o de las aplicaciones en un color negro, o colores oscuros como escalas de grises, azul marino, entre otros, a la vez que cambia el color de los textos a blanco. En cierto sentido, recuerda a las antiguas interfaces de texto, las cuales sobreviven en los sistemas de la familia de Unix tales como GNU/Linux o BSD, o en emuladores de terminal disponibles en MS Windows y MacOS. Las interfaces de texto por lo general se presentaban como una pantalla negra con letras blancas, o a veces las letras podían estar en color verde (Al estilo de “Matrix”), amarillo, o algún otro color, según el fabricante.

Beneficios del Modo Oscuro:

Salud:

El Modo Oscuro tiene razón de ser más allá de decisiones estéticas, hay quienes defienden que trae múltiples beneficios para la salud ocular.

Las pantallas de nuestros dispositivos funcionan mediante luces RGB: Red, Green, Blue (Rojo, verde y azul). Esta combinación produce todo el resto de colores que podemos apreciar con nuestros ojos, sin embargo, las luces de color Azul son particularmente más brillantes que las demás. Se cree que reducir la exposición a las luces azules puede prevenir la fatiga ocular que ocurre después de trabajar numerosas horas en frente de una pantalla. Es importante especificar que el color Blanco en las pantallas RGB se produce con la combinación de todos los colores a la vez, por lo cual el blanco es el color más intenso para nuestra vista.

Existen estudios que comprueban los efectos negativos de la emisión de luz azul:

Los diodos emisores de luz (LED) se han utilizado para proporcionar iluminación en entornos industriales y comerciales. También se utilizan en televisores, ordenadores, teléfonos inteligentes y tabletas. Aunque la luz emitida por la mayoría de los LEDs parece blanca, los LEDs tienen un pico de emisión en el rango de luz azul (400-490 nm). La acumulación de pruebas experimentales ha indicado que la exposición a la luz azul puede afectar a muchas funciones fisiológicas, y puede utilizarse para tratar las disfunciones circadianas y del sueño. Sin embargo, la luz azul también puede inducir daños en los fotorreceptores. Por lo tanto, es importante tener en cuenta la salida espectral de las fuentes de luz basadas en LED para minimizar el peligro que puede estar asociado con la exposición a la luz azul.

Tosini, G., Ferguson, I., & Tsubota, K. (2016). Effects of blue light on the circadian system and eye physiology. Molecular vision, 22, 61–72.

Sin embargo, los resultados de los estudios sobre los efectos de la salud no son concretos, existen algunos con resultados contradictorios y muchos están basados en experiencias anecdóticas.

Beneficios sobre tu batería:

Algunos dispositivos móviles y computadoras portátiles modernos contienen pantallas del tipo AMOLED. Estas, a diferencia de las pantallas LED o IPS, apagan los píxeles negros cuando se representan esos colores en la pantalla. Eso permite lograr un alto contraste de imagen con unos negros puros.

Esto mismo permite ahorrar batería en aquellos dispositivos, debido a que si la mayoría de la interfaz presenta colores negros, entonces una proporción de la pantalla está “Apagada”, utilizando solo los píxeles necesarios. Esto ha empujado a muchos desarrolladores a incorporar un modo oscuro en sus aplicaciones o páginas web. Cabe aclarar que para gozar de ese ahorro de batería, se necesita obligatoriamente un panel AMOLED, si tu dispositivo tiene cualquier otro tipo de pantalla no ahorrará energía activando este modo.

En cuanto a sistemas operativos, Windows añadió un tema oscuro nativo a partir de Windows 10, de igual forma, Apple lo incorporó en MacOS 10.14 *“Mojave” *y en iOS 13. Google también lo incluyó en Android 10. En el mundo de GNU/Linux, entornos de escritorio como Gnome, KDE Plasma, Pantheon, entre otros, ya tienen su propio modo oscuro.

Algunos sitios web y Apps con “Dark Mode” nativo son: Google, Facebook, Twitter, Youtube, Reddit, Telegram, WhatsApp, Instagram, DuckDuckGo, Signal, Discord, Mastodon, entre una infinidad más, incluso muchos sitios web y servicios no tienen un “Modo Claro”. La mayoría de sitios web lo activan automáticamente cuando detectan el tema que has elegido en tu sistema operativo, otros insisten en que lo actives manualmente. El sitio web donde estás leyendo esto activa el fondo negro según la configuración de tu navegador.

¿Cuándo utilizar el Modo Oscuro?

Con todo esto dicho, ahora vamos a ver cuándo es recomendable activar el modo oscuro:

  1. Cuando uses tu dispositivo de noche: Tanto si estás navegando por internet, como si estás terminando tu trabajo de la universidad, o si estás navegando por tu red social preferida, es recomendable que actives el modo oscuro. Sin embargo, si estás trabajando de noche en un entorno bien iluminado con todas las luces encendidas, no habrá mucha diferencia.

  2. Cuando estés escribiendo o leyendo: Para algunas personas, la lectura se hace más amigable y menos pesada con un fondo negro, puedes probarlo para ver si te trae mayor comodidad. También algunos escritores pueden sentirse que el fondo oscuro les ayuda a enfocarse mejor en sus textos.

  3. Por estética: Si eres como yo, puede que prefieras utilizar el modo oscuro en todas partes, en todo momento, y tomar unas medidas extremas para tener fondo negro en absolutamente todos los sitios web que visites, porque simplemente te gusta más, y te entiendo perfectamente.

Últimas recomendaciones:

  1. Algunas aplicaciones tienen la opción de programar automáticamente cuándo activar y desactivar el modo oscuro, debido a esto puedes utilizarlo solo caiga el sol, hasta que se levante nuevamente.

  2. Si estás utilizando tu dispositivo móvil en exteriores, o en una habitación que reciba mucha luz natural, sería mucho más recomendable activar el “Modo claro” con fondo blanco, para poder leer mejor lo que esté escrito en tu pantalla.

  3. Recuerda ajustar el brillo de tu pantalla según tu entorno, actualmente todos los dispositivos móviles tienen un ajuste de brillo automático, utilizando sensores de luminosidad integrados, pero en tu computadora posiblemente tengas que hacerlo manualmente mediante un icono en la barra de herramientas o atajos del teclado.

  4. Evite ver directamente la pantalla en un periodo de una o dos horas antes de ir a dormir.

  5. Puedes utilizar una extensión para navegador como por ejemplo “Dark Reader” (Firefox, Chrome) para forzar un tema oscuro en páginas web que no lo tengan disponible nativamente. Es necesario advertir que puede ocasionar conflictos en algunas páginas web.

  6. Puede leer este artículo de la Academia Americana de Oftalmología sobre el uso de pantallas y dispositivos electrónicos. Aquí puede encontrar recomendaciones adicionales de profesionales de la materia. Link al artículo.

Licencia: CC BY 4.0

Continuando con nuestra serie de conceptos básicos en Alfabetización tecnológica, es necesario dejar clara la definición de “Software”, debido a que es la otra pieza fundamental que hace girar a nuestro mundo.

Definición:

“Instrucciones que indican a un ordenador lo que debe hacer. El software comprende todo el conjunto de programas, procedimientos y rutinas asociados al funcionamiento de un sistema informático¹

En Palabras simples: Son los componentes digitales que dan funcionalidad práctica al Hardware, comunicando a este con el usuario final para que este pueda desempeñar distintas tareas específicas, desde iniciar el sistema operativo, realizar documentos de oficina, reproducir multimedia, o correr juegos. El funcionamiento de una computadora requiere tanto hardware como software y sin uno, no puede funcionar el otro.

Programas:

Programa informático, plan o procedimiento detallado para resolver un problema con una computadora; más concretamente, una secuencia ordenada e inequívoca de instrucciones computacionales necesarias para lograr dicha solución. Sin embargo, entendemos comúnmente a un “Programa” como software esencial que corre de fondo con poca o ninguna interacción con el usuario final, a diferencia de las “Aplicaciones”².

Aplicaciones:

(También conocidas como “Apps”) Es un paquete de software que realiza una función específica directamente para un usuario final o, en algunos casos, para otra aplicación. Una aplicación puede ser autónoma o formar parte de un grupo de programas.

Las aplicaciones utilizan el sistema operativo (SO) de la computadora y otros programas de apoyo, normalmente el software del sistema, para funcionar. Una aplicación solicita servicios a otras tecnologías y se comunica con ellas a través de una interfaz de programación de aplicaciones “API”

Una aplicación puede ser también un programa, pero los programas no son necesariamente aplicaciones, la principal diferencia es que el usuario usualmente no interactúa con los programas, sino que estos corren de fondo. Por ejemplo, el Navegador Web es una aplicación, mientras que los controladores de red son programas que se comunican con la “Tarjeta de red” de la computadora (Hardware), permitiendo que esta se conecte al internet y entonces el usuario pueda navegar por internet a través de la aplicación del navegador.

Software libre y de código abierto:

Es todo aquel software que tiene su código disponible de manera pública, y que cumple con ciertas libertades para que voluntarios y contribuidores puedan utilizar ese código, modificarlo y redistribuirlo.

Ya tenemos un artículo entero dedicado al Software Libre.

Próximamente, vamos a ver los tipos de aplicaciones y de programas que existen, junto con numerosos ejemplos de las mismas.

Licencia: CC BY 4.0

Los “Virus” son una preocupación frecuente, tanto para las personas poco conocedoras del uso de computadoras, como para los más grandes expertos en seguridad informática. Sin embargo, muchas personas no saben realmente lo que significa la palabra “Virus” en el contexto de la informática, y suele ser el chivo expiatorio de cualquier mal funcionamiento en la computadora o dispositivo móvil.

Las personas suelen exagerar los efectos de los virus, a la vez que no tienen idea de lo peligrosos que pueden llegar a ser, pero siempre y cuado usted no esté guardando secretos de estado al estilo de Edward Snowden, puede protegerse con unas simples recomendaciones.

Contenidos:

  1. Malware
  2. Software Antivirus
  3. Recomendaciones para protegerse de Malware
  4. GNU/Linux y MacOS no tienen virus

Malware:

Un Malware (Comúnmente conocido como “Virus”) es un programa o aplicación malicioso o con características escondidas que perjudican al usuario y a su dispositivo. Algunos de ellos suelen aprovecharse de la ignorancia o ingenuidad de los usuarios, mientras que otros explotan vulnerabilidades aún sin arreglar dentro de programas o aplicaciones existentes.

Algunos de los tipos más comunes de Malware son:

Virus:

Es un programa que infecta otros sistemas, programas o aplicaciones y se multiplica a través de sistemas o redes enteras, ocasionando daños o fallas en el funcionamiento de dichos sistemas.

Un ejemplo bastante común en “El virus del acceso directo”, el cual se distribuye a través de unidades de almacenamiento USB, eliminando los archivos que contenga, y reemplazándolos con acceso directos. Este también puede eliminar archivos personales de la computadora infectada. Sin embargo, los antivirus modernos son efectivos eleminando este malware.

Adware:

Presenta una cantidad abusiva de publicidad en pantalla, muchas veces imposible de evadir, para darle un beneficio económico al desarrollador y estafar a los compradores de publicidad, pues representa un interés artificial en el anuncio y los productos o servicios presentados en este. Cualquier aplicación con una cantidad abusiva de anuncios interfiriendo con su supuesta funcionalidad puede considerarse Adware, esto incluye barras de navegación, aplicaciones móviles, videojuegos, barras laterales de sitios web, etc.

Ejemplo de una pestaña con Adware: https://adware.guru/club-premium-net-remove/

Spyware:

Son herramientas de espionaje creadas por gobiernos, empresas o agencias de inteligencia para robar información de rivales políticos o empresariales, empleados, usuarios, o incluso poblaciones enteras, esta información luego puede venderse en el mercado negro o utilizarse para planes estratégicos. Un Spyware puede implementarse secretamente en cualquier aplicación.

Algunos consideran a sistemas operativos enteros, como Windows y MacOS como spyware, debido a la alta cantidad de información que recolectan de sus usuarios. Un ejemplo perfecto es una distribución de GNU/Linux llamada RedStarSO, creada por el KCC (Centro Computacional de Korea del Norte) cargada con programas de espionaje para facilitar al gobierno de Korea del Norte vigilar a su propia población.

RedStarOS, distribución GNU/Linux del gobierno de Korea del Norte

Ransomware:

Tiene el propósito de secuestrar computadoras o redes de computadoras enteros, encriptando los discos duros de estas para posteriormente exigir un pago para liberar la información. “Ransom” es la palabra en inglés para la carta que se recibe posterior a un secuestro, exigiendo una pago o una serie de condiciones para liberar a la persona secuestrada.

El ejemplo más conocido es del “WannaCry” el cual en 2017 comenzó a propagarse mundialmente, llegando a secuestrar sistemas computaciones enteros de empresas como Nissan UK, Renault, Telefónica España, y Fedex.

Captura de pantalla, con un mensaje que dice "Ops, tus archivos han sido encryptados

Troyanos:

Son programas que el usuario descarga voluntariamente bajo la apariencia de ser un programa inofensivo, pero tan pronto lo ejecuta comienza a afectar negativamente al equipo.

Bots:

Son programas que se ejecutan automáticamente y realizan una serie de tareas automatizadas con distintos propósitos maliciosos.

No todo problema es culpa de un “virus”:

Es importante aclarar que si el sistema operativo presenta fallas, es necesario revisar si existe algún problema con el hardware, las configuraciones del sistema, los controladores, entre otras posibilidades. La mayoría de problemas que los usuarios experimentan también suelen ser culpa del propio usuario, en vez de un mal funcionamiento del equipo o las aplicaciones que estén utilizando, rara vez la raíz del problema proviene de un Malware.

Software Antivirus:

Para prevenir o eliminar la amenaza de malware, existe una amplia variedad de software Antivirus, que tienen por objetivo analizar los archivos, programas y aplicaciones disponibles en el equipo en búsqueda de amenazas que tengan identificadas en sus bases de datos, posteriormente alertan al usuario de dichas amenazas para poder eliminarlas, protegiendo así al equipo. Sin embargo, muchas veces no es recomendable utilizar uno por los siguientes motivos:

  1. Prioridad de beneficios económicos: La gran mayoría de software Antivirus son de pago, algunos requieren de un único pago por licencia, pero otros son servicios de suscripciones mensuales o anuales, algunos de estos pueden tener versiones gratuitas o “de prueba” que permiten realizar algunas funciones básicas, pero constantemente estarán solicitando al usuario pagar por la versión completa.
  2. Posibles estafas: Muchas veces un software Antivirus no es más que una fachada para un programa malicioso, o una estafa muy elaborada. El software puede dar alertas de amenazas falsas en el equipo, para luego solicitar al usuario pagar por una “versión completa” para poder eliminarlas, tirando mensajes muy alarmistas, pero en realidad, dichas amenazas no existen y la aplicación no tiene funcionalidad real. También puede darse la estafa de igual manera, mostrando amenazas falsas, o incluso saboteando el sistema a propósito, para posteriormente mostrar al usuario un número de un supuesto “Soporte Técnico” requiriendo acceso a la computadora de la víctima y un pago para “arreglar” el problema, solo para luego irse con el dinero sin arreglar absolutamente nada.
  3. Uso de recursos: Un software antivirus puede correr de fondo constantemente mientras el usuario realiza sus tareas diarias, consumiendo a su vez una gran cantidad de recursos del sistema, muchas veces sin ser necesario.

Recomendaciones Para Protegerse de Malware:

  1. Usar Windows Defender: Windows 10 y Windows 11 llevan integrado un programa de protección contra Malware y virus llamado Windows Defender, este corre de fondo usando pocos recursos y cumple muy efectivamente con su propósito de localizar, identificar, alertar y eliminar posibles amenazas al sistema. Con este, no es necesario utilizar otro antivirus en versiones modernas de Windows. En otros sistemas como MacOS y GNU/Linux no es necesario instalar un antivirus, porque existe mucho menos malware y un usuario regular de estos sistemas posiblemente nunca vea su sistema infectado (no significa que no exista), sin embargo, las próximas recomendaciones son importantes para todo aquel quien no tenga un antivirus.
  2. No descargar ni instalar programas de origen sospechoso: Si necesita instalar una aplicación o programa en específico, hágalo directamente desde el sitio web oficial del desarrollador, asegúrese que el mismo tenga una comunidad de usuarios que den garantía de que el software no sea una fachada para funciones maliciosas, también es recomendable instalar software directamente de las distintas tiendas de aplicaciones, como por ejemplo la Windows Store (Windows 10-11), la App Store (MacOS, iOS), Google Play Store y F-Driod (Android) o los distintos gestores de paquetes existentes en distribuciones GNU/Linux (APT, Pacman, RPM, etc).
  3. Lea las reseñas y valoraciones: Las tiendas de aplicaciones por lo general cuentan con un sistema de valoraciones y un apartado de reseñar para cada aplicación disponible, es importante leerlas, pues otros usuarios pueden alertar sobre experiencias negativas o posibles riesgos de instalar dicha App. También es importante destacar que algunas empresas desarrolladoras fraudulentas utilizan Bots para mejorar artificialmente sus propias valoraciones, esto puede ser evidente cuando una aplicación tiene una cantidad desproporcionada de calificaciones de 5 estrellas, reseñas de usuarios sin foto de perfil y nombres compuestos de nombres genéricos con números, y comentarios con frases prefabricadas, sin ahondar en ninguna experiencia personal o característica.
  4. Utilice un bloqueador de anuncios: Tenga cuidado con visitar sitios web de dudosa procedencia, sobre todo si están sobrecargados de anuncios. Es importante utilizar un buen bloqueador de anuncios como uBlock Origin (Chrome, Firefox) para evitar abrir una publicidad que redirija a otro sitio web malicioso o que pueda robar su información.
  5. Mantenga su sistema operativo actualizado: Los criminales cibernéticos están constantemente buscando huecos en la seguridad de su sistema operativo o de las aplicaciones que usted utiliza, los cuales puedan utilizar para vulnerar la seguridad de otros usuarios. Por lo general, los desarrolladores buscan corregir y tapar estos huecos, haciendo sus productos cada vez más seguros. Tener un sistema operativo o aplicaciones desactualizadas, puede exponerle a usted a ser victima de un ataque. Sistemas operativos como Windows XP, Windows Vista, Windows 7, Windows 8, MacOS 10.13 y anteriores, y una gran cantidad de distribuciones GNU/Linux LTS cuyo soporte ya haya terminado no son seguras, pues sus desarrolladores ya no realizan actualizaciones de seguridad para las mismas. En el caso particular de Windows XP, su código fuente fue filtrado años después su fin de soporte, haciendo este sistema extremadamente inseguro. Esto también aplica para dispositivos Android, y los iPhone que no pueden actualizar a la versión más reciente de sus respectivos OS. En resumen, mantenga su sistema operativo al día.

Advertencia: En el caso específico de la Play Store de Android, muchas aplicaciones publicadas son en sí mismas, Malware, pero debido a los sistemas automatizados de aprobación, estas Apps terminan publicándose y estando disponibles, hasta que en algún momento, exista un número considerable de reportes de usuarios que obligue a Google a realizar una revisión manual y eliminándola permanentemente. F-Droid tiene un mucho mejor control de calidad en sus aplicaciones, y estas son por defecto Free and Open Source.

GNU/Linux y MacOS no tienen virus:

Esta frase es muy comúnmente utilizada por entusiastas cuando promocionan el uso de GNU/Linux a usuarios de Windows, y también se escucha mucho por parte de usuarios de MacOS.

Sin embargo, esto es objetivamente falso. Todos los sistemas operativos pueden tener malware, solo hace falta gente dispuesta a crear ese malware. En el pasado hemos visto casos de malware creado especificamente para GNU/Linux y MacOS, sin embargo, esos no llegaron a prosperar ni a causar daños considerables.

La razón por la cual existe tanto malware destinado a Windows, es debido a ser el sistema operativo para ordenadores domésticos más utilizado en el mundo, esto incluso ha permitido que gran parte de su base de usuarios está rozando el analfabetismo digital, y por lo tanto son vulnerables ser víctimas de ataques informáticos.

También hay que considerar que Windows es muy utilizados en entornos empresariales y de oficinas, por lo tanto es muy probable robar información utilizando unos exploits muy simples.

MacOS tiene una base de usuarios más grande que la de GNU/Linux, sin embargo, no es lo suficientemente extensa para justificar crear una gran cantidad de malware.

Adicionalmente es importante considerar que los usuarios de GNU/Linux, en su mayoría están más familiarizados con el uso de computadores y técnicas de seguridad básicas, por lo que no es fácil engañarles para que instalen malware.

Sin embargo, los usuarios de GNU/Linux aún pueden estar expuestos a sitios web maliciosos, o a vulnerabilidades físicas, como por ejemplo, ser víctimas de un dispositivo que intercepte lo que escriben a traves de su teclado sin su conocimiento.

En resumen: Si utilizas GNU/Linux, es muy posible que lo utilices por años sin tener que preocuparte por ser víctima de Malware. El malware en este sistema existe, y también tiene antivirus, pero no es necesario instalar uno, generalmente, mientras navegues por la web con un bloqueador de anuncios, estarás bien. Lo mismo aplica para MacOS.

Licencia: CC BY 4.0

Contenido:

  1. Historia 1.2 Richard Stallman y el proyecto GNU 1.3 El Manifiesto GNU 1.4 Free Software Foundation
  2. ¿Qué es el Software Libre
  3. Las 4 Libertades Escenciales
  4. El Software Libre se puede vender
  5. Licencias
  6. Open Source Software
  7. Importancia del Software Libre

Historia:

En los años tempranos de la ingeniería informática, no era común hablar de “licencias de software” o derechos de autor. Esto en parte debido a las limitaciones de la época. El software era desarrollado para funcionar en la propia máquina donde era desarrollado, y su funcionalidad estaba contenida a unas pocas tareas básicas. Sin embargo, en años posteriores se crearon programas multi plataforma, la necesidad por las computadoras se extendió en entornos profesionales, militares, bancarios y empresariales, así como la demanda por ingenieros que desarrollen estos sistemas.

La costumbre entre desarrolladores de software en aquella época era la de compartir el código fuente, intercambiar ideas, aprender a punta del ensayo y error, y cuando alguien encontraba la solución a un problema, esta era compartida entre sus colegas.

Con el paso del tiempo, las compañías comenzaban a restringir las licencias de su software, y limitar las contribuciones a sus equipos selectos de desarrolladores, limitando así el acceso al código, o en otras palabras, “cerrandolo”. Esto se debía principalmente a la necesidad de proteger sus propiedades intelectuales, y evitar que la competencia les copie. Pero a la final, esto ha perjudicado en el largo plazo a los consumidores.

Para la década de 1980, empresas como Comodore, Apple, Microsoft, IBM, entre otras ya estaban establecidas entre el mundo de la computación para el hogar, muchas otras compañías ya distribuían su propio software a distintas plataformas, sin compartir el código, manteníendolo secreto, y además patentando el mismo para asegurarse que nadie pueda tener acceso, modificarlo, ni distribuirlo.

Richard Stallman y el proyecto GNU:

Un desarrollador y profesor del MIT llamado Richard Stallman, veía con preocupación la caída de algunas comunidades de desarrolladores donde el código se compartía libremente. Entonces, decidido a iniciar un movimiento en favor del “Software Libre” renuncia al MIT en enero de 1984, iniciando junto con otros colegas el desarrollo del sistema GNU.

RMS

El sistema GNU estaría basado parcialmente en el sistema operativo UNIX, gracial a lo cual, se lo considera un sistema operativo ”“UNIX-Like””, sin embargo también tiene tecnologías desarrolladas desde cero, así como incorpora otras tecnologías originalmente ajenas a UNIX.

Según el propio Richard Stallman:

Desarrollar un sistema completo es un proyecto muy grande. Para llevarlo a cabo, decidí adaptar y utilizar piezas de software libre existentes siempre que fuera posible. Por ejemplo, al principio decidí utilizar TeX como el principal formateador de texto; unos años más tarde, decidí utilizar el sistema X Window en lugar de escribir otro sistema de ventanas para GNU. Debido a estas decisiones, y otras similares, el sistema GNU no es lo mismo que la colección de todo el software de GNU. El sistema GNU incluye programas que no son software de GNU, programas que fueron desarrollados por otras personas y proyectos para sus propios fines, pero que podemos usar porque son software libre. ¹

Esta y muchas otras es la razón por la cual “GNU no es Unix” la cual es el literal significado de su acrónimo: “GNU is not UNIX”.

En septiempre de 1984 inició el desarrollo de GNU Emacs, un editor de textos multifunciones, el cual serviría como reemplazo a VI.

El manifiesto GNU:

GNU Logo

En 1983 Richard Stallman redacta la primera versión del Manifiesto GNU, donde se establecen las bases fundamentales e ideológicas del proyecto. Luego sería publicado en 1985, y parcialmente actualizado en 1987.

El mismo puede leerse completo en el sitio web oficial del proyecto GNU.

A continuación les muestro un extracto del mismo:

Por qué debo escribir GNU

Considero que la Regla de Oro me exige que si me gusta un programa lo debo compartir con otras personas a quienes también les guste. Los vendedores de software quieren dividir a los usuarios y dominarlos para llevarlos a aceptar no compartir su software con los demás. Me rehúso a romper la solidaridad con otros usuarios de esta manera. Mi conciencia me impide firmar un acuerdo de confidencialidad o un acuerdo de licencia de software. Durante años trabajé en el Laboratorio de Inteligencia Artificial oponiéndome a estas tendencias y otras descortesías, pero al final fueron demasiado lejos: no podía permanecer en una institución donde tales cosas se hicieran en mi nombre en contra de mi voluntad.

Para poder seguir utilizando las computadoras sin deshonra, he decidido agrupar un conjunto suficiente de software libre para poder vivir sin usar ningún software que no sea libre. He renunciado al Laboratorio de Inteligencia Artificial para evitar que el MIT pueda usar alguna excusa legal que me impida distribuir software de GNU.

Free Software Foundation:

El 4 de Octubre de 1985 se funda la Free Software Foundtaion. Esta organización sin fines de lucro se encarga de el desarrollo de muchas aplicaciones, programas y tecnologías del proyecto GNU, así como administran las licencias libres de software denominadas “Copyleft” las cuales permiten la distribución libre de software.

También se encarga de crear documentación, materiales educativos, organizar eventos y promover el software libre. Todos los emplados de la fundación utilizan exclusivamente software validado por ellos mismos como software 100% libre.

¿Qué es el Software Libre?:

Para tener una definición más exacta, vamos a tomarlo directamente de la página de filosofía del proyecto GNU:

«Software libre» es el software que respeta la libertad de los usuarios y la comunidad. A grandes rasgos, significa que los usuarios tienen la libertad de ejecutar, copiar, distribuir, estudiar, modificar y mejorar el software²

El movimiento del software libre es uno de los movimientos sociales más exitosos que ha surgido de la cultura informática, impulsado por una comunidad mundial de programadores éticos dedicados a la causa de la libertad y el intercambio. Pero el éxito final del movimiento del software libre depende de que enseñemos a nuestros amigos, vecinos y compañeros de trabajo el peligro de no tener libertad de software, el peligro de que una sociedad pierda el control sobre su informática ³

Las 4 Libertades escenciales:

Las bases fundamentales del software libre se basan en las 4 libertades:

  • Libertad 0: La libertad de ejecutar el programa como se desee, con cualquier propósito.
  • Libertad 1: La libertad de estudiar cómo funciona el programa, y cambiarlo para que haga lo que se desee. El acceso al código fuente es una condición necesaria para ello.
  • Libertad 2: La libertad de redistribuir copias para ayudar a otros.
  • Libertad 3: La libertad de distribuir copias de sus versiones modificadas a terceros. Esto le permite ofrecer a toda la comunidad la oportunidad de beneficiarse de las modificaciones. El acceso al código fuente es una condición necesaria para ello.

Todo programa o aplicación que se considere software libre debe contener estas 4 libertades, así como los componentes o tecnologías que hayan sido utilizadas para desarrollar el mismo.

La razón por la cual inicia en la libertad 0, es porque en la ingeniería de software se empieza a contar desde el 0, en vez del número 1.

El Software Libre se puede vender:

Un malentendido muy común es pensar que el Free Software es lo mismo que software “Gratuito”. Si bien la mayoría de software Libre es también gratuito, eso no quita que el software pueda tener valor monetario si los desarrolladores así lo desean. Existen grupos, organizaciones y empresas que hacen dinero distribuyendo software libre, dando servicios de soporte, o recibiendo donaciones de parte de sus propios usuarios.

Algunas de las más destacables son:

  • Red Hat.
  • Gnome Foundation.
  • Canonical.
  • Krita Foundation.
  • Linode.
  • Tuxedo Computers.
  • Endless.
  • System76.
  • Mozilla Corporation.
  • Suse.
  • Wordpress.
  • Wikimedia / Wikipedia.

Este malentendido también se debe a que en el idioma inglés “Free significa tanto “libertad” como “gratuito”. Por este motivo, muchos angloparlantes utilizan la palabra “Libre” en español para marcar la diferencia. También es común escuchar frases como “free as in free speech, not free beer” (Libre en el sentido de libertad de expresión, no cerveza gratis).

Piratería:

Los movimientos en favor del software libre NO son partícipes ni apoyan la piratería. El hecho que el código fuente de un software se filtre y ahora a la vista del público NO lo hace software libre, como puede ser el caso de Windows XP, Team Fortress 2, o Twitch. Todas estas tienen licencias y patentes propietarias y privativas.

En todo caso, argumentan que dar una licencia libre es una solución a la piratería de software.

Licencias:

Para que un software sea libre, necesita estar publicado bajo una licencia “Copyleft” que permita el uso de las 4 libertades escenciales.

En la página oficial de la Free Software Foundation, podemos encontrar un listado de licencias libres, compatibles, y privativas. Algunas de las más importantes son:

  • Licencia Pública General de GNU Versión 3 (GPL3).

  • Licencia Pública General de GNU Versión 2 (GPL2): La GPLv2, por sí misma, no es compatible con la GPLv3. Sin embargo, la mayoría del software publicado bajo la GPLv2 permite que se utilice también bajo los términos de las versiones posteriores de la GPL.

  • Licencia Pública General Reducida de GNU (LGPL) versión 3: Una licencia de software libre, pero sin un sólido copyleft, ya que permite el enlazado con módulos privativos. Es compatible con la GPLv3.

  • Licencia Pública General Affero de GNU (AGPL) versión 3: Esta es una licencia de software libre con copyleft. Sus términos son en la práctica los mismos de la GPLv3, con un párrafo adicional en la sección 13 que permite a los usuarios que interactúan con el software bajo esta licencia en una red, recibir la fuente de tal software.

  • Licencia Completamente Permisiva de GNU: Esta es una licencia de software libre laxa, permisiva, compatible con la GPL de GNU, que recomendamos usar en los pequeños archivos de soporte de los paquetes de GNU, como README, etc. Todos los desarrolladores, si lo desean, pueden usarla en situaciones similares.

  • Licencia Apache, versión 2.0.

  • Licencia Pública de Mozilla (MPL), versión 2.0¹⁰.

  • Dominio Público¹¹: El dominio público no se refiere a tener una licencia; más bien, significa que el material no se encuentra bajo copyright y no es necesaria ninguna licencia. Prácticamente hablando, si una obra es de dominio público, puede a su vez tener una licencia de software libre totalmente permisiva sin copyleft. El material en dominio público es compatible con la GPL de GNU.

Open Source Software:

Open Source

Existe una confusión y controversia entre el “Software Libre” y el “Software de Código Abierto” u “Open Source”.

Para dejarlo claro, ambos términos se refieren a movimientos y pensamientos distintos, más concretamente, la Free Software Foundation y el movimiento GNU no están asociados en lo absoluto con los movimientos de Open Source, y en especial con la “Open Source Initiative” la cual es una organización sin fines de lucro creada en 1998.¹²

Según Richard Stallman en su artículo: Por qué el «código abierto» pierde de vista lo esencial del software libre:

Las expresiones «software libre» y «código abierto» («open source») se refieren aproximadamente al mismo conjunto de programas. No obstante, al basarse en valores diferentes, lo que dicen acerca de esos programas es muy distinto. El movimiento del software libre defiende la libertad de los usuarios de ordenadores, es un movimiento en pro de la libertad y la justicia. La idea del código abierto, por el contrario, valora principalmente las ventajas prácticas y no defiende principios. Esta es la razón por la que estamos en desacuerdo con la campaña del código abierto y no empleamos esa expresión.

Según la la Open Source Initiative:

El “código abierto” se centra en las consecuencias prácticas que permiten estas licencias: una colaboración sorprendentemente eficaz en el desarrollo de software. El software libre fue lo primero. Más tarde, se hizo evidente que el software libre estaba dando lugar a una dinámica de colaboración notable. En 1997, el ensayo seminal de Eric Raymond “The Cathedral and the Bazaar” centró la atención en las implicaciones que el software libre tiene para la metodología de desarrollo de software.¹³

En resumen, el “Software Libre” es un movimiento social, ideológico y fislosófico, mientras que el “Código abierto” se centra en las practicidades de los principios del software libre dentro del desarrollo de software.

Un programa puede a su vez ser “Software Libre” y de “Código Abierto”, ajustándose a ambas definiciones, estos suelen conocerse como “FOSS” (Free and Open Source Software).

Sin embargo, un programa puede ser de “Código Abierto” pero estar bajo una licencia restrictiva no compatible con las 4 libertades del software libre, como puede ser el caso de un programa que tenga su código en un repositorio público como Github, pero que prohiba aportes, contribuciones, o modificaciones de voluntarios ajenos al equipo de desarrollo interno.

Importancia del Software Libre:

Hoy en día nuestras vidas digitales, así como nuestra información, está a mercer de unos pocos monopolios tecnológicos, los cuales mantienen una hegemonía cultural.

El software libre nos permite una autonomía digital, tomar control sobre la tecnología que utilizamos, y nuestra información.

Algunas de las ventajas del software libre son:

  • Privacidad.
  • No contienen características ocultas que perjudiquen al usuario final.
  • La mayoría de programas y aplicaciones son gratuitas o de costo reducido.
  • No existe la piratería con el software libre, protegiendo a las personas de los peligros asociados con esta.
  • Si un programa o aplicación es abandonado por sus desarrolladores, voluntarios pueden retomarlo para que siga activo y mejorándose.
  • Las licencias de software libre no expiran, el usuario se hace propietario de su copia del programa o aplicación.
  • Los voluntarios en el desarrollo pueden descubrir vulnerabilidades en el software, e inmediatamente arreglarlas, haciendo el software libre más seguro.
  • Empresas, escuelas e instituciones pueden desarrollar y añadir funciones o características a un software ya existente para ajustarlo a sus necesidades.
  • Inventiva el pensamiento crítico, la alfabetización tecnológica y el aprendizaje en desarrollo de software.
  • Enseña a adaptarse a distintos entornos de trabajo e interfaces.
  • Enseña a encontrar soluciones a problemas.
  • Inventiva a la investigación y la lectura de documentación.

Licencia: CC BY 4.0