El blog de Juan

Un respaldo de lo que pienso cuando espero el camión

Hace unos cuantos días he decidido mudar desde Emacs a Vim, motivado por el deseo de probar algo nuevo y, quizá más consistente con mi forma de trabajar.

Últimamente he estado migrando cada vez más a aplicaciones basadas en terminal, como newsboat, sc-im, lf, y mi propia colección de scripts, y me he estado acostumbrando a usar la línea de comandos cada vez más. En consecuencia de esto, he buscado soluciones fuera de Emacs, al grado que Emacs solo funcionaba para mi como un editor de texto, que si bien no tiene nada de malo, en cierta forma siento que estaba desperdiciando una gran herramienta.

Si bien, todo es posible en Emacs, siento que la forma “correcta” de solucionar mis problemas en “la forma Emacs” no es mediante shell scripts y aplicaciones en terminal, mas el uso de paquetes de Emacs y bloques de código en lisp. He probado algunas de las más famosas herramientas de Emacs, como dired, elfeed o mu4e, y aunque muy buenas, su configuración y su uso requiere largos bloques de código para que funcione como quiero, cosa que varias de las aplicaciones TUI que estoy usando ahora no necesita.

En cuanto al movimiento en Vim, es algo a lo que ya estoy acostumbrado, gracias al uso de evil-mode y las muchas aplicaciones que lo usan como zathura o el mismo bspwm, por lo que hjkl y “:wq” no me causan ningún conflicto, al contrario, me siento bastante cómodo con estos atajos de teclado.

Para terminar debo decir que he intentado migrar algunas de las funciones que en realidad usaba en Emacs a Vim. A continuación numero como me ha ido hasta ahora.

  • Magit: Quizá uno de los pocos paquetes de Emacs que usaba constantemente, la solución, simplemente usar git en la terminal como se supone que lo haga.
  • YASnippet: Solo necesito dos snippets, y los “snippets engines” en Vim son muchos y parecen más complicados que YASnippet, sin embargo, un acercamiento (que no he probado aún) es simplemente crear mis snippets en un archivo de texto y añadirlos en Vim con un comando de teclado usando read.
  • Spellcheck: Para la ortografía, está disponible en Vim agregando :set spell a mi init.vim.
  • Org-mode: La herramienta más importante para mi, dado que es mi procesador de texto, mi hoja de cálculo, mi formato para notas y gran parte de mi trabajo depende de org-mode. En fin, la única función que no uso es, irónicamente, la agenda y todo lo relacionado con la organización del día. Actualmente lo reemplazo con Markdown y Pandoc, que hasta ahora, y con la ayuda de plugins gabrielelana/vim-markdown, estoy reemplazando. Esta es la primera entrada del blog, de hecho, escrita en markdown desde el inicio y no org-mode y exportado a markdown.

Una nueva experiencia

Vim, ahora como mi editor de texto principal, está siendo una nueva experiencia. Más sencillo en ciertas cosas, más complicado en otras, está forzándome a usar mi computadora de una nueva forma, desde formatos de archivo (de org a markdown) a una nueva forma de abrir archivos (en Emacs, abusaba de los buffers, y gracias a emacsclient, me era fácil salir sin guardar los cambios), pero el cambio ha sido positivo hasta ahora. Veamos como me va con el combo markdown/pandoc y si logra reemplazar a org-mode, ya que es una necesidad que me obligaría a regresar a Emacs.

Instalé un Window Manager minimalista. ¿Ahora qué? Esa es una pregunta que muchos usuarios se hacen al instalar una WM como Openbox, i3 o bspwm, que solamente muestran ventanas y poco más. Las características de un entorno de Escritorio completo, como lo son un panel/barra de tareas, explorador de archivos, o incluso un cajón de aplicaciones, suelen brillar por su ausencia en estas instalaciones, dejando en manos del usuario decidir que aplicaciones descargar. El problema es que, en algunas ocasiones, no sabemos que aplicaciones usar, o las que estamos acostumbrados pertenecen a entornos de escritorio completos y no funcionan de manera independiente.

Debido a lo anterior es que he decidido plasmar algo de mi experiencia en el uso de Window Managers y listar algunas de las aplicaciones que personalmente recomiendo y uso diariamente, así si alguien desea migrar de un entorno de escritorio a un gestor de ventanas en solitario, puede basarse en este escrito para decidir que aplicaciones instalar. Trataré de listar aquellos programas que ayudan a completar una interfaz de escritorio, así como otras aplicaciones que considero quedan bastante bien con entornos minimalistas y basan su funcionamiento principalmente en el uso del teclado, así como también el hipervínculo que mande a una web con información sobre la aplicación (el README en github o una entrada en la wiki de Arch) en lugar de un enlace para descargar, puesto que la mayoría está disponible en los repos de las distros más populares.

Panel

  • Polybar

    Uno de los paneles más populares, permite utilizar diferentes “módulos” para decidir que información mostrar. Además de los módulos incluidos se pueden crear nuevos que muestren la salida de un script, lo que lo vuelve sumamente poderoso en mi opinión sin dejar de lado la simpleza de uso. Incorpora una serie de módulos para mostrar la información que deseamos (incluidos los escritorios de i3 y bspwm), una bandeja del sistema y en su wiki podemos encontrar una variedad de scrips creados por la comunidad. img

  • Tint2

    Un problema, si se le quiere ver así, de polybar es que la configuración se hace mediante un archivo de texto. tint2 parece solucionar ese problema incorporando una interfaz gráfica para editar y crear temas, pero a la vez es un panel bastante completo incorporando una gran cantidad de módulos que se pueden personalizar desde el color hasta el tipo de información que muestran. Aunque debo decir que es algo más limitado que polybar, este panel posee un “botón de tareas” que permite mostrar las aplicaciones abiertas e interactuar con ellas, mientras que polybar no, volviéndolo perfecto para stacking window managers como Openbox o Berry. img

  • lxpanel

    El panel que incorpora el entorno LXDE pero que es totalmente independiente, incorpora un menú, botones de ventanas, bandeja y es personalizable para dejarlo al gusto de cada quien. img

Lanzador de aplicaciones

  • dmenu

    Dmenu no es un lanzador de aplicaciones, en realidad es un menú dinámico; para no explayarme mucho, básicamente podemos enrutar varias lineas a dmenu y, en un menú gráfico seleccionar una, la selección se imprime en STDOUT. Muy útil para scripts (yo mismo tengo una serie de scripts que usan dmenu), incluye un script llamado dmenu_run el cual muestra todas las aplicaciones instaladas, permitiendo usarlo como lanzador de aplicaciones. img

  • j4-desktop

    dmenu_run tiene un problema: muestra todos los binarios instalados en el equipo, esto incluye cantidad de utilidades en línea de comandos, librerias y aplicaciones por su nombre binario y no su nombre común (“lowriter” en lugar de “Libre Office Writer”). j4-desktop soluciona esto mostrando solamente aquellos paquetes con un archivo .desktop en un menú de dmenu. Es posible modificar los parámetros de dmenu para personalizarlo un poco. img

  • Rofi

    Rofi permite no solo lanzar las aplicaciones instaladas, sino también cambiar entre ventanas abiertas e incluso puede reemplazar a dmenu como menú dinámico. Rofi es mucho más personalizable que dmenu, permitiendo crear temas complejos y llamativos. img

Sistema

  • Nitrogen

    Una aplicación para elegir un fondo de pantalla. Es muy sencilla de usar y basta con elegir en la interfaz gráfica la carpeta de los Wallapaper y elegir uno. Incluye opciones para la línea de comandos también. img

  • picom

    Picom es un compositor de ventanas, fork de Compton. Permite agregar sombras, transparencias y animaciones simples a las ventanas, pero la utilidad más importante es la de reducir el tearing presente en varios gestores de ventanas.

  • lxappearance

    Esta aplicación permitirá cambiar el tema GTK+, el paquete de íconos, el tipo de fuente que usará el sistema y el tema del cursor. Originalmente desarrollado para usarse en el entorno de escritorio LXDE funciona perfectamente fuera de él. img

  • qt5ct

    No todas las aplicaciones que usamos son GTK, varias usan las librerías Qt, y para poder modificar su apariencia es necesario usar qt5ct. Desde esta pequeña aplicación se puede cambiar el tema y la apariencia de las aplicaciones Qt. Recomiendo usar el estilo GTK para que las ventanas GTK y las ventanas Qt se vean uniformes. img

  • PulseAudio y Pavucontrol

    Para poder escuchar algo en nuestros sistemas necesitamos instalar e iniciar el servidor de PulseAudio. Pavucontrol nos permitirá cambiar el volumen y las salidas y entradas de audio. img

  • Dunst

    Dunst es un servidor de notificaciones que permite mostrar las notificaciones que envíen las aplicaciones. Es posible enviar notificaciones mediante notify-send incluido en el paquete libnotify y enviar notificaciones personalizadas. El aspecto de dunst se puede personalizar mediante un archivo de configuración. img

  • nm-applet

    nm-applet funciona como un ícono en la bandeja del sistema para ver y administrar las conexiones de internet. Muy útil para agregar redes wifi o simplemente confirmar que se esté conectado al internet. Una ventana más compleja aparece como opciones avanzadas que permite una administración algo más profunda. img

  • networkmanager-dmenu

    Una alternativa para nm-applet que utiliza dmenu para mostrar las opciones de conexión disponibles. Permite una administración básica de las redes disponibles mientras que una interfaz más completa se ofrece mediante nm-applet. img

  • ClipIt

    Un gestor del portapapeles sencillo que vive en la bandeja del sistema. Posee un historial de lo que se ha copiado y permite administrar todo el texto que se copie al portapapeles. img

  • Volumeicon

    Un sencillo applet para la bandeja del sistema que permite ver el volumen, incluye unas cuantas opciones de personalización, como usar las teclas de volumen para controlar el applet. img

  • Scrot

    Siempre viene útil tomar una captura de pantalla, y para ello podemos usar Scrot, una utilidad CLI para tomar capturas de pantalla. Es muy simple y sencilla pero posee algunos comandos como retrasar la captura.

  • Flameshot

    Si scrot es muy simple, entonces Flameshot es la aplicación que buscamos. Permite elegir la zona a la que se le tomará captura, escribir sobre la captura antes de tomarla e incluso subirla a imgur. img

Otros

Aquí incluyo una selección de aquellas aplicaciones que, en mi consideración, funcionan bien fuera de entornos de escritorio completos, y quedan bien en entornos minimalistas que se usan principalmente con el teclado.

  • Thunar

    El gestor de archivos de XFCE es uno, sino es que el mejor gestor de archivos para linux. Funciona sin problemas como un programa independiente y ofrece varias opciones interesantes como entradas personalizadas al menú de clic derecho, plugins y una interfaz moderna. img

  • Ranger

    Un gestor de archivos en terminal bastante completo, que incluye desde opciones avanzadas de búsquedas hasta previsualización de imágenes y comandos personalizados. Está escrito y configurado en Python, lo que lo vuelve sencillo pero poderoso a la vez. img

  • lf

    Un clon de Ranger escrito en go, lo que lo vuelve más rápido que su original en Python, además incorpora opciones avanzadas como scripts personalizados dependiendo el tipo de archivo y atajos de teclado personalizados img

  • nnn

    Un administrador de archivos muy rápido y sencillo, con una gran cantidad de plugins (scripts de bash) que lo hacen más útil aún. Es más minimalista que los anteriores pero igual de útil. img

  • feh

    Un visor de imágenes simple que dedica a hacer eso: visualizar imágenes. Es posible rotar y transformar las imágenes, así como colocarlas como fondo de pantalla, todo mediante atajos de teclado y sin ningún ícono o barra de herramientas innecesaria. img

  • Sxiv

    Otro visor de imágenes simple, muy parecido a feh pero con opciones interesantes como ejecutar scripts a una imagen o ver todas las imágenes en una carpeta como galería. img

  • mpv

    Mpv es un reproductor de videos muy sencillo en interfaz pero bastante poderoso. Incluye una interfaz de reproducción mínima y es compatible con una gran cantidad de formatos multimedia. Al igual que sxiv y feh, es posible controlarlo (y hay cosas que solo así se pueden lograr) totalmente mediante el teclado gracias a atajos personalizables. img

  • Zathura

    Un lector de PDF y otros formatos minimalista. Permite leer documentos sin la distracción de barras de herramientas o menús innecesarios, es controlable mediante el teclado y es posible cambiar los atajos que se utilizan. Para que funcione es necesario instalar plugins extras dependiendo de los formatos que queramos leer. img

  • Ncmpcpp

    NCurses Music Player Client Plus Plus (si, eso significa) es un cliente para MPD que se ejecuta en terminal. Posee una enorme cantidad de opciones, desde ver la letra de las canciones hasta editar las etiquetas y generar visualizaciones. Es compatible también con mopidy, lo que significa que podríamos escuchar Spotify desde ncmpcpp. img

  • Terminal

    Hay muchas terminales disponibles. Aquí no me siento confiado en recomendar una en específico ya que la mayoría son muy parecidas, diferenciándose en las opciones de personalización. Xterm, termite y urxvt son muy populares; st es la que uso pero su configuración requiere parchear y recompilar cada ocasión; xfce-terminal y lxterminal funcionan a la perfección sin su respectivo entorno. Lo que si no puedo recomendar son terminales como gnome-terminal o konsole, pues vienen con una gran cantidad de dependencias.

  • Editor de texto

    Nuevamente, esto es cuestión de gustos y no me atrevo a recomendar uno específico. Para tareas rápidas Mousepad y Nano son muy útiles, si se quiere un editor gráfico o en terminal, respectivamente. Para tareas más avanzadas quizá VIM o Emacs son más apropiados, o si se trabaja con código se prefiera trabajar con VSCode o algún otro IDE. img

La primer pregunta cuando que le pasa por la cabeza a las personas si les dicen que abandonen Google y sus servicios en su celular es “¿y cómo voy a hacer , si no podré usar ?“. Afortunadamente hay muchas alternativas libres, disponibles en F-droid o en repositorios individuales para las aplicaciones más comunes (y otras no tanto), así que a continuación dejaré una recopilación de las mejores aplicaciones que yo he probado con las cuales no se extrañará casi nada a Google.

Tienda de aplicaciones.

Reemplaza a Play Store

  • F-droid: La primer “tienda” que hay que descargar es F-droid, un repositorio de aplicaciones libres desde el cual podremos descargar y actualizar nuestras aplicaciones totalmente libres.

img

  • Aurora Droid: Una aplicación alternativa para conectarse a F-droid con una apariencia mucho más atractiva.

img

  • Aurora Store: Lo admito: no todas las alternativas libres disponibles valen la pena, algunas son malas, quedan a deber, o definitivamente no existen. Si hemos renunciado a Google en nuestro Android pero hay alguna aplicación a la que aún no podemos renunciar, la mejor manera de descargar aplicaciones de Play Store es con Aurora Store; además de tener una apariencia muy atractiva nos permite conectarnos sin necesidad de tener cuenta, además nos informa de los trackers que tengan las aplicaciones, protegiendo nuestra privacidad.

img

Reemplaza a Chrome

  • Fennec: Se trata de Firefox pero sin los complementos privativos de este último. Posee todas las características del navegador de Mozilla.

img

Correo

Reemplaza a Gmail

  • Fair email: Un cliente de correo, funciona con protocolos como IMAP por lo que puede usarse con una cuenta de gmail o de outlook. Tiene varias características centradas en la privacidad y está en constante desarrollo.

img

  • Tutanota: Tutanota es un servicio de correo enfocado en la privacidad y con sede en Alemania. Su servicio gratuito ofrece 1 Gb. de almacenamiento, varios dominios para elegir y encriptación punto a punto de todos los mensajes. Su cliente para android está disponible para su descarga en F-droid.

img

Calendario

Reemplaza a Google Calendar, el calendario propio de cada compañía

  • Simple Calendar: Una aplicación de calendario sencilla, personalizable en los colores y aspectos de la interfaz, además permite sincronización mediante CalDAV o archivos .ics.

img

Nube y sincronización

  • Nextcloud: Nextcloud es un servicio de almacenamiento en la nube selfhost donde uno mismo debe montar su propio servidor, de esta forma la privacidad está asegurada gracias a que la información está en nuestros propios ordenadores. La aplicación para Android está disponible en F-droid y ofrece lo común en este tipo de servicios. Para comenzar a usar Nexcloud sin tener que pasar por todo el proceso de montar un servidor en https://nextcloud.com/signup/ se pueden encontrar sugerencias de proveedores que usan Nextcloud.

img

  • Syncthing: Un servicio de sincronización p2p, donde los dispositivos se sincronizan entre sí en red local. No hay servidores remotos, cada dispositivo en un servidor, de esta forma, la información se mantiene en los dispositivos que deseamos sincronizar únicamente.

img

  • DAVx⁵: La mejor manera de sincronizar nuestros calendarios con algún servicio en la nube es CalDAV, un protocolo similar a WebDAV que permite sincronizar calendarios y listas de tareas. Muchos servicios de calendarios como Outlook, Google Calendar o Nextcloud permiten el uso de CalDAV, y la aplicación que se encarga de hacer la sincronización es DAVx⁵. De esta forma se puede tener calendarios sincronizados, sin importar el servicio de almacenamiento en la nube que usemos.

img

Cámara

Reemplaza a Google Camera, la aplicación de cámara de cada compañía

  • Open Camera: Una aplicación de cámara muy completa, con opciones avanzadas para tomar fotos y que da como resultado fotos de gran calidad. Su interfaz es algo (muy) anticuada pero funcional.

img

Galería

Reemplaza a Google fotos, la galería propia de la compañía

  • Simple Gallery: Una galería muy personalizable, me recuerda en momentos a QuickPic. Tiene muchas opciones para organizar y administrar las fotos y videos en la memoria del teléfono.

img

Toma de notas y listas de tareas

Reemplaza a Google Keep, Evernote, Todoist

  • Markor: Un editor Markdown que nos permite tomar notas y hacer listas de tareas en formato todo.txt. Una aplicación muy completa que puede ser utilizada tanto como aplicación de notas sueltas como un completo editor Markdown.

img

  • Orgzly: Una aplicación de lista de tareas que usa el formato org-mode para almacenarlas. Cuenta con varias de las características propias de org-mode como son las etiquetas, prioridades, agenda, la capacidad de “doblar” las notas de un encabezado, entre otras opciones.

  • SimpleTask: Otra aplicación de lista de tareas, esta vez usando el formato todo.txt, lo que la hace más sencilla para usarse con (y quizá enfocada a) el sistema GTD. Cuenta con la posibilidad de crear filtros complejos y añadir scripts en LUA para mejores filtrados.

  • Omni Notes: Si se busca una aplicación más parecida a Google Keep, Omni Notes es la alternativa perfecta. Permite hacer notas con dibujos, audios, imágenes, checklist y texto.

img

Lector de noticias

Reemplaza a Feedly, Flipboard, Google Kiosco

  • Feeder: Un lector RSS simple que añade el feed RSS de cualquier URL soportado, convierte la página web en texto plano para poder leerlo incluso sin conexión, permite activar notificaciones de aquellos canales que más nos interesen, entre otras opciones.

img

  • Flym: Un lector de noticias que permite añadir fácilmente nuevas fuentes de noticias. AL igual que Feeder descarga la página en texto plano para poder leerla cómodamente.

img

Música y videos

  • VLC: El reproductor de video por antonomasia es FLOSS y está disponible en F-droid. VLC reproduce prácticamente cualquier formato de audio o video y es totalmente configurable hasta en aspectos muy avanzados como son códecs y demás.

img

  • Phonograph: Además de una gran interfaz muy agradable, Phonograph posee un editor de etiquetas, editor de letras y varias configuraciones. Es un reproductor normal, pero su gran interfaz y lo redondo de sus opciones de configuración lo vuelven uno de mis favoritos.

img

  • Music Player GO: Un navegador muy minimalsta, cuya personalización se limita a elegir uno de los varios tonos pasteles con los que cuenta y poco más. Cuenta con una interfaz unificada así que no hay que moverse entre mil pantallas diferentes, todo está en una sola. Es un reproductor muy simple que se limita a reproducir música, pero hay una atracción en esa simpleza que me hace volver a él constantemente.

img

  • NewPipe: Newpipe permite reproducir videos desde YouTube sin enviar casi información a Google. Permite “suscribirse” a canales, ver videos (se puede en ventana flotante fuera de la app, y sin pagar), descargarlos tanto en audio como en video, crear listas de reproducción, importar y exportar nuestras suscripciones, entre otras características que envidian poco o nada a la app oficial de YouTube.

img

Redes sociales

Reemplaza a Facebook, twitter y demás

  • Frost for Facebook: Frost es un cliente para Facebook (en realidad, una forma más cómoda de acceder a la web de Facebook) con varias opciones interesantes como varios temas, multicuenta y un peso mucho, mucho menor al de la app de facebook.

img

  • Twidere: Un cliente para varios servicios de microblogging, entre ellos Twitter. Twidere ofrece todas las opciones que se pueden buscan en un cliente de Twitter, como ver post, comentarlos, ver y descargar imágenes, seguir usuarios, crear listas, ver tendencias y mucha personalización.

img

  • Slide: Un cliente para Reddit con muchas opciones de personalización y para hacer más cómoda la experiencia en reddit. Es posible ver post, comentar, suscribirse a subreddits, ver imágenes directamente aunque estén alojadas en servers externos y muchas opciones más.

img

Otros

  • Pocket Maps (reemplazo de Maps): Una app para ver y descargar mapas desde OpenStreetMaps

  • DuckDuckGo (reemplazo de Google Now): Un navegador simple con muchas opciones de privacidad enfocado en hacer búsquedas rápidas, justo como Google Now.

  • Pdf Viewer Plus (reemplazo de Adobe Reader): Un lector de Pdf sencillo que hace justo eso: abrir Pdf's

  • File Manager: Un navegador de archivos sencillo, con una interfaz muy agradable y moderna.

Cómo usuario de Emacs he tratado de llevar su uso a la mayoría de los aspectos de mi vida, y uno donde no podía faltar era, por supuesto, en mi trabajo. Como profesor de matemáticas, una de las principales tareas que realizo es planear mis clases, así que dediqué un tiempo en construir un sistema que me permitiera planear mis clases, llevar control sobre ellas y presentar mis planeaciones en un formato legible para el humano promedio. A continuación comparto lo que he logrado hasta ahora.

¿Cómo planeaba antes?

Aprendí a planear clases durante formación como docente, en aquella época se me dio una plantilla de MS-Word y con ella trabajaba. El problema de esta plantilla es que MS Word (y Libre Office también en ocasiones) hacen una tortura manejar tablas; en incontables ocasiones la tabla se movía, se negaba a cambiar su tamaño, a añadir nuevas filas, y en más de una ocasión fue más sencillo reiniciar todo el trabajo que arreglar la tabla que ya tenía.

img

Por alguna misteriosa razón, todos los profesores que conozco utilizan un formato similar en tabla, pero colocan todo dentro de una sola celda, es decir, la tabla funciona más que nada como “marco” para la hoja. Dado que nada me obligaba a mantener ese formato tan enfadoso de escribir decidí eliminarlo, sin embargo, la información que contiene se mantiene prácticamente intacta.

Seleccionando las herramientas

El formato elegido para trabajar fue Org-mode, un formato que, curiosamente, uso para todo, menos para organizar mi día. Org-mode posee la sencillez de escritura de Markdown, el poder de LaTeX (especialmente para escribir fórmulas), la capacidad de exportar en varios formatos, capacidad de seguimiento de hábitos, entre otras muchas bondades que lo hacen sumamente poderoso y a la vez (casi siempre) fácil de usar.

Gracias a su capacidad de “doblar” los encabezados me permite ver solo la sección que me interesa en el momento y mantener “dobladas” el resto de forma que no interrumpan mi lectura, y su capacidad de exportar en PDF con LaTeX me permite generar un documento rápidamente para entregar a la dirección de la escuela.

Describiendo el sistema

Al abrir alguna de mis planeaciones lo primero que encontramos es un encabezado llamado “org-data” acompañado de una etiqueta :noexport:; este encabezado incluye todas las opciones de org-mode y LaTeX:

#+title: PLANEACIÓN DIDÁCTICA
#+author: Yo
#+options: toc:nil date:nil num:nil p:nil tags:nil todo:nil
#+seq_todo: COMENZADO(t!) | TERMINADO(d!)
#+startup: indent
#+startup: logdrawer
#+latex_class: koma-article
#+latex_header: \usepackage{lmodern}
#+latex_header: \fontfamily{lmss}\selectfont 
#+latex_header: \usepackage[margin=1in, letterpaper]{geometry}
#+latex_header: \usepackage[spanish]{babel}
#+latex_header: \usepackage{fancyhdr}
#+latex_header: \setlength{\headheight}{15.2pt}
#+latex_header: \pagestyle{fancy}
#+latex_header: \chead{\bfseries ESCUELA SECUNDARIA \\ "nombre de la escuela" \\ SECUENCIA DIDÁCTICA}
#+latex_header: \lhead{\includegraphics [width=2cm]{/path/to/escudo.png}}
#+latex_header: \rhead{\includegraphics [width=2cm]{/path/to/otro-escudo.png}}
#+latex_header: \cfoot{}
#+latex_header: \renewcommand{\headrulewidth}{0pt}
  • title y author: Incluyen el título y mi nombre, para que aparezcan al exportar a PDF
  • options: Las opciones de exportación de org-mode. Evitan que genere un índice, la fecha de creación, que numere cada encabezado, que exporte las etiquetas y las secuencias TODO
  • seq_todo: La secuencia de TODO, en lugar de mostrar TODO y DONE, mostrará COMENZADO y TERMINADO. El signo de admiración añade la fecha cada vez que se modifica el estado TODO del encabezado.
  • startup: indent: Añade un sangrado de manera que el contenido de los encabezados estén alineados con el subnivel al que pertenecen.
  • startup: logdrawer: Guarda las notas y las fechas cuando cambia el estado TODO en un drawer llamado LOGBOOK.
  • latex_header: Órdenes de LaTeX, necesarias para darle formato al PDF que se genere. Entre otras cosas, definen los márgenes, el tipo de papel y el encabezado de las páginas.

La mayoría de esas instrucciones las descubrí en el momento, googleando lo que quería lograr y encontrando la información en foros y en el manual de Org-mode.

El siguiente encabezado que vemos es uno llamado “DATOS GENERALES”, donde incluyo la misma información que en la sección del mismo nombre en el viejo formato de Word, con al diferencia que aquí he vertido la información como una lista.

Un tercer encabezado se llama “PRIMER TRIMESTRE” y aquí es donde comienza el verdadero trabajo.

Las secuencias y las sesiones

Cada trimestre de la clase de matemáticas está dividido en una serie de Secuencias (o contenidos), cada secuencia se divide en sesiones de 50 minutos, y estas a su vez, en 3 momentos: inicio, desarrollo y cierre.

Existen dos formas de planear una secuencia, cada una con sus ventajas y desventajas:

  • Planear por secuencia: Se planea el inicio, desarrollo y cierre de una secuencia didáctica de varios días. Es más sencillo de planear y más rápido, pero también más ambiguo y con mas oportunidad a la improvisación.
  • Planear por sesión: Se planea el inicio, desarrollo y cierre de cada una de las sesiones que componen la secuencia. Esta forma es más tardada y más compleja, pero añade más puntos de control y elimina mucha de la ambigüedad que hay en el otro método.

Personalmente soy partidario del segundo método, aunque he probado ambos y mucho tiempo preferí planear por secuencias, hoy encuentro más provechoso tener claro el trabajo en cada una de las sesiones de trabajo.

Todas las sesiones comienzan con los organizadores curriculares, que he vertido de la siguiente forma:

\dotfill
** Secuencia 1  (# de sesiones: fecha/inicio --> fecha/cierre)
Nombre del contenido o secuencia
- **Aprendizaje esperado:**
- **Eje temático:**
- **Tema:**
- **Consideraciones previas:** 

\dotfill

Como cada secuencia comienza con exactamente los mismos datos, he creado una plantilla de YASnippet, de manera que solo escribo sec + TAB y se despliega toda la plantilla, al presionar TAB al siguiente elemento y puedo llenarla sencillamente.

Dos elementos quizá llamen la atención. El primero, la orden \dotfill; esta es una función de LaTeX que añade una línea punteada, solo sirve para separar los organizadores curriculares del resto de la información. El segundo elemento que llama la atención lo hace por su ausencia, ¿por qué escribo las fechas de una forma tan informal en lugar de usar alguna de las muchas opciones que Org-mode ofrece? La razón es que el formato de org-mode (es decir, el estándar ISO) es bastante confuso para lo que estoy acostumbrado, y, aunque me permitiría usar la agenda, tuve algunos problemas que explicaré más adelante.

Ahora toca llenar cada una de las sesiones que componen la secuencia. Para esto, nuevamente he usado una plantilla de YASnippet:

*** Sesión 1

**** Inicio (  min.)
- 

**** Desarrollo (  min.)
- 

**** Cierre (  min.)
- 

**** Recursos
- 

**** Evaluación
- 

Esta plantilla me permite escribir rápidamente el número de la sesión de la que se trata, la cantidad de minutos dedicados a cada momento, y finalmente, redactar las actividades que se realizarán en cada momento, los recursos necesarios para la sesión y los métodos de evaluación. Nuevamente, los mismos datos que en el formato anterior.

Extras que solo Org-mode ofrece

Hasta aquí, salvo la automatización de YASnippet, no he alcanzado nada muy interesante. Pero las bondades de Org-mode comienzan a verse a partir de aquí.

Al comenzar cada secuencias y cada sesión, cambio el estado TODO a COMENZADO, automáticamente se añade la fecha dentro de un drawer llamado LOGBOOK, al terminar la sesión o secuencia cambio nuevamente el estado TODO a TERMINADO, esto me permite no solo llevar un control de qué clases ya impartí y donde voy, sino también el día en el que las comencé, esto con el fin de llevar un seguimiento de las fechas y ver si voy cumpliendo con las fechas que me propuse.

img

Un elemento que se puede ver en la plantilla de Word y que no he agregado aquí es el de “ADECUACIONES”, este apartado sirve para anotar aquellos cambios que he decidido hacer a mi clase. Con Org-mode logro esto presionando C-c C-z sobre el encabezado donde quiero hace mi adecuación (o una anotación) esto abre un buffer donde puedo escribir y guardo mi nota con C-c C-c. El resultado es un pequeño texto así:

        - Nota tomada el [2019-09-13 vie] \\
        Adecuación realizada

Esta nota se almacena dentro del LOGBOOK.

Una última característica a la que saco provecho es a Org-capture y la función Diario. Los profesores llevamos generalmente un Diario de Clase, aunque cada quien lo diseña de diferente forma, yo apunto en él los elementos o sucesos más relevantes de la sesión y que deseo registrar para futuras referencias. En mi init.el tengo la siguiente plantilla:

        (global-set-key (kbd "C-c c") 'org-capture)
        (setq org-capture-templates
              '(
        	("d" "Diario" entry
        	 (file+olp+datetree "/path/to/DIARIO.org")
        	 "* %?" :prepend t)))

Al presionar C-c c d un buffer aparece y me permite escribir una entrada normal. Esta entrada se almacena en un archivo llamado DIARIO.org y automáticamente llena los encabezados del año, mes y día, de manera que el diario luce algo así:

img

Las etiquetas las agregué yo presionando C-c C-q al momento de escribir los encabezados, de forma que me facilite un futuro filtrado.

Exportando a PDF

Si entrego al director el archivo .org y lo abre en el bloc de notas me lo va a devolver con la misma. Necesito entregarlo en un formato legible por una persona normal, y ese formato es PDF. Las órdenes de LaTeX establecidas al inicio ya le dan formato al documento, y el drawer LOGBOOK, por defecto, no se exporta, eso permite generar un documento limpio que puedan leer o imprimir para archivarlo. El resultado luce más o menos así (censuro el nombre de la escuela y los escudos por seguridad):

img

TODO

Quedan muchos aspectos en los que debo trabajar para que mi sistema sea más cercano a la perfección:

  • Uso de la agenda: No he encontrado la forma (si es que existe) de excluir los fines de semana de la agenda
  • Uso de enlaces a otros archivos: Tengo libros y demás materiales que uso diario, enlazarlos podría acelerar el proceso de buscarlos y abrirlos
  • Mejorar el PDF resultante: lo admito, se ve feo, la tabla de Word será todo lo que quieran, pero se ve bonita.

Pese a que quedan cosas por mejorar, considero que he logrado un sistema funcional, sencillo de seguir (una vez ya establecido) y que me permite centrarme en diseñar mis clases, y no en acomodar una horrible tabla. Claro que para alcanzar este sistema tardé varios días buscando e ideando como hacer lo que quería, y creo que justo ahora estoy cerca del formato perfecto para planear clases. Al menos para mi.

Por cuestiones de trabajo, he tenido la necesidad de mudarme a un pueblo lejos de la ciudad, un pequeño pueblo pesquero de unos tres mil habitantes. No es que yo viviera en la capital del mundo, pero sí en la capital de mi estado, y como tal, vivía en una ciudad pequeña, pero con la inseguridad, la indiferencia y los servicios públicos y privados que se puede esperar de una población urbana. Si bien mi conexión a internet no era la mejor, e incluso muchas veces renegué de ella, lo cierto es que me funcionaba para ver videos a 720p, navegar de una manera decente en internet y mantener mi instalación de Arch Linux al día. Nada de eso puedo hacer ahora, al menos no con la misma facilidad.

El internet en el pueblo donde llegué es sencillamente malo. Las velocidades de descarga son de 50 kbps en sus mejores momentos y ver videos, incluso a 144p, es a veces imposible. Los datos móviles no son una opción tampoco pues no alcanzamos ni el 3G. En esta situación, poco antes de mi viaje decidí formatear mi partición root y decirle adiós a Arch, al menos por un año, y reemplazarla por Debian 10.

No es la primera vez que uso una distro basada en Debian, mas si la primera vez usando el mismo Debian, y la verdad, he encontrado más dificultades aquí que en Arch. Uno pensaría que por tener un instalador CLI, configurar el sistema sería difícil, pero es curioso como en Debian he tenido más problemas para dejar funcionando ciertos paquetes.

En primer lugar me decanté por la versión net-install con una configuración muy mínima, pues al usar BSPWM no necesito un entorno de escritorio completo. Ya estaba preparado para encontrarme con paquete viejos (bspwm está como 3 versiones atrasado), lo que no esperaba era que, a pesar de presumir más de 86 mil paquetes en sus repos, paquetes como Polybar o Light no están disponibles, y su instalación desde el código fuente puede ser dolorosa, puesto que las dependencias usan nombres diferentes en Debian y están más segmentadas: lo que en Arch era uno o dos paquetes en Debian son cinco o seis. Cabe decir que varios de mis scripts simplemente no funcionaron en Debian y tuve que hacerles ciertas modificaciones.

En cuanto al tema de la estabilidad, bueno, hasta ahora, no me ha crasheado ningún programa solo o me ha dado un comportamiento extraño, solamente Flameshot se traba si establezco una ruta para guardar las fotos en la línea de comandos, y Dunst se niega a arrancar automáticamente mediante D-bus como lo hacía en Arch, aunque es pronto para dar una opinión completa.

En resumen, durante estas dos semanas, usar Debian ha sido algo interesante, he podido restaurar mi workflow casi por completo, y digo casi porque quizá se me esté olvidando algo. No obstante, debo decir que la experiencia para mi, en Arch, fue superior en los primeros días, y extraño aspectos como AUR que facilita muchísimo la instalación de paquetes fuera de los repos oficiales, pero ya que depende muchísimo del internet me fue necesario migrar a otra distribución. Esperaré a las siguientes semanas para fijar definitivamente una opinión, por ahora hace un muy buen trabajo, pero no me ha hecho olvidar a mi querido Arch Linux.

Finalmente les dejo una captura de mi escritorio como luce actualmente:

Rice

El 17 de abril, hace aproximadamente 3 meses, decidí instalar LineageOS 14 en mi smartphone, un humilde Samsung Core 2 que la comunidad ha mantenido vivo para llevar a él Android 7, a pesar que Samsung lo dejó en Android 4.4.2. Durante la instalación decidí no instalar las Gapps, las aplicaciones de Google con el fin de ahorrar (mucho) espacio y recursos, además de experimentar la vida sin Google, esto antes que el tema fuera puesto en al mesa por Huawei.

¿Cómo ha sido? ¿Ha sido imposible de usar? ¿Sólo sirve para llamadas? La verdad es que no. He reemplazado la mayoría de las aplicaciones que usaba con alternativas libres, mucho más ligeras pero no por ello menos poderosas, y siento que mi teléfono funciona mejor ahora que cuando estaba lleno del bloatware de Google. A continuación mencionaré que alternativas uso ahora y mi experiencia con ellas.

Reemplazando Play Store

El primer paso fue reemplazar la tienda de apps de Google, que obviamente no tenía disponible. Decidí instalar 3 apps:

  • F-droid: La primer “tienda” es F-droid, posee un catálogo de aplicaciones libres y me permite descubrir, instalar y actualizar aplicaciones. Esta es mi primera opción cuando busco aplicaciones y donde bajo la enorme mayoría de ellas.

  • Aurora Store: Una alternativa a Play Store, se conecta a Google utilizando credenciales anónimas y permite bajar aplicaciones de Play Store. Tiene una interfaz mucho más agradable que la app de Google y además permite ver los trackers que posee la aplicación que abrimos. Las apps de paga no podremos bajarlas a menos que usemos nuestras credenciales. La uso para aquellas apps que necesito y tristemente solo están en Play Store.

  • XDA Labs: Nacida en XDA, ofrece varias aplicaciones desarrolladas por usuarios del foro, además permite acceder a los foros y tiene una sección para módulos Xposed. Casi no la uso pues su catálogo es algo limitado, pero hay algunas apps interesantes ahí.

Con mis nuevas y flamantes tiendas fue momento de buscar alternativas para varias de las aplicaciones que usaba.

Reemplazando Nova Launcher

Durante varios años, Nova fue mi launcher por defecto, siempre volvía a él después de unos días u horas experimentando en otros, pero ahora no podía volver, al menos no a la versión de pago que compré hace unos años y sin la cual Nova pierde todo su potencial.

Tras ver las alternativas disponibles decidí decantarme por KISS Launcher (F-droid) un lanzador minimalista, sencillo y que no consume casi recursos, pero con algunas opciones bastante interesantes. Su interfaz me gustó mucho aunque tuve que acostumbrarme a vivir con un solo widget y sin mil iconos en la pantalla de inicio; en consecuencia mi inicio se ve mucho más limpio ahora y sin tantos iconos que jamás uso.

Reemplazando Youtube

Youtube es quizá la aplicación que más usaba, pero sin los Servicios de Google se niega a funcionar. Una opción era usar un navegador pero la experiencia es algo negativa. La alternativa la encontré en NewPipe (F-droid), una aplicación para navegar youtube sin necesidad de una cuenta, solo hay que importar nuestra lista de subscripciones.

NewPipe permite ver comentarios (mas no comentar), ver videos en ventana flotante dentro y fuera de la aplicación, poner videos en segundo plano, descargar video y audio y varias otras funciones que la aplicación oficial no tiene, como diferentes velocidades y resoluciones. Siento que, en muchos aspectos, NewPipe es superior a la aplicación oficial de Youtube.

Reemplazando Chrome

Lineage OS incorpora un navegador, pero no es muy especial, además usa Webkit, lo que implica que muchas páginas no funcionen bien. Para reemplazarlo en F-droid hay varias versiones de Firefox, como Firefox Lite y Fennec, sin embargo, Firefox siempre me ha funcionado lento y a veces tarda hasta un minuto en dejarme escribir algo en la barra de búsqueda, por lo que, aunque quisiera, no uso Firefox.

Decidí usar Brave Browser (disponible en Aurora Store), un navegador Open Source con un gran bloqueador de anuncios y que funciona muy bien. Me molesta un poco el hecho que esté basado en Chromium, y que no esté disponible en F-droid da que hablar, pero por el momento, no he encontrado nada mejor.

Reemplazando Maps

Maps casi no la uso, pero la alternativa perfecta es OpenStreetMaps, que tiene un par de apps en F-droid. Mi problema es que OpenStreetMaps está prácticamente vacío para mi ciudad: unas cuantas calles importantes si están mapeadas, pero muchas, incluida mi casa, no. Me veo obligado a usar Maps, en el navegador, para ubicar calles y negocios. Al menos no tengo la app instalada.

Reemplazando G-mail

Ya no tengo acceso a la app de gmail oficial, la cual, he de decir, nunca funcionó bien, nunca actualizaba, las notificaciones llegaban cuando quería, y en muchas ocasiones he tenido que ir a una PC para ver y enviar correo porque la app quedaba en “no se pudo sincronizar”. La alternativa que encontré fue K9Mail, que a pesar de su interfaz anticuada, hace perfectamente su trabajo.

No obstante, ahora uso mi correo de gmail solo porque algunas convocatorias laborales a las que entré, usé ese correo para registrarme, ahora uso Tutanota como servicio de correo, que tiene app en F-droid y ofrece muchas opciones de privacidad. Espero poder deshacerme de mi correo de gmail pronto.

Otras aplicaciones que uso

Hay otras aplicaciones que uso, no tan relevantes como las anteriores, pero que considero que valen la pena ser mencionadas:

Comentario
Aplicación Es alternativa para
Feeder Feedly, Flipboard Un lector RSS, para seguir mis noticias. Funciona offline.
Forecastie Apps de clima, AccuWeather Una app sencilla para ver el clima desde OpenWeatherMap.
Simple Gallery Pro Fotos, QuickPic Un visor de imágenes muy completo, con opciones para editar imágenes.
Red Moon Twilight Aplica un filtro de luz azul a ciertas horas. Es casi igual a Twilight, pero gratuito y libre.
Markor Keep, EverNote, iA Writer Una app de notas, con soporte para Markdown y Todo.txt
Orgzly Todoist, Google Task, Any.do Permite crear listas de tareas, posee agenda y guarda los archivos en formato [Org Mode](https://orgmode.org/). Usuarios de Emacs sabrán sacarle provecho.
Slide for Reddit Reddit for Android Un cliente muy completo para Reddit.
Tachiyomi Manga Master, Manga Rock Un lector de manga, permite conectarse a varias fuentes a través de plugins.
Telegram FLOSS El cliente oficial de Telegram Telegram, pero libre y disponible en F-droid. No he encontrado mayores diferencias salvo los emojis usados.
Twidere Twitter for android Un gran cliente para Twitter, Mastodon y otras redes.

Sin embargo, y pese a mis esfuerzos, hubo aplicaciones que no pude reemplazar por alternativas libres, pero que funcionan bien, aún sin los servicios de Google

  • MiXplorer: Un explorador de archivos super completo. No he encontrado otro explorador gratuito que se le acerque en cuanto a funciones se refiere.
  • Lithium: Un lector EPUB ligero y bonito. En F-droid hay muy pocos, y son malos, pesados o la experiencia de uso no es tan buena.
  • Spotify: ¿Qué más puedo decir? Jamendo tiene música buena pero no tiene lo último de Dream Theater.
  • Whatsapp: Mis compañeros lo usan, mis familiares lo usan, mis amigos lo usan. Hay alternativas, pero sin la gente con la que quiero hablar no me sirven.

La vida sin Google, ¿Es para todos?

No. Requiere algo más de esfuerzo por parte del usuario, esfuerzo que no todos están dispuestos a dar, sin embargo, no tener apps de Google en el teléfono no es malo, al contrario. Estoy seguro, y he visto, la mayoría no tiene idea de las aplicaciones que gentilmente Google preinstala para ellos: lectores de PDF, apps de notas, galerías, mensajería, música, etc. En lugar de si quiera abrirlas para ver que hacen van a descargar otra, con publicidad o de paga. Así que vivir sin estas aplicaciones no es el fin del mundo, es más, la mayoría ni las usa.

Si se animan a hacerlo y su garantía se los permite, invito a todos a instalar una custom ROM o desinstalar todas las Gapps de sus dispositivos. Ahorrarán mucho espacio, liberarán recursos, su privacidad estará más segura y podrán utilizar alternativas mejores.

No me malentiendan, amo Plasma 5, me encanta su interfaz, su gran personalización, sus widgets o plasmoides, su propia tienda de complementos que permite bajar temas y extensiones sin abrir el navegador, y podría seguir mencionando muchas razones por las cuales Plasma es quizá mi DE favorito. A pesar de eso, un día me bastó para volver a mi frugal BSPWM. ¿La razón? Hay varias.

Plasma 5 es más pesado que BSPWM

BSPWM consume aproximadamente 200 Mb al arranque mientras que Plasma consume casi 500 Mb, ambos se mantienen entre 1 Gb y 2 Gb cuando lo utilizo, así que esa diferencia en consumo no me afecta durante el uso diario. En cuanto al peso, la instalación de BSPWM es de apenas 0.24 Mb, la de Plasma es de casi 500 Mb, eso en su versión más minimalista, hacen falta otros 100 o 200 Mb para que esté más completo. Sin embargo, le he dedicado 50 Gb a mi partición root, ese espacio ocupado no me molesta en lo absoluto.

Lo que si es molesto es que Plasma es “pesado”. Tarda mucho más en encender y en apagar, abrir una aplicación toma más tiempo, y la respuesta del sistema en general se siente más torpe. Me di cuenta, algo preocupado, que en cierto momento, los botones de función (volumen, brillo, activar touchpad, cambiar canción) simplemente dejaron de responder, o lo hacían con un retraso de varios segundos. Cuando necesité mutear mi PC no pude.

La configuración de Plasma es más molesta que la de BSPWM

Los detractores de los Window Managers afirman que configurar mediante un archivo de texto es complejo, molesto y que hace difícil personalizar tu sistema. Si bien es cierto que hay que leer el manual para descubrir que podemos hacer con el sistema, a la larga editar un simple archivo es mejor y más cómodo que moverse entre varios menús. Por ejemplo, crear un acceso directo para una aplicación en plasma implica:

Abrir el panel de configuración —> Accesos directos —> Nuevo —> Seleccionar aplicación —> Crear la combinación de teclas —> Presionar aplicar

En BSPWM esto es:

Abrir un editor de texto —> Abrir el sxhkdrc —> añadir al final:

    <nombre de aplicación>
    	<combinación de teclas>
    
    # Ejemplo
    firefox
    	super + w

Todo desde la comodidad del teclado. De igual forma en BSPWM podemos editar todo en un solo archivo de configuración, en un solo lugar, sin necesidad de moverse entre un millón de menús y asistentes. Quizá exagero un poco la “complejidad” de usar una interfaz gráfica, pero siento que es mucho más rápido utilizar un archivo de configuración, sin contar que son mucho más portables que los de Plasma.

BSPWM está centrado en el teclado

Como usuario de Laptop, esto es muy importante para mi. Mi touchpad es bueno, no tengo ninguna queja de él, sin embargo, es más incomodo de usar que el teclado, y no quiero tener que cargar con un mouse a todos lados. Incluso buscando crear un entorno centrado en el teclado en Plasma, el uso general del entorno gráfico implica usar el puntero. En una PC de escritorio quizá me sentiría más cómodo usando un entorno gráfico centrado en el uso del mouse.

Me he acostumbrado al tiling

Me imaginé, cuando comencé a utilizar i3 y después BSPWM, que una vez comenzara con ellos, no podría volver atrás. He confirmado que ya no me siento del todo cómodo acomodando ventanas a mano, buscando que se encimen lo menos posible, para finalmente, terminar poniéndolas en mosaico una al lado de la otra. Cuando te acostumbras a los tiling window managers quieres llevarlo a todos los otros sistemas. Es cierto que Plasma tiene un par de Scripts de Kwin para usar modo “tiling”, muy bueno he de decir, pero que al final me hizo extrañar a BSPWM.

Hay cosas que extrañaré de Plasma también

Claro, no es como que Plasma sea una basura y haya salido huyendo de ahí. Hay muchas cosas que disfruté y extrañaré ahora que las he vuelto a vivir:

  • Un sistema moderno out of the box: incluso conectar un segundo monitor fue tan sencillo como conectarlo y ya, nada de scripts o pelearse con xrandr.
  • Las animaciones: Aunque no tan llamativas como las de compiz, pero Kwin tiene varias animaciones que hacen una delicia usar el sistema. Wobbly windows y magic lamp, mis favoritas.
  • El sentimiento de congruencia entre las aplicaciones: Todas las aplicaciones lucen igual, se comunican entre si, puedes responder las solicitudes una desde otra. Realmente se siente unificado el sistema. En BSPWM hay congruencia, pero no al nivel que Plasma logra con sus aplicaciones.
  • Kdeconnect: Obvio sigo usándolo, pero no es lo mismo, en Plasma hay un widget que muestra todas las notificaciones en el teléfono, y puedes responder los mensajes desde las notificaciones, eso no lo tengo en BSPWM.

A pesar de lo genial de Plasma, no es para mi en estos momentos. BSPWM y en general los window managers me han atraído, es cierto que debo scriptear un poco y armar un sistema “a mano” pero lo vale por la flexibilidad que ofrece. Quizá en el futuro, con un sistema más potente y en un escritorio, vuelva a darle la oportunidad a Plasma, que lo ha hecho genial, es un gran entorno de escritorio que no dudo en recomendar.

Hace aproximadamente 5 días decidí dejar Facebook finalmente, el problema es que a lo largo de estos diez años, Facebook ha sido parte integral de mi vida, y lentamente fue tomando un papel importante, no solo en la parte social, si no también para mantenerme informado y como medio de entretenimiento. Afortunadamente, ha sido bastante fácil para mi encontrar reemplazos a las funciones que la red social de Zuckerberg.

Red social

La principal función de Facebook es ser un espacio donde compartir ideas, pensamientos, situaciones y generar conversaciones. Curiosamente, al tener gente de “la vida real” en Facebook casi no me animaba a publicar en mi muro por vergüenza a que me dirían después, una o dos veces le respondí a su pregunta “¿qué estás pensando?”

Buscando una alternativa me topé con Mastodon, y con todo el fediverso. A pesar de ser microblogging, más parecido a Twitter que a Facebook, me he sentido bastante agusto ahí. El pseudo anonimato que da, el respeto a la privacidad y la comunidad mucho más relajada, un tanto alejada de la política que tan podrida tiene al pajarito azul, me ha hecho ser más social de lo que había sido en Facebook en mi perfil público. Mantengo una cuenta de Twitter, así como cuentas en reddit y otras páginas que podrían considerarse redes sociales, pero he terminado por usar principalmente Mastodon.

Cabe decir que, en mi caso, no tengo la necesidad constante de compartir fotos sobre mi vida, la mayoría de las fotos las conservo en dispositivos de almacenamiento como discos duros o memorias SD, y nunca he tenido mucho interés por mostrarles a todos lo que hago y compartirles fotos de mis logros en la vida, así que ese aspecto de la red social, al no existir en mi, no hace falta buscarle reemplazo; pero de llegar a necesitarlo algún día, PixelFed sería mi opción.

Feed de noticias

Con el tiempo, adopté a Facebook como una especie de canal RSS para mis noticias, ya sea de sitios que yo sigo o que mis amigos compartían. La respuesta a esto fue bastante simple y es una solución que ya venía intentando implementar sin éxito desde hace muchos años: un lector RSS.

En mi celular Android, después de probar algunas opciones, decidí instalar Feeder, un lector RSS simple, que descarga los textos para leerlos offline y me manda notificaciones cada determinado tiempo con los últimos artículos de las fuentes que yo elija (este comportamiento puede desactivarse, para aquellos que odian las notificaciones). Dado que generalmente solo leo los encabezados y abro los artículos que me interesan, las notificaciones me permiten dar un vistazo rápido a lo que está pasando.

En mi computadora uso newsboat, un lector RSS que se abre en la terminal, bastante potente que lo he comenzado a usar como una especie de cliente para youtube también. Tanto Feeder como Newsboat son aplicaciones separadas que no se sincronizan con ningún servicio ni entre dispositivos, una función linda, pero que no necesito.

Mantenerme en contacto con mis amigos

Facebook afirma unir gente. En lo personal, rara vez platicaba con otras personas en Facebook, ni estaba al pendiente de sus publicaciones para ver sobre su vida, eso ya se siente como ser mitotero. Resulta que la mejor forma de estar en contacto con mis amigos y saber sobre sus vidas es verlos en la vida real, salir con ellos y platicar con ellos.

Claro, vernos físicamente no siempre es posible, así que debemos utilizar algún servicio de mensajería. Messengger dejé de usarlo asiduamente como desde el 2014 o 2015, así que no lo extrañaré. En su lugar he usado Telegram o Matrix, pero el servicio que me veo obligado a usar, ya que es el que usan todos mis amigos, es Whatsapp, aquí no he podido abandonar Facebook, pero espero algún día poder pasar a una alternativa mejor, como Telegram o Signal.

Entretenimiento (videos y m e m e s)

La principal función que Facebook cumplía en mi vida: entretenerme. El caso de los videos es muy sencillo y la plataforma de videos por antonomasia es, tristemente, Youtube, al menos con Newpipe no mando casi información a Google sobre lo que hago.

El caso de los memes es más grave. Mastodon, aunque los tiene, no destaca por sus buenos memes. El humor de Twitter nunca ha sido muy de mi agrado, así que decidí ir a la fuente de los memes: 4chan y reddit.

4chan tiene un humor muy peculiar, y aunque tiene tablones específicos como /a/ o /vg/, las conversaciones suelen ponerse algo pesadas a veces. Reddit, por otro lado, es más normie, pero hay algunos subrredits que he comenzado a disfrutar, como r/hmmm, r/cursedimages, r/dankmemes y r/ShitPostCrusaders. Entre 4chan, reddit, y los memes ocasionales que llegan por otros lados como Mastodon o Twitter, me basta para no aburrirme a lo largo del día.

Mantenerme en contacto con mis intereses

La última función de Facebook en mi vida era mantenerme en contacto con mis intereses, y eso lo lograba gracias a los grupos y páginas. Reemplazar esto tampoco ha sido muy difícil, y un conjunto de las opciones que he mencionado antes cumplen esta función a la perfección.

Reddit, 4chan, los canales RSS y Mastodon me acercan a los temas de interés para mi, y el que las conversaciones sean en inglés, si bien limitan mi participación, no es un obstáculo para enterarme de lo último que pasa en el mundo de mis hobbies. Para estar en contacto con marcas o instituciones de gobierno es que mantengo una cuenta de Twitter, que casi nunca la uso, pero me ha servido un par de ocasiones para contactar con instituciones y obtener información.

En el margen de la huelga contra las redes sociales impulsada por el co-fundador de Wikipedia, he decidido finalmente dejar de usar Facebook, la única red social que he usado de forma asidua durante los últimos diez años. Aunque motivos para dejar de usar Facebook sobran, quisiera mencionar aquí aquellas que me impulsaron a finalmente hacerlo.

Facebook no respeta mi privacidad

Hace unos años, una amiga me platicaba que la razón por la que no llenaba todos los campos en su perfil de Facebook es porque, en caso de haber guerras o persecusiones, ese sería el método por el que nos buscarían. Su argumento no tiene nada de descabellado, el problema aquí es que Facebook ya sabe todo ella: su religión, su ubicación exacta, los lugares que frecuenta, sus gustos, sus intereses, quienes son sus amigos y sus perfiles, que hace dentro y fuera de Facebook, y mucho, mucho más. La empresa recolecta de todo, no solo lo que le decimos conscientemente.

Si leemos el aviso de privacidad de Facebook podemos ver, entre títulos coloridos y palabras amables, la información que recolectan. Entre ellas está la ubicación, la agenda telefónica, el dispositivo que usamos, la dirección IP del dispositivo que usamos, que haces en tu dispositivo, y por supuesto, todo lo que publicas en Facebook. Una de mis secciones favoritas de este aviso de privacidad es el que sigue:

...Estos socios nos brindan información sobre las actividades que realizas fuera de Facebook, incluidos datos sobre el dispositivo que utilizas, los sitios web que visitas, las compras que haces, los anuncios que ves y la manera en la que usas sus servicios, ya sea que tengas o no una cuenta de Facebook o hayas iniciado sesión en ella (negritas mías).

Esto significa que Facebook crea perfiles nuestros de lo que hacemos en otras páginas, incluso sin tener cuenta. Y ¿para qué quiere esta información? La respuesta es simple: venderla. Hay empresas dispuestas a pagar por esta información, empresas de publicidad, de análisis de datos, empresas de seguridad, etc., en la jerga de los Términos y Condiciones se llaman “socios”. ¿Cuál es el riesgo de esto? Solo recordemos el escándalo de Cambridge Analytica, cuya intervención fue clave para la victoria de Donald Trump.

Por supuesto, hay muchas personas a las que esta situación no les molesta en lo absoluto, lo que está bien, pero en lo personal, es incómodo ser “observado” todo el tiempo.

El contenido en Facebook y la ansiedad que genera

En Facebook consumía tres grandes clases de contenido: anuncios, publicaciones de conocidos y publicaciones relacionadas con mis intereses personales.

Las personas suelen publicar en Facebook (y en todas las redes sociales, de hecho) aspectos que desean que se conozcan de su vida, generalmente vemos como salen de fiesta, fotos de sus vacaciones y de cada logro que alcanzan en la vida. Sin embargo, ser bombardeado por este tipo de publicaciones genera mucha ansiedad, ¿por qué los demás son tan exitosos y yo no? Existen estudios reales que demuestran como el uso de las redes sociales y el consumo de este tipo de publicaciones nos hacen sentir solos y deprimidos. Hace unos días, una conocida se lamentaba al ver como una amiga suya compartía fotos de un viaje y ella, que trabaja más y quizá hasta gana más, no puede ni salir a pasear en su día de descanso. Lo peor de esto es que la mayoría de las publicaciones que subimos tienen truco: guardamos las fotos de las fiestas, de los eventos, de las vacaciones para subirlas cuando no sabemos que publicar. La vida de todos es igual de aburrida y estresante, pero las redes sociales hacen parecer que no.

Por otro lado, debo admitir que de mi lista de amigos, la enorme mayoría ni los conozco realmente para llamarlos “amigos”, quizá ni “conocidos”. Termina viendo fotos de personas que, la verdad, ni sabía quienes eran. Y yo casi nunca publicaba nada, lo que es importante para mi prefiero mantenerlo conmigo, no mostrárselo a un mundo hipócrita y que muchas veces ni les interesa.

En segundo lugar están las publicaciones relacionadas con intereses personales, que es donde más tiempo me llevaba y extrañaré varias comunidades y páginas cuyo contenido realmente disfrutaba, por ellas no abandoné antes la red social. No obstante, era común ver situaciones de política y constante censura, todos, incluido yo, debíamos cuidarnos de lo que opinábamos, razón por la cual me acostumbré a leer y rara vez opinar sobre los temas.

En el caso de los anuncios no hace falta mencionar porque no me gustan, salvo el de una u otra página que hacían realmente buenos anuncios (Sr. Manaos, esto es por ti). Aquí hay que agregar que muchas veces recibía anuncios sobre temas que había estado explorando poco antes en internet o que había mencionado en conversaciones supuestamente privadas.

Los servicios de Facebook no son buenos

Hacen su trabajo, sí, pero los hay mejores. Messenger tiene muchos defectos, desde las “historias” hasta el hecho que pesa más de 200 Mb.; la sección de videos de Facebook jamás llegará al nivel de Youtube, así introduzcan realities shows como Confetti; como feed de noticias es ineficiente pues está lleno de fake news y en su labor original, que es comunicarme con mis amigos, salvo un par de grupos de la escuela, nunca me ha servido realmente para estar en comunicación con mis seres queridos. En otras palabras, existen alternativas mucho mejores a lo que Facebook ofrece, con mayor respeto a la privacidad, aunque no se integran en una sola página web.

Aunque extrañaré varios aspectos de Facebook, creo que las ventajas son mayores. En 30 días deberé reevaluar mi decisión y, si no soy lo suficientemente débil, seguiré adelante sin usar la red social. Por mientras comenzaré a aplicar esas alternativas a Facebook que menciono, pues al fin al cabo, en estos diez años Facebook ha sido parte integral de mi vida, toca acostumbrarse ahora a vivir sin los servicios de Zuckerberg.

Emacs es mi editor de texto favorito. En un principio me obligué a usarlo solamente por org-mode, pero conforme fui personalizándolo y aprendiendo más sobre su uso, se volvió parte integral de mi trabajo. Hoy día, Emacs es mi editor de texto principal, no solo para org-mode, sino para toda clase de texto plano, además de aprovechar algunos paquetes interesantes como Magit.

A lo largo de mi experiencia con Emacs, he visto varias entradas de blogs, hilos en foros y videos donde hablan acerca de Emacs, generalmente comparándolo con Vim, y recuperan varias razones por las cuales Emacs es un mal editor de texto. Las he leído, y considero que varias de ellas nacen de ideas equivocadas acerca de Emacs, o bien, un desconocimiento de qué es Emacs y como funciona. Así que a continuación quisiera recuperar 5 de esas ideas y por qué considero que están equivocadas, o bien, no dicen toda la verdad acerca de este programa.

1. Para usar Emacs necesitas dominar lisp, un lenguaje que casi no se utiliza y nadie sabe

Es cierto, Emacs se configura con un archivo de elisp, un dialecto de lisp, y es cierto que no es un lenguaje realmente popular. Sin embargo, no es necesario se un maestro de elisp para usar Emacs, así como no necesitas dominar Haskell para usar XMonad, ni ser un maestro en bash para usar Linux. En lo personal, no domino elisp, lo poco que se lo he aprendido copiando y pegado pedazos de código desde foros y blogs. No se requiere ser ningún genio para, por ejemplo, comprender este pedacito de código (que saqué de internet) donde se configura la agenda de org-mode:

        (global-set-key (kbd "C-c a") 'org-agenda)
        (setq org-agenda-window-setup
              'other-window)
        (setq org-agenda-span 7)
        (setq org-agenda-start-on-weekday nil)
        (setq calendar-day-name-array ["domingo" "lunes" "martes" "miércoles"
        				 "jueves" "viernes" "sábado"])
        (setq calendar-month-name-array ["enero" "febrero" "marzo" "abril" "mayo"
        				   "junio" "julio" "agosto" "septiembre"
        				   "octubre" "noviembre" "diciembre"])

Y si no nos gusta editar un archivo de texto, Emacs cuenta con un menú gráfico para configurar Emacs, generalmente invocado con M-x customize-group RET <paquete>.

2. Emacs es demasiado personalizable, por ello te vuelves “esclavo” de tu configuración, y no puedes usar la de otro usuario

Este argumento (que puede extenderse a cualquier programa, y a muchos aspectos de la vida diaria) me parece algo ridículo. Los sistemas operativos son muy personalizables también, cada quien usa diferentes paquetes, ¿quiere decir eso que solo se usar mi computadora y soy incapaz de usar la de otra persona? Los entornos de escritorio en Linux o los launchers en Android, la mayoría son muy personalizables y cada quien tiene sus aplicaciones en distintos lugares y algunos hasta cambian los atajos de teclado, ¿somos esclavos de su configuración? ¡No! Simplemente personalizas tu experiencia, lo haces más cómodo para ti, finalmente quien se supone que lo usará eres tú, no los demás, pero eso no significa que seas incapaz de usar las configuraciones de otras personas, o que tu configuración sea tan extrema que es como usar un programa totalmente nuevo.

3. Emacs es muy lento, tanto que puedes hacer tu trabajo en en el tiempo que Emacs tarda en abrir

Aquí si debo darles la razón: Emacs tarda aproximadamente 13 segundos en abrir con mi configuración; sin configuración abre casi inmediatamente pero, vamos, ¿quien usa Emacs sin una configuración personal? Lo que no dicen en estos casos es que existe un comando de Emacs, emacs --daemon que vuelve a Emacs un demonio, y podemos abrir una ventana llamado a emacsclient -c, o emacsclient -t si queremos ejecutarlo en terminal.

Usando el cliente de Emacs no solo se agiliza el tiempo al abrir el editor al ser igual casi inmediato, sino que ahora, si cerramos Emacs, no perderemos nuestro trabajo, basta invocar nuevamente una ventana del cliente y tendremos nuestro trabajo donde quedó, pues en teoría, nunca cerramos Emacs.

A pesar de las ventajas que trae usar el demonio, debo admitir que la obligación de usar un demonio puede no agradar a todas las personas, de todas maneras debemos esperar los mismos 12 o 13 segundos a que el demonio se inicie.

4. Emacs está sobrecargado (bloated), puedes hasta escuchar música, navegar en internet o enviar correos, ¡Hasta juegos tiene! Es más un sistema operativo que un editor de texto

Emacs tiene incluido un gestor de paquetes, desde este gestor de paquetes podemos bajar pequeños programas escritos en elisp, y Emacs se encarga de interpretarlos y ejecutarlos. Podemos considerarlos como extensiones o plugins que otros editores, como Vim o VSCode usan. No es necesario usar paquetes externos o instalarlos de hecho, aunque si es cierto que algunos de ellos mejoran la experiencia. Dicho esto, afirmar que Emacs es un Sistema Operativo es como afirmar que el interprete de Python también es un sistema operativo, pues puedes bajar paquetes con el (pip), y hay paquetes disponibles para muchas cosas.

Lo que si es cierto y me molesta hasta cierto punto, es que el paquete principal trae demasiados paquete inútiles. Entiendo que incluya org-mode, un cliente IRC, hasta un navegador web (bastante bueno, he de decirlo) pero ¿Tetris? ¿Un juego de psicólogo? ¿Solitario? Sería bueno que, al menos, existiera una versión “mínima” de Emacs, solo con los paquetes necesarios y dejar al usuario la opción si quiere descargar el juego de Pong.

5. Emacs es un editor de texto

La página web de Emacs, lo describe como “un interprete para Emacs Lisp, un dialecto del lenguaje de programación Lisp con extensiones para soportar edición de texto”. Es decir, Emacs es un interprete de elisp, no un editor de texto en sí, es más parecido, en su núcleo, al intérprete de Python o Ruby que a un editor de texto. Esto explica porque existen tantos paquetes disponibles en Emacs, y porque hace mucho más que solo editar texto, pues la ambición de Emacs no es editar texto, es ejecutar paquetes escritos en elisp.

Para terminar, quiero decir que estos puntos expuestos aquí no pretenden cambiar la opinión de las personas, o evangelizarlos en el uso de Emacs, simplemente aclarar ciertas ideas que considero no están del todo acertadas. Cada quien puede usar el editor de texto que prefiera y, en mi opinión, el mejor software y el mejor editor de texto es aquel que cumple con tus necesidades y te sientes cómodo con su uso, no el que los demás consideren mejor.