<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="es">
    <title>Alexis Alzate</title>
    <link rel="self" type="application/atom+xml" href="https://alexisalzate.com/blog/atom.xml"/>
    <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/"/>
    <generator uri="https://www.getzola.org/">Zola</generator>
    <updated>2026-04-04T00:00:00+00:00</updated>
    <id>https://alexisalzate.com/blog/atom.xml</id>
    <entry xml:lang="es">
        <title>Comparte tu cine</title>
        <published>2026-04-04T00:00:00+00:00</published>
        <updated>2026-04-04T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2026-04-04/"/>
        <id>https://alexisalzate.com/blog/2026-04-04/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2026-04-04/">&lt;p&gt;Me encanta la filmografía, y bajo el criterio de mi opinión personal,
queiro compartir las tres mejores películas Colombianas:&lt;&#x2F;p&gt;
&lt;ol&gt;
&lt;li&gt;Matar a Jesús (2018) &lt;em&gt;Laura Mora&lt;&#x2F;em&gt;.&lt;&#x2F;li&gt;
&lt;li&gt;La estrategía del caracol (1993) &lt;em&gt;Sergio Cabrera&lt;&#x2F;em&gt;.&lt;&#x2F;li&gt;
&lt;li&gt;La vendedora de rosas (1998) &lt;em&gt;Victor Gaviria&lt;&#x2F;em&gt;.&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;p&gt;&lt;strong&gt;Nota:&lt;&#x2F;strong&gt; Nombre (año) Director(a,es).&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Mi página web es primero para mí</title>
        <published>2026-02-21T00:00:00+00:00</published>
        <updated>2026-02-21T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2026-02-21/"/>
        <id>https://alexisalzate.com/blog/2026-02-21/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2026-02-21/">&lt;p&gt;En los últimos años, a través de la palabra escrita –este blog,
publicaciones en Mastodon, correos electrónicos y alguna que otra
conversación– me he permitido a mí mismo compartir lo poco que sé sobre
el tema de la informática. Aunque considero que aún podría esclarecer
algunas de mis opiniones, a grandes rasgos ya no queda mucho que quiera
decir acerca de este tópico.&lt;&#x2F;p&gt;
&lt;p&gt;Resumiendo un poco: En los últimos años he usado mi página web para
compartir algunas guías de tecnologías que considero indispensables para
publicar en internet, como HTML, CSS, RSS, Markdown y, al menos en mi
ámbito, LaTeX. Además, he detallado algunos de mis hábitos en cuanto al
uso de la informática: por qué utilizo el sistema operativo Debian, los
dispositivos que poseo, los paquetes de software que empleo, cómo
organizo mis archivos con su respectivo control de versiones y sus
copias de seguridad, gestores de contraseñas, redes sociales,
bloqueadores de anuncios, automatización… Todo ello bajo una
perspectiva minimalista y de forma introductoria, para que quien se
interese pueda seguir aprendiendo por cuenta propia. Y como no,
promoviendo los principios enseñados por la Free Software Fundation y la
filosofía de Unix que está detrás de Linux.&lt;&#x2F;p&gt;
&lt;p&gt;Es bien cierto que, la mayoría de aquellos rudimentarios textos
necesitan una profunda revisión, y que, puedo aprovechar la
susceptibilidad del formato para actualizar las ideas ya presentadas en
orden de construir un archivo más estático.&lt;&#x2F;p&gt;
&lt;p&gt;Aunque no me cierro completamente a seguir divagando de algún que otro
tema referente a la informática, quiero que mi página web refleje un
poco más de mi estética, valores, y principios éticos y morales, siempre
respetando mi privacidad e intimidad, pero dejando de lado la
monotemática.&lt;&#x2F;p&gt;
&lt;p&gt;Reflexionando un poco, creo que he cometido el error de que la mayoría
de mis textos fueron escritos pensando en hacer de ellos algo útil para
los demás, no para mí. Y tal vez, necesito que mi web sea primero útil
para mí y, sólo después, útil para el resto. No al revés, como he venido
haciendo durante casi cuatro años.&lt;&#x2F;p&gt;
&lt;p&gt;El problema con esto es que, de mí para mí, sólo tengo dudas,
información inconclusa, pensamientos que ni siquiera sé si termino de
entender, experiencias de las que nunca aprendí, la poesía que vivo
aunque no rime, el arte que más me duele, y muchos pensamientos cruzados
casi sin sentido… ¿Para qué querría alguien leer eso? ó ¿Para qué
querría yo compartirlo con el mundo? No lo sé.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Cambios en mi uso de internet</title>
        <published>2026-02-07T00:00:00+00:00</published>
        <updated>2026-02-07T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2026-02-07/"/>
        <id>https://alexisalzate.com/blog/2026-02-07/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2026-02-07/">&lt;p&gt;A lo largo de los últimos meses he realizado algunos cambios con
respecto al uso que hago de internet.&lt;&#x2F;p&gt;
&lt;p&gt;De no ser por &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;codeberg.page&#x2F;&quot;&gt;Codeberg Pages&lt;&#x2F;a&gt;, mi página web no existiría. Sin
embargo, dicho servicio ahora se encuentra en “&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;codeberg.org&#x2F;Codeberg&#x2F;pages-server&#x2F;issues&#x2F;399&quot;&gt;modo de
mantenimiento&lt;&#x2F;a&gt;”, lo que significa que no recibirá nuevas
características, y si bien es cierto que sigue funcionando en la
actualidad, creo que es un buen momento para reducir la carga y migrar
mi página web a otro proveedor de alojamiento.  En cuanto al código
fuente de mis proyectos informáticos, este sigue residiendo en los
servidores de Codeberg.&lt;&#x2F;p&gt;
&lt;p&gt;Lastimosamente, mi IPS no me permite abrir los puertos necesarios para
alojar mi página web desde casa. Por lo cual, me es necesario buscar
otro proveedor de hosting. Entre tantas opciones, he elegido un servicio
llamado &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;clouding.io&#x2F;&quot;&gt;clouding.io&lt;&#x2F;a&gt;. Dicho servicio está alojado en Barcelona, se
paga por horas y, considerando el cambio de moneda con respecto al país
en el que vivo, el costo sigue siendo relativamente bajo.&lt;&#x2F;p&gt;
&lt;p&gt;Las redes sociales siguen siendo un pequeño reflejo de la sociedad, y
debido a muchas cuestiones, prefiero tener todo el control que pueda
sobre ellas. Para ello, he decidido mantener mi instancia personal de
Mastodon bajo el servicio de &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;masto.host&#x2F;&quot;&gt;masto.host&lt;&#x2F;a&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;En lo que respecta al alojamiento de videos en internet, decidí hacerme
una cuenta de YouTube, ya que mantener una instancia personal de
PeerTube aún no está dentro de mis posibilidades económicas. Pero es
algo que definitivamente quiero hacer en el futuro.&lt;&#x2F;p&gt;
&lt;p&gt;Por lo tanto, en la actualidad, mi uso de internet consiste en irme
haciendo mis pequeñas islas, gracias a un compromiso entre servicios
libres, y una lenta, pero constante reducción de servicios privativos.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Mi proceso de escritura</title>
        <published>2026-01-10T00:00:00+00:00</published>
        <updated>2026-01-10T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2026-01-10/"/>
        <id>https://alexisalzate.com/blog/2026-01-10/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2026-01-10/">&lt;p&gt;Escribir es una actividad que disfruto más allá de lo que se puede leer
en este blog. Para ello, utilizo una pluma estilográfica Parker IM con
punta F, entintada con Quink de color negro de la misma marca. Además,
un portaminas Pentel Graphgear 500 con mina de 0,7mm 2B de Faber
Castell. Suelo plasmar mi pésima caligrafía en papel cuadriculado tamaño
95 de marca Norma.&lt;&#x2F;p&gt;
&lt;p&gt;Si bien es cierto que las herramientas digitales son innegablemente
útiles, siempre se puede hacer uso de ellas una vez terminado el primer
borrador. Cuando tengo interés en compartir algún texto, lo dígito en mi
computador usando el editor de textos Vim y guardo mis escritos en
formato Markdown.&lt;&#x2F;p&gt;
&lt;p&gt;Para la creación de mi sitio web, utilizo el generador de sitios
estáticos Zola (algo que recomiendo aprender a toda persona que guste de
internet, es que aprenda HTML y CSS; ya que son los lenguajes de
programación fundamentales de la web), versiono en Git, y automatizo
su publicación con Bash, SSH, y Cron. Alojo mi sitio en Codeberg Pages y
registro el dominio en Hostinger.&lt;&#x2F;p&gt;
&lt;p&gt;En cuanto al diseño de la web, debe ser legible; lo demás es cuestión de
gusto personal. Sin embargo, separar los procesos de escritura y diseño
es algo que se logra con el tiempo a medida que se va adquiriendo un
poco de experiencia.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Los computadores con Windows 10 no están obsoletos</title>
        <published>2025-12-20T00:00:00+00:00</published>
        <updated>2025-12-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2025-12-20/"/>
        <id>https://alexisalzate.com/blog/2025-12-20/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2025-12-20/">&lt;p&gt;Voy a atreverme a decir que la informática llegó muy rápido a nuestras
vidas, tanto que no nos dio tiempo de aprenderla, al menos no lo
suficientemente bien.&lt;&#x2F;p&gt;
&lt;p&gt;Retomando mis clases del colegio, recuerdo que los dispositivos
informáticos se componen de dos partes fundamentales: hardware, que es
la parte física, es decir, los componentes electrónicos de los cuales
está hecho el equipo; y software, que es la parte lógica, es decir, el
sistema operativo, con todos sus programas y aplicaciones.&lt;&#x2F;p&gt;
&lt;p&gt;Voy directo al grano: la empresa Microsoft, que es dueña del sistema
operativo Windows, ha decidido que el sistema operativo que desarrolla
ha dejado de tener soporte en los computadores que no cumplen con
ciertos requisitos de hardware, dejando millones de equipos
aparentemente obsoletos.&lt;&#x2F;p&gt;
&lt;p&gt;Bien, Windows no es el único sistema operativo que existe, y es
necesario cambiarlo ya que Windows 10 es inseguro, bastante más que
antes. Yo, personalmente, suelo recomendar algunos: &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.debian.org&#x2F;&quot;&gt;Debian&lt;&#x2F;a&gt;, para
quienes no les gustan las actualizaciones; &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.fedoraproject.org&quot;&gt;Fedora&lt;&#x2F;a&gt;, para quienes sí
les gustan; y &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;archlinux.org&#x2F;&quot;&gt;Arch&lt;&#x2F;a&gt;, para quienes prefieren configurar todo a su
gusto, literalmente.&lt;&#x2F;p&gt;
&lt;p&gt;Así pues, los computadores que usan Windows 10 no están obsoletos;
Windows sí, su versión 11 tampoco funciona &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;support.microsoft.com&#x2F;en-us&#x2F;topic&#x2F;kb5072911-explorer-the-start-menu-and-other-xaml-dependent-apps-might-not-start-or-close-unexpectedly-on-some-enterprise-devices-d2d30684-4e2b-47f5-9899-a00a8e0acb09&quot;&gt;⁴&lt;&#x2F;a&gt; &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;techcommunity.microsoft.com&#x2F;discussions&#x2F;windows11&#x2F;microsoft-finally-admits-almost-all-major-windows-11-core-features-are-broken&#x2F;4475930&quot;&gt;⁵&lt;&#x2F;a&gt;. Debido al
contexto global, en el cual existe alta demanda de memorias RAM para su
uso en inteligencia artificial, no es un buen momento para comprar un
nuevo computador.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Guía básica de LaTeX</title>
        <published>2025-08-30T00:00:00+00:00</published>
        <updated>2025-08-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2025-08-30/"/>
        <id>https://alexisalzate.com/blog/2025-08-30/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2025-08-30/">&lt;p&gt;LaTeX fue creado por &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;www.lamport.org&#x2F;&quot;&gt;Leslie Lamport&lt;&#x2F;a&gt; en el año 1985, y es el
estándar tipográfico actual en el mundo de las matemáticas, las ciencias
y la ingeniería. Es un sistema que sirve para producir libros,
artículos, entre otros documentos técnicos. Está basado en el paquete
núcleo TeX, el cual fue creado por &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www-cs-faculty.stanford.edu&#x2F;~knuth&#x2F;&quot;&gt;Donald Knuth&lt;&#x2F;a&gt; en el año 1978.&lt;&#x2F;p&gt;
&lt;p&gt;LaTeX utiliza únicamente instrucciones computacionales, por lo cual,
permite a las personas centrarse en escribir el documento, en lugar de
distraerse con detalles técnicos.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;instalacion&quot;&gt;Instalación&lt;&#x2F;h2&gt;
&lt;p&gt;La instalación de LaTeX en sistemas basados en Debian se realiza
mediante el comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; apt install texlive-full&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Un archivo de LaTeX, es decir con la extensión &lt;strong&gt;.tex&lt;&#x2F;strong&gt;, puede ser
creado con cualquier editor de texto. LaTeX se encarga de componer el
archivo de entrada en un archivo con la extensión &lt;strong&gt;.pdf&lt;&#x2F;strong&gt; (u otras
extensiones deseadas), el cual puede ser visualizado desde un monitor, o
en su defecto, imprimirse.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;clases-de-documentos-latex&quot;&gt;Clases de documentos LaTeX&lt;&#x2F;h2&gt;
&lt;p&gt;LaTeX posee cinco clases básicas:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Artículo:&lt;&#x2F;strong&gt; &lt;code&gt;article&lt;&#x2F;code&gt;.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Libro:&lt;&#x2F;strong&gt; &lt;code&gt;book&lt;&#x2F;code&gt;.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Informe:&lt;&#x2F;strong&gt; &lt;code&gt;report&lt;&#x2F;code&gt;.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Carta:&lt;&#x2F;strong&gt; &lt;code&gt;letter&lt;&#x2F;code&gt;.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Presentación:&lt;&#x2F;strong&gt; &lt;code&gt;slides&lt;&#x2F;code&gt;.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;comandos&quot;&gt;Comandos&lt;&#x2F;h2&gt;
&lt;p&gt;Los comandos en LaTeX tienen la forma:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;tex&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;\&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;comando&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;[&lt;&#x2F;span&gt;&lt;span&gt;opciones&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;]&lt;&#x2F;span&gt;&lt;span&gt;{argumentos}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;estructura-de-un-archivo-latex&quot;&gt;Estructura de un archivo LaTeX&lt;&#x2F;h2&gt;
&lt;p&gt;Todo archivo de LaTeX debe empezar con el comando &lt;code&gt;\documentclass{}&lt;&#x2F;code&gt;.
Entre las llaves &lt;strong&gt;{}&lt;&#x2F;strong&gt; se especifica la clase de documento que se
intenta escribir.&lt;&#x2F;p&gt;
&lt;p&gt;El cuerpo del documento aparece entre los comandos &lt;code&gt;\begin{document}&lt;&#x2F;code&gt; y
&lt;code&gt;\end{document}&lt;&#x2F;code&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;La parte de un archivo de LaTeX que aparece entre &lt;code&gt;\documentclass{}&lt;&#x2F;code&gt; y
&lt;code&gt;\begin{document}&lt;&#x2F;code&gt; se llama preámbulo, y allí es donde se configuran los
parámetros del documento, es decir: tipos de letra, margenes, color,
etc.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;la-clase-articulo&quot;&gt;La clase artículo&lt;&#x2F;h3&gt;
&lt;p&gt;Por dar un ejemplo, la estructura básica de un artículo en LaTeX es la
siguiente:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;tex&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;\&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;documentclass&lt;&#x2F;span&gt;&lt;span&gt;{article}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;\&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;title&lt;&#x2F;span&gt;&lt;span&gt;{}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;\&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;author&lt;&#x2F;span&gt;&lt;span&gt;{}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;\&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;date&lt;&#x2F;span&gt;&lt;span&gt;{}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;\&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;begin&lt;&#x2F;span&gt;&lt;span&gt;{document}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;\&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;maketitle&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;\&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;section&lt;&#x2F;span&gt;&lt;span&gt;{}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;\&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;subsection&lt;&#x2F;span&gt;&lt;span&gt;{}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;\&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;section&lt;&#x2F;span&gt;&lt;span&gt;{}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;\&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;subsection&lt;&#x2F;span&gt;&lt;span&gt;{}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;\&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;end&lt;&#x2F;span&gt;&lt;span&gt;{document}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Si deseas ver estructuras básicas de los otros tipos de documento en
LaTeX, tengo publicadas las plantillas que uso en un &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;codeberg.org&#x2F;alexalzate&#x2F;PlantillasLaTeX&quot;&gt;repositorio&lt;&#x2F;a&gt; de
git.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;modos&quot;&gt;Modos&lt;&#x2F;h2&gt;
&lt;p&gt;LaTeX procesa el cuerpo del documento en uno de tres modos:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Modo de párrafo:&lt;&#x2F;strong&gt; Es el modo de procesamiento más natural para las
personas, ya que, el texto se separa en renglones, párrafos y páginas.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Modo ID (Izquierda-Derecha):&lt;&#x2F;strong&gt; Es similar al modo normal, con la
diferencia de que no se comienza un nuevo renglón a menos de que se
especifique explícitamente.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Modo matemático:&lt;&#x2F;strong&gt; Sirve para procesar el texto como símbolos
matemáticos. Para acceder a este modo se puede usar &lt;code&gt;$...$&lt;&#x2F;code&gt; para
expresiones matemáticas en línea, y &lt;code&gt;\[...\]&lt;&#x2F;code&gt; para expresiones
matemáticas desplegadas y centradas.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;h2 id=&quot;composicion&quot;&gt;Composición&lt;&#x2F;h2&gt;
&lt;p&gt;Para componer un archivo &lt;strong&gt;.tex&lt;&#x2F;strong&gt; a un archivo &lt;strong&gt;.pdf&lt;&#x2F;strong&gt;, puede usarse el
siguiente comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;pdflatex&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; nombre_del_archivo.tex&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;el-uso-de-paquetes&quot;&gt;El uso de paquetes&lt;&#x2F;h2&gt;
&lt;p&gt;Un paquete de LaTeX generalmente sirve para agregar nuevos recursos.
Para usarlo se añade la instrucción &lt;code&gt;\usepackage{nombre_del_paquete}&lt;&#x2F;code&gt; en
el preámbulo del documento.&lt;&#x2F;p&gt;
&lt;p&gt;Algunos paquetes comunes son: amsmath, graphicx, color, inputenc y
babel.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;p&gt;&lt;strong&gt;Referencias:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;tug.org&#x2F;&quot;&gt;TeX Users Group (TUG)&lt;&#x2F;a&gt;.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.latex-project.org&#x2F;&quot;&gt;The LaTeX Project&lt;&#x2F;a&gt;.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.ctan.org&#x2F;&quot;&gt;Comprehensive TeX Archive Network (CTAN)&lt;&#x2F;a&gt;.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Guía básica de Git</title>
        <published>2025-08-23T00:00:00+00:00</published>
        <updated>2025-11-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2025-08-23/"/>
        <id>https://alexisalzate.com/blog/2025-08-23/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2025-08-23/">&lt;p&gt;Git es un sistema de control de versiones creado por Linus Torvalds en
el año 2005. Este software permite registrar los cambios en un archivo o
en un conjunto de archivos a lo largo del tiempo, lo cual ayuda a
gestionar y realizar seguimiento facilitando el manejo y la colaboración
en proyectos.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;instalacion&quot;&gt;Instalación&lt;&#x2F;h2&gt;
&lt;p&gt;La instalación de Git en sistemas basados en Debian se realiza mediante
el comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; apt install git&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;configuracion-de-una-cuenta&quot;&gt;Configuración de una cuenta&lt;&#x2F;h2&gt;
&lt;p&gt;Si bien es cierto que la mayoría de operaciones en Git solo necesitan
archivos locales para funcionar; si deseas colaborar usando Git, es
necesario un servidor donde diferentes personas se conecten para acceder
a los archivos en común. Personalmente, utilizo &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;codeberg.org&#x2F;alexalzate&quot;&gt;Codeberg&lt;&#x2F;a&gt; para mis
proyectos personales, sin embargo, puedes crear una cuenta en uno de
tantos servicios disponibles en internet. Una vez creada la cuenta,
puedes configurar Git con tu usuario, para ello, necesitas ejecutar los
siguientes comandos:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; config --global user.name&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;Tu nombre&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; config --global user.email&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;Tu-correo-electrónico&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;creacion-de-repositorios&quot;&gt;Creación de repositorios&lt;&#x2F;h2&gt;
&lt;p&gt;Un repositorio de Git es el lugar donde puedes almacenar los archivos de
un proyecto. Estos pueden ser utilizados por una o varías personas, y
además, pueden ser públicos o privados.&lt;&#x2F;p&gt;
&lt;p&gt;La creación de un repositorio se realiza con el siguiente comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; init&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;nombre-del-proyecto&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Alternativamente, puedes descargar un proyecto existente con el comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; clone&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;url-del-proyecto&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;edicion-de-archivos&quot;&gt;Edición de archivos&lt;&#x2F;h2&gt;
&lt;p&gt;Antes de continuar en el desarrollo de un proyecto, es importante
descargar los últimos cambios que hayan realizado otras personas. Esto
se hace con el comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; pull&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Este es el momento preciso para añadir los cambios que queramos hacer en
el proyecto.&lt;&#x2F;p&gt;
&lt;p&gt;Para añadir el contenido de un archivo al índice, utiliza el comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; add .&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Para confirmar los cambios y añadir un breve mensaje descriptivo, usa el
comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; commit -m&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;mensaje&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;repositorio-remoto&quot;&gt;Repositorio remoto&lt;&#x2F;h2&gt;
&lt;p&gt;Para añadir un repositorio remoto, utiliza el siguiente comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; remote add origin&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;url-del-proyecto&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Si usas varios servicios de git, puedes agregar diferentes direcciones
push con el siguiente comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; remote set-url --add --push origin&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;url-del-proyecto&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Puedes enviar los cambios locales a un repositorio remoto con el
siguiente comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; push&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;revertir-cambios-realizados&quot;&gt;Revertir cambios realizados&lt;&#x2F;h2&gt;
&lt;p&gt;Para deshacer los cambios realizados después de un commit, puedes usar
el comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; reset --hard&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;commit&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;uso-de-ramas&quot;&gt;Uso de ramas&lt;&#x2F;h2&gt;
&lt;p&gt;Una rama en Git es una versión independiente del proyecto que puede
tener su propio conjunto de cambios, lo que permite trabajar en
múltiples tareas simultáneamente. Una vez que se completa el trabajo en
una rama, se puede fusionar de nuevo, integrando los cambios.&lt;&#x2F;p&gt;
&lt;p&gt;Para mostrar todas las ramas presentes en un repositorio, utiliza el
comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; branch -a&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Para cambiar a una rama especifica, usa el comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; checkout&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;rama&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Para combinar los cambios de una rama especificada con la rama actual,
utiliza el comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; merge&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;nombre-de-la-rama&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Para borrar una rama especifica, usa el comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;git&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; branch -d&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;nombre-de-la-rama&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;hr &#x2F;&gt;
&lt;p&gt;&lt;strong&gt;Referencia:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;git-scm.com&#x2F;doc&quot;&gt;git-smc.com&lt;&#x2F;a&gt;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Guía de actualización de Debian 12 a Debian 13</title>
        <published>2025-07-19T00:00:00+00:00</published>
        <updated>2025-08-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2025-07-19/"/>
        <id>https://alexisalzate.com/blog/2025-07-19/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2025-07-19/">&lt;p&gt;Debian es un sistema operativo basado en Gnu&#x2F;Linux enfocado en la
estabilidad, y aprovechando que su próxima versión, Debian 13 (trixie)
está cerca de su lanzamiento oficial, quiero resumir el proceso de
actualización para dar el salto entre versiones de la forma más
confiable que conozco enfocandome en computadores de escritorio, y
teniendo en cuenta que parto de un Debian 12 (bookworm) “puro”.&lt;&#x2F;p&gt;
&lt;p&gt;El proceso oficial de actualización está bastante bien documentado en
las &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.debian.org&#x2F;releases&#x2F;trixie&#x2F;release-notes&#x2F;about.html&quot;&gt;notas de publicación de Debian&lt;&#x2F;a&gt;. Sin embargo, dicha
documentación está enfocada a servidores.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;realiza-una-copia-de-seguridad&quot;&gt;Realiza una copia de seguridad&lt;&#x2F;h2&gt;
&lt;p&gt;Antes de realizar la actualización de cualquier sistema informático, es
muy recomendable hacer una copia de seguridad de toda la información que
no puedas perder. El proceso de actualización no modifica nada en el
directorio &lt;code&gt;&#x2F;home&lt;&#x2F;code&gt;. Sin embargo, algunos paquetes utilizan este
directorio para guardar su configuración.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;elimina-paquetes-obsoletos&quot;&gt;Elimina paquetes obsoletos&lt;&#x2F;h2&gt;
&lt;p&gt;Es una buena idea eliminar paquetes obsoletos antes de actualizar.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;apt&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; list&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;~o&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; apt purge&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;~o&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;elimina-paquetes-que-no-son-de-debian&quot;&gt;Elimina paquetes que no son de Debian&lt;&#x2F;h2&gt;
&lt;p&gt;El siguiente comando, permite buscar los paquetes que no vienen desde
los repositorios de Debian. Sin embargo, no es 100% preciso.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;apt&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; list&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;?narrow(?installed, ?not(?origin(Debian)))&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Si tienes paquetes que no vienen desde los repositorios de Debian, debes
tener presente que pueden ser eliminados durante la actualización debido
a dependencias conflictivas. Además, si tienes versiones “más nuevas” no
oficiales instaladas en bookworm, es muy probable que dichos paquetes
causen problemas durante la actualización debido a conflictos de
ficheros.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;limpia-los-archivos-de-configuracion&quot;&gt;Limpia los archivos de configuración&lt;&#x2F;h2&gt;
&lt;p&gt;Revisa los archivos de configuración antiguos y elimínelos si es
necesario.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; find &#x2F;etc -name&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;*.dpkg-*&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; -o -name&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;*.ucf-*&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; -o -name&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;*.merge-error&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;comprueba-el-estado-de-los-paquetes&quot;&gt;Comprueba el estado de los paquetes&lt;&#x2F;h2&gt;
&lt;p&gt;Es recomendable comprobar primero el estado de los paquetes, y verificar
que no tienen errores. El siguiente comando mostrará cualquier paquete
con cualquier estado de error.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;dpkg&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; --audit&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Además, si algún paquete esencial para la actualización está retenido,
la actualización fallará.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;apt-mark&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; showhold&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Si recompilaste un paquete localmente, y no le cambiaste el nombre,
debes ponerlo en estado hold para evitar que se actualice.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;apt-mark&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; hold package_name&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;configura-tus-repositorios&quot;&gt;Configura tus repositorios&lt;&#x2F;h2&gt;
&lt;p&gt;El fichero que apt utiliza para decidir de qué fuentes debe descargar
los paquetes ha sido modernizado, ahora se encuentra en
&lt;code&gt;&#x2F;etc&#x2F;apt&#x2F;sources.list.d&#x2F;debian.sources&lt;&#x2F;code&gt;. Y su contenido para Debian 13
(trixie) es el siguiente:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;Types:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; deb deb-src&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;URIs:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; http:&#x2F;&#x2F;deb.debian.org&#x2F;debian&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;Suites:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; trixie trixie-updates&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;Components:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; main contrib non-free non-free-firmware&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;Signed-By:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; &#x2F;usr&#x2F;share&#x2F;keyrings&#x2F;debian-archive-keyring.gpg&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;Types:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; deb deb-src&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;URIs:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; http:&#x2F;&#x2F;security.debian.org&#x2F;debian-security&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;Suites:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; trixie-security&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;Components:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; main contrib non-free non-free-firmware&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;Signed-By:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; &#x2F;usr&#x2F;share&#x2F;keyrings&#x2F;debian-archive-keyring.gpg&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Si no deseas eliminar el fichero anterior, el cual se encuentra en
&lt;code&gt;&#x2F;etc&#x2F;apt&#x2F;sources.list&lt;&#x2F;code&gt;. Debes comprobar que apunte hacía “trixie” o
“estable”.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;debian-backports&quot;&gt;Debian Backports&lt;&#x2F;h2&gt;
&lt;p&gt;Debian Backports le permite a los usuarios de Debian estable ejecutar
paquetes más actualizados (con algunos compromisos en pruebas y
seguridad). Los paquetes de bookworm-backports tienen versiones
inferiores a su versión en trixie, por lo cual deberían actualizarse
normalmente a trixie en la misma forma que versiones “puras” de los
paquetes de bookworm durante la actualización.&lt;&#x2F;p&gt;
&lt;p&gt;Es recomendable añadir los backports de trixie una vez el sistema se
haya actualizado.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;actualiza-la-lista-de-paquetes&quot;&gt;Actualiza la lista de paquetes&lt;&#x2F;h2&gt;
&lt;p&gt;Asegúrate de obtener la lista de paquetes disponibles para la nueva
versión. Esto se hace ejecutando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; apt update&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;verifica-que-dispongas-de-almacenamiento-para-la-actualizacion&quot;&gt;Verifica que dispongas de almacenamiento para la actualización&lt;&#x2F;h2&gt;
&lt;p&gt;Verifica que dispongas de suficiente espacio de almacenamiento para
realizar la actualización. Esto se estima ejecutando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; apt -o APT::Get::Trivial-Only=&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;true&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; full-upgrade&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;En caso de que no tengas suficiente espacio para la actualización, apt
te avisara con un mensaje como este:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;plain&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;E: You don&amp;#39;t have enough free space in &#x2F;var&#x2F;cache&#x2F;apt&#x2F;archives&#x2F;.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;En esta situación, puedes limpiar la caché de paquetes ejecutando &lt;code&gt;sudo apt clean&lt;&#x2F;code&gt;. O eliminar los paquetes olvidados ejecutando &lt;code&gt;sudo apt autoremove --purge&lt;&#x2F;code&gt;. Entre otras formas de liberar espacio.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;actualizacion-minima-del-sistema&quot;&gt;Actualización mínima del sistema&lt;&#x2F;h2&gt;
&lt;p&gt;En algunos casos, realizar directamente la actualización completa puede
eliminar un gran número de paquetes que posiblemente quieras conservar.
Por lo tanto, es recomendable un proceso de actualización en dos partes:
primero una actualización mínima para superar estos conflictos, y luego
una actualización completa.&lt;&#x2F;p&gt;
&lt;p&gt;Para actualizar aquellos paquetes que pueden ser actualizados sin
necesidad de eliminar o instalar ningún otro paquete, ejecuta:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; apt upgrade --without-new-pkgs&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;actualizacion-completa-del-sistema&quot;&gt;Actualización completa del sistema&lt;&#x2F;h2&gt;
&lt;p&gt;El siguiente paso es realizar una actualización completa del sistema,
instalando las versiones más recientes disponibles de todos los
paquetes, y resolviendo todos los posibles cambios de dependencias entre
paquetes de diferentes versiones. Si es necesario, apt instalará algunos
paquetes nuevos, y eliminará cualquier paquete obsoleto.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; apt full-upgrade&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;archivos-de-configuracion&quot;&gt;Archivos de configuración&lt;&#x2F;h2&gt;
&lt;p&gt;Durante la actualización, se te preguntará sobre las diferencias entre
los archivos de configuración que se están instalando y las antiguas
configuraciones que hayas modificado. Puede que prefieras conservar los
archivos de configuración existentes y anotarlos para fusionar los
cambios más adelante.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;reinicia-el-sistema&quot;&gt;Reinicia el sistema&lt;&#x2F;h2&gt;
&lt;p&gt;Acabamos entre otras cosas, de hacer una actualización del kernel, por
lo que será necesario reiniciar.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; reboot&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;depuracion-de-paquetes-eliminados&quot;&gt;Depuración de paquetes eliminados&lt;&#x2F;h2&gt;
&lt;p&gt;El siguiente comando muestra una lista de todos los paquetes eliminados
que pueden tener archivos de configuración en el sistema (si los hay):&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;apt&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; list&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;~c&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Los paquetes pueden eliminarse utilizando apt purge. Suponiendo que
desea purgar todos ellos de una sola vez, puede utilizar el siguiente
comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; apt purge&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;~c&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;depuracion-de-paquetes-obsoletos&quot;&gt;Depuración de paquetes obsoletos&lt;&#x2F;h2&gt;
&lt;p&gt;Lista los paquetes obsoletos y, opcionalmente, elimínelos.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;apt&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; list&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;~o&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; apt purge&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;~o&amp;quot;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;depuracion-de-paquetes-sobrantes&quot;&gt;Depuración de paquetes sobrantes&lt;&#x2F;h2&gt;
&lt;p&gt;Para finalizar, elimine los paquetes sobrantes que no estén
explícitamente declarados obsoletos. Considere eliminar manualmente un
paquete a la vez si no está seguro.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; apt autoremove --purge&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Es cierto que es un proceso largo, pero merece la pena por precaución.
Especialmente si está actualizando un computador con Debian usado para
entornos en los cuales sea necesario minimizar las interrupciones.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;p&gt;&lt;strong&gt;Referencias:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.debian.org&#x2F;releases&#x2F;trixie&#x2F;release-notes&#x2F;about.html&quot;&gt;Debian Trixie release notes&lt;&#x2F;a&gt;.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;wiki.debian.org&#x2F;SourcesList&quot;&gt;Debian Sources List&lt;&#x2F;a&gt;.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;wiki.debian.org&#x2F;DontBreakDebian&quot;&gt;Don’t Break Debian&lt;&#x2F;a&gt;.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Manchas de tinta</title>
        <published>2025-05-03T00:00:00+00:00</published>
        <updated>2025-05-03T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2025-05-03/"/>
        <id>https://alexisalzate.com/blog/2025-05-03/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2025-05-03/">&lt;p&gt;Hace tiempo que no disfruto del placer de terminar el día con el meñique
y el anular manchados en tinta. Aunque, me consuela saber que el trabajo
me ocupa, que el laboratorio me enseña como funciona el mundo, y que el
gimnasio me distrae. También, me hace falta el placer de desahogar mi
alma entre palabras escritas.&lt;&#x2F;p&gt;
&lt;p&gt;Últimamente, me he sentado en las noches a observar mis fotografías,
disfrutando entre nostalgia y melancolía de aquellos recuerdos, de
aquellas personas que hoy ya no se encuentran a mi lado. He sido yo
quien he buscado alejarme de mis seres queridos. No lo digo como
arrepentimiento, siempre he intentado que mi vida vaya a mejor, y en el
camino, ayudar a quienes me rodean. Aunque, cada vez más prefiera mi
propia compañía.&lt;&#x2F;p&gt;
&lt;p&gt;Todo ha cambiado, las personas que he conocido recientemente parecen
estar demasiado preocupadas por conseguir dinero, no para solucionar los
problemas que todos tenemos en común, sino más bien, para tener el
privilegio de olvidarse de ellos.&lt;&#x2F;p&gt;
&lt;p&gt;Se me ha vuelto cotidiano ver personas distraídas en sus pantallas. Y
recuerdo ser un niño, cuando en casa no había televisor ni mucho menos
internet, y entretenerme a mi mismo observando hormigas. Una de las
cosas que más me sorprendía era cuando una de ellas se encontraba
herida, y ver al resto marchar como si no importara. La semana pasada
murió una niña de 5 años, en un accidente de transito en la autopista
por la cual necesito pasar para ir del trabajo a mi casa. Y allí
estábamos todos, pasando como hormigas, insensibles al dolor ajeno.&lt;&#x2F;p&gt;
&lt;p&gt;Me sorprende ver la fragilidad de nuestras vidas. Y el como nos deja de
importar el resto cuando nos entregamos a sistemas que no entendemos. A
sistemas que apagan países completos por el paso de unas nubes, y a
políticos que no saben decir la verdad porque hay que seguir impulsando
económicamente energías renovables. Como si tuviéramos otra opción, el
año comenzó con Los Ángeles ardiendo en llamas, ahora es Israel, que
prefiere usar sus aviones para bombardear niños que para apagar sus
incendios.&lt;&#x2F;p&gt;
&lt;p&gt;El mundo carece de sentido. No hay nada que entender entre tantas ideas
inconclusas y mal desarrolladas, sólo recordar que hay que seguir
dejando el alma, en cada falta de ortografía, en cada error humano, en
cada momento en el que intentamos que el mundo este mejor.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>¿Cómo descargo videos de internet?</title>
        <published>2025-04-19T00:00:00+00:00</published>
        <updated>2025-09-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2025-04-19/"/>
        <id>https://alexisalzate.com/blog/2025-04-19/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2025-04-19/">&lt;hr &#x2F;&gt;
&lt;p&gt;&lt;strong&gt;&lt;center&gt;¡Advertencia!&lt;&#x2F;center&gt;&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Si estás descargando videos de Internet, asegúrate de respetar los
derechos de autor y las leyes de propiedad intelectual. Descargar
contenido sin permiso puede ser ilegal y tener consecuencias legales.&lt;&#x2F;p&gt;
&lt;p&gt;Como autor de esta publicación no me hago responsable de las acciones
que realices al descargar contenido de Internet. Es tu responsabilidad
informarte y actuar de acuerdo con la legislación vigente de tu país.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;yt-dlp&#x2F;yt-dlp&#x2F;&quot;&gt;yt-dlp&lt;&#x2F;a&gt; es un paquete de software que ofrece soporte para descargar
videos desde multiples plataformas de internet, entre las cuales se
incluyen: PeerTube, Odysee, YouTube, y &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;yt-dlp&#x2F;yt-dlp&#x2F;blob&#x2F;master&#x2F;supportedsites.md&quot;&gt;muchas más&lt;&#x2F;a&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;Su instalación la hago desde los backports de Debian con el comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;apt&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; install yt-dlp&#x2F;trixie-backports&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Para usarlo tengo el siguiente script:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;yt-dlp&lt;&#x2F;span&gt;&lt;span&gt; \&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;    -P&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;&#x2F;media&#x2F;alexis&#x2F;videos&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span&gt; \&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;    -o&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;%(uploader)s&#x2F;%(upload_date)s&#x2F;%(title)s.%(ext)s&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span&gt; \&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;    -f&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;bestvideo[height&amp;lt;=1080]+bestaudio&#x2F;best&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span&gt; \&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;    --sponsorblock-remove&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;sponsor&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span&gt; \&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;font-style: italic;&quot;&gt;    $1&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;El cual funciona de la siguiente manera:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;yt-dlp&lt;&#x2F;strong&gt;: Es el nombre del paquete que se está ejecutando.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;-P “&#x2F;media&#x2F;alexis&#x2F;videos&#x2F;”&lt;&#x2F;strong&gt;: Especifica el directorio donde quiero
que se guarden los archivos descargados.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;-o “%(uploader)s&#x2F;%(upload_date)s&#x2F;%(title)s.%(ext)s”&lt;&#x2F;strong&gt;: Define la
estructura de carpetas y el formato del nombre de los archivos
descargados. En mi caso, se guardan en un directorio con el nombre del
autor, un subdirectorio con la fecha de subida, y el nombre del
archivo es el título del video.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;-f “bestvideo[height&amp;lt;=1080]+bestaudio&#x2F;best”&lt;&#x2F;strong&gt;: Especifica el formato
de video y audio que se descargará. En mi caso quiero que el archivo
se descargue máximo a 1080p, debido a que esa es la resolución de mi
monitor.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;--sponsorblock-remove “sponsor”&lt;&#x2F;strong&gt;: Esta opción permite eliminar
automáticamente las propagandas en los videos.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;$1&lt;&#x2F;strong&gt;: Representa la dirección URL del vídeo, lista de reproducción,
o canal que quiero descargar.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Software privativo</title>
        <published>2025-03-22T00:00:00+00:00</published>
        <updated>2025-09-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2025-03-22/"/>
        <id>https://alexisalzate.com/blog/2025-03-22/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2025-03-22/">&lt;p&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;stallman.org&#x2F;&quot;&gt;Richard M. Stallman&lt;&#x2F;a&gt; promueve utilizar el término &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.gnu.org&#x2F;philosophy&#x2F;categories.es.html&quot;&gt;software
privativo&lt;&#x2F;a&gt; para describir software que no es libre, es decir,
software que promueve la privación a los usuarios de sus libertades en
relación con el software.&lt;&#x2F;p&gt;
&lt;p&gt;Para ser más específico, cito textualmente las cuatro libertades
promovidas por la &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.fsf.org&#x2F;&quot;&gt;Free Software Foundation&lt;&#x2F;a&gt;:&lt;&#x2F;p&gt;
&lt;blockquote&gt;
&lt;ul&gt;
&lt;li&gt;La libertad de ejecutar el programa como se desee, con cualquier
propósito (libertad 0).&lt;&#x2F;li&gt;
&lt;li&gt;La libertad de estudiar cómo funciona el programa, y cambiarlo para
que haga lo que se desee (libertad 1). El acceso al código fuente es
una condición necesaria para ello.&lt;&#x2F;li&gt;
&lt;li&gt;La libertad de redistribuir copias para ayudar a otros (libertad 2).&lt;&#x2F;li&gt;
&lt;li&gt;La libertad de distribuir copias de sus versiones modificadas a
terceros (libertad 3). 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.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;blockquote&gt;
&lt;p&gt;El problema, es que al ser tan pedantes con la defensa de la libertad,
se deja mucho que pensar acerca de otras cuestiones psicológicas y
filosóficas, que no dejan de tener relación con el uso de la
informática.  Por no ir muy lejos, el mismo Richard se ha visto envuelto
en varías controversias. Por dar un ejemplo, en &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;stallman-report.org&#x2F;&quot;&gt;Stallman Report&lt;&#x2F;a&gt; se
pueden leer argumentos contra Stallman, y en &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;stallmansupport.org&#x2F;&quot;&gt;Stallman Support&lt;&#x2F;a&gt; se
pueden leer palabras a su favor.&lt;&#x2F;p&gt;
&lt;p&gt;Dichas controversias se extienden a lo largo y ancho del software libre,
desde proyectos como &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.torproject.org&#x2F;&quot;&gt;Tor&lt;&#x2F;a&gt;, que es una ONG que busca que las personas
tengan acceso privado a una web sin censura; o el proyecto
&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;activitypub.rocks&#x2F;&quot;&gt;ActivityPub&lt;&#x2F;a&gt;, que al ofrecer un protocolo de comunicación abierto y
descentralizado también se ha convertido en una puerta de fácil acceso a
grandes cantidades de información que en muchas legislaciones se
considera ilegal. &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;purl.stanford.edu&#x2F;vb515nd6874&quot;&gt;¹&lt;&#x2F;a&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Si bien es cierto que muchos proyectos de software libre son una mejor
opción que sus competidores privativos, no se deben ignorar los diversos
problemas éticos y morales que, hoy más que nunca, siguen existiendo en
el software.&lt;&#x2F;p&gt;
&lt;p&gt;Según la FSF, la única excusa posible para instalar un programa
privativo es en forma temporaria, con el propósito específico de
escribir un reemplazo libre para este mismo programa. Aún así, no se le
puede pedir a un médico que deje de salvar vidas sólo porque en el
hospital en el que trabaja aún usan Windows XP. Ni tampoco se le puede
exigir a ninguna otra persona que use exclusivamente software libre,
porque siempre habrán diferentes motivos y circunstancias que hayan
llevado a una persona a usar el software que usa. Y eso, sin tener en
cuenta que no todo el mundo sabe programar, o que no todos los
programadores nos enfocamos en crear software de escritorio.&lt;&#x2F;p&gt;
&lt;p&gt;Pienso que cada persona debería tener claros sus principios éticos y
morales, y usar el software que mejor se adapte a sus necesidades. Los
ingleses llaman a esto “Thread Model”. Sin embargo, también creo que las
personas deberían hacer un mejor esfuerzo en encontrar software que se
adapte mejor a sus principios. Además, aprender cómo actuar en aquellos
casos en los que una empresa quiere imponer sus decisiones ante ellos.&lt;&#x2F;p&gt;
&lt;p&gt;Personalmente, uso y promuevo muchos proyectos de software libre, no
sólo por las cosas que dijo Stallman en los años 80, y no ignorando los
numerosos problemas, sino porque considero que algo sé de informática, y
siempre voy a preferir el software creado por y para personas, más allá
de los intereses de las corporaciones de turno.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Entrevista para Tecnolocuras</title>
        <published>2025-03-01T00:00:00+00:00</published>
        <updated>2025-11-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2025-03-01/"/>
        <id>https://alexisalzate.com/blog/2025-03-01/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2025-03-01/">&lt;p&gt;El martes 25 de febrero, recibí un mensaje de parte de Henry (la persona
que está detrás de &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;tecnolocuras.com&quot;&gt;tecnolocuras.com&lt;&#x2F;a&gt;), invitándome a responder a una
entrevista. Aunque me he tardado en contestar, dejo por aquí &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;tecnolocuras.com&#x2F;entrevistas&#x2F;conversaciones-con-blogueros-alexis-alzate&#x2F;&quot;&gt;mis
respuestas&lt;&#x2F;a&gt;, por si alguien gusta leerlas.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>La complejidad de Linux</title>
        <published>2025-02-01T00:00:00+00:00</published>
        <updated>2025-02-01T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2025-02-01/"/>
        <id>https://alexisalzate.com/blog/2025-02-01/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2025-02-01/">&lt;p&gt;Es innegable que el número de usuarios de Gnu&#x2F;Linux en el sector de
escritorio está aumentando, sin embargo, estos nuevos usuarios vienen
con conocimientos y malos hábitos que pueden ser difíciles de dejar
atrás.&lt;&#x2F;p&gt;
&lt;p&gt;Para ilustrar mi punto, consideremos la tarea de crear un documento para
impresión. En Windows, por dar un ejemplo, un usuario probablemente
utilizaría Microsoft Word para dar solución a esta tarea. En este caso,
se preocupa principalmente por el contenido del documento, algunos
parámetros y configuraciones, como el nombre del archivo, la autoría y
poca cosa más.&lt;&#x2F;p&gt;
&lt;p&gt;Sin embargo, cuando se instala Ubuntu, Linux Mint, o alguna otra
distribución popular entre novatos, el usuario puede encontrarse con
LibreOffice Writer, que es visualmente similar a versiones anteriores de
Microsoft Word, y aunque por un momento pueda olvidarse de todo el
proceso de aprendizaje por el cual en algún momento de su vida tuvo que
pasar, la realidad se hace latente cuando para sorpresa de nadie, ni
Linux, ni sus paquetes funcionan de la misma forma que Windows y sus
programas.&lt;&#x2F;p&gt;
&lt;p&gt;A parte de las filosofías de libertad de software provenientes de Gnu,
las distintas distribuciones de Linux también están inspiradas en la
filosofía de Unix, de está última, destaco dos principios:&lt;&#x2F;p&gt;
&lt;ol&gt;
&lt;li&gt;Haz una cosa y hazla bien. Y,&lt;&#x2F;li&gt;
&lt;li&gt;Haz que tus programas trabajen juntos.&lt;&#x2F;li&gt;
&lt;&#x2F;ol&gt;
&lt;p&gt;Inspirado en lo anterior, en lugar de un enfoque “simplificado”, como el
que ofrece Microsoft Word, una solución más cercana a las costumbres de
Gnu&#x2F;Linux para la creación de documentos podría ser LaTeX. Que, a
diferencia de lo que los usuarios esperan, con LaTeX el proceso incluye
la utilización de editores de texto como Vim o Emacs, un compilador como
pdflatex, y un visualizador de documentos como Zathura. Además, es
posible que se necesiten algunos complementos o scripts que ayuden a
automatizar partes del proceso. Todo esto claro, requiere
configuraciones que deben realizarse de manera independiente, con una
previa y cautelosa lectura de los manuales de usuario, además de algunos
conocimientos de programación, y cómo no, el uso de la terminal… Eso
sin mencionar palabra sobre configurar la impresora.&lt;&#x2F;p&gt;
&lt;p&gt;Además de esto, si bien, utilicé LaTeX como ejemplo para la creación de
documentos, podría haber usado cualquier otro formato de texto, como
Typst, Markdown o XML. Igualmente, hubiera podido recurrir a otros
editores de texto, como Nano, Kate o VS Code, o a compiladores
alternativos como Pandoc, Muto, o UnRTF. También existen otros
visualizadores de documentos, como NFO Viewer, Beseda o Calibre. Y no se
trata sólo de la creación de documentos: se pueden usar ejemplos
similares para la creación de archivos gráficos, elementos web o
cualquier otra tarea informática.&lt;&#x2F;p&gt;
&lt;p&gt;Ahora bien, cada cual es libre de usar el software que le plazca, ya sea
una solución impuesta por una empresa, una solución que se promociona
como alternativa, o un conjunto de paquetes de software bien engranados
para su correcto funcionamiento.&lt;&#x2F;p&gt;
&lt;p&gt;Estas ideas requieren una mentalidad diferente a la que muchos usuarios
provenientes de otros sistemas operativos pueden tener. Mientras que el
enfoque de Gnu&#x2F;Linux pone énfasis en la modularidad y el control,
también exige una mayor disposición para aprender y adaptarse, lo cual
es adecuado para quienes buscan un control más profundo sobre su
computador.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Automatización de tareas informáticas con Cron</title>
        <published>2024-11-30T00:00:00+00:00</published>
        <updated>2024-11-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2024-11-30/"/>
        <id>https://alexisalzate.com/blog/2024-11-30/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2024-11-30/">&lt;p&gt;En el mundo de la informática existen una multitud de tareas que se
ejecutan de forma reiterada. Con este fin las distribuciones de Linux
suelen proveer &lt;em&gt;cron&lt;&#x2F;em&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;El servicio cron permite la ejecución de órdenes en fechas y horas
determinadas. Estas órdenes son llamadas &lt;em&gt;cronjobs&lt;&#x2F;em&gt; y los comandos o
scripts que deben ejecutarse periódicamente se especifican en un archivo
llamado &lt;em&gt;crontab&lt;&#x2F;em&gt;. Es importante tener en cuenta que cada usuario del
sistema puede escribir su propio crontab y la tarea se ejecutará aunque
el usuario no esté conectado.&lt;&#x2F;p&gt;
&lt;p&gt;Aunque el crontab se guarda en un archivo de texto, no esta pensado para
editarse directamente, para acceder a el ejecuta el comando &lt;code&gt;crontab -e&lt;&#x2F;code&gt;. Sus expresiones lucen así:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;plain&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;┌───────────── minuto (0–59)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;│ ┌───────────── hora (0–23)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;│ │ ┌───────────── día del mes (1–31)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;│ │ │ ┌───────────── mes (1–12)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;│ │ │ │ ┌───────────── día de la semana (0–6)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;│ │ │ │ │&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;* * * * * comando-a-ejecutar&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Notas:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;En la opción del día de la semana, el domingo es 0 y contando desde
ahi, el sábado será 6.&lt;&#x2F;li&gt;
&lt;li&gt;La opción de hora utiliza el tiempo en formato de 24 horas.&lt;&#x2F;li&gt;
&lt;li&gt;Se admiten listas. Una lista es un conjunto de números separados por
coma, o rangos separados por guión. Por ejemplo: “1,2,5,9” o
“0-4,8-12”.&lt;&#x2F;li&gt;
&lt;li&gt;El asterisco * designa que se ejecutará en todos los valores
posibles del rango.&lt;&#x2F;li&gt;
&lt;li&gt;La virgulilla ~ nos permite obtener un valor aleatorio dentro del
rango.&lt;&#x2F;li&gt;
&lt;li&gt;Seguir un campo con &#x2F;número especifica saltos de número a través del
rango. Por ejemplo: “*&#x2F;2” se puede utilizar en el campo de la hora
para especificar la ejecución del comando cada dos horas.&lt;&#x2F;li&gt;
&lt;li&gt;Se ignoran las lineas en blanco, los espacios a la izquierda, los
tabuladores; y las lineas que comienzan con signo de numeral # son
comentarios y se ignoran.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;En lugar de los cinco primeros campos, se pueden usar cadenas
especiales:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;@reboot Se ejecuta una vez, al encender el computador.&lt;&#x2F;li&gt;
&lt;li&gt;@yearly Se ejecuta cada 1 de enero (0 0 1 1 *)&lt;&#x2F;li&gt;
&lt;li&gt;@monthly Se ejecuta el primer día de cada mes (0 0 1 * *)&lt;&#x2F;li&gt;
&lt;li&gt;@weekly Se ejecuta todos los domingos (0 0 * * 0)&lt;&#x2F;li&gt;
&lt;li&gt;@daily Se ejecuta cada medianoche (0 0 * * *)&lt;&#x2F;li&gt;
&lt;li&gt;@hourly Ejecutar cada hora, a la hora en punto (0 * * * *)&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Mis dispositivos informáticos</title>
        <published>2024-11-23T00:00:00+00:00</published>
        <updated>2026-02-25T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2024-11-23/"/>
        <id>https://alexisalzate.com/blog/2024-11-23/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2024-11-23/">&lt;p&gt;Mis necesidades informáticas son las de cualquier estudiante de una
carrera universitaria, específicamente, necesito hacer tareas de
ingeniería.&lt;&#x2F;p&gt;
&lt;p&gt;Tengo un computador de escritorio, con procesador Ryzen 5 5600GT, 32GB
de RAM, 1TB de SSD para la partición raíz, y 3TB de HDD para mis datos
personales. En cuanto a mis periféricos, cuento con dos monitores 1080p
a 60Hz, una webcam, un micrófono, unos audífonos, una tarjeta
digitalizadora, una lampara, un teclado y un ratón.&lt;&#x2F;p&gt;
&lt;p&gt;En cuanto a mi conputador portátil, tiene un I5 8265U, 12GB de Ram,
128GB de SSD, y 500GB de HDD.&lt;&#x2F;p&gt;
&lt;p&gt;Prefiero usar software que siga la filosofía Unix, que sea liviano,
fácil de usar, y que funcione sin conexión a internet… Evidentemente,
algunas veces hago excepciones.&lt;&#x2F;p&gt;
&lt;p&gt;El sistema operativo que uso desde hace muchos años es &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;debian.org&#x2F;&quot;&gt;Debian
Gnu&#x2F;Linux&lt;&#x2F;a&gt;. Y la siguiente es la lista de paquetes que tengo
instalados junto a mi sistema operativo.&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;aria2.github.io&#x2F;&quot;&gt;aria2&lt;&#x2F;a&gt;, utilidad para descarga de archivos;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;calcurse.org&#x2F;&quot;&gt;calcurse&lt;&#x2F;a&gt;, calendario;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;cmus.github.io&#x2F;&quot;&gt;cmus&lt;&#x2F;a&gt;, reproductor de música;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.darktable.org&#x2F;&quot;&gt;darktable&lt;&#x2F;a&gt;, procesamiento fotográfico;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.mozilla.org&#x2F;firefox&#x2F;&quot;&gt;firefox-esr&lt;&#x2F;a&gt;, navegador web;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;ffmpeg.org&#x2F;&quot;&gt;ffmpeg&lt;&#x2F;a&gt;, entorno multimedia;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;johnfactotum.github.io&#x2F;foliate&#x2F;&quot;&gt;foliate&lt;&#x2F;a&gt;, lector de libros electrónicos;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.freecad.org&#x2F;&quot;&gt;freecad&lt;&#x2F;a&gt;, dibujo asistido por computador;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.gnome.org&#x2F;&quot;&gt;gnome&lt;&#x2F;a&gt;, entorno de escritorio;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.gimp.org&#x2F;&quot;&gt;gimp&lt;&#x2F;a&gt;, edición de imágenes;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;git-scm.com&#x2F;&quot;&gt;git&lt;&#x2F;a&gt;, control de versiones;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;inkscape.app&#x2F;&quot;&gt;inkscape&lt;&#x2F;a&gt;, editor de gráficos;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;kdenlive.org&#x2F;&quot;&gt;kdenlive&lt;&#x2F;a&gt;, editor de video;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;keepassxc.org&#x2F;&quot;&gt;keepassxc&lt;&#x2F;a&gt;, gestor de contraseñas;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.kicad.org&#x2F;&quot;&gt;kicad&lt;&#x2F;a&gt;, diseño electrónico;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;gokcehan&#x2F;lf&quot;&gt;lf&lt;&#x2F;a&gt;, gestor de archivos;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;tpet&#x2F;mat2&quot;&gt;mat2&lt;&#x2F;a&gt;, eliminación de metadatos;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;mpv.io&#x2F;&quot;&gt;mpv&lt;&#x2F;a&gt;, reproductor multimedia;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;newsboat.org&#x2F;&quot;&gt;newsboat&lt;&#x2F;a&gt;, lector de fuentes RSS;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;obsproject.com&#x2F;&quot;&gt;obs-studio&lt;&#x2F;a&gt;, grabación de video;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.octave.org&#x2F;&quot;&gt;octave&lt;&#x2F;a&gt;, análisis numérico;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;rsync.samba.org&#x2F;&quot;&gt;rsync&lt;&#x2F;a&gt;, sincronización de archivos;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.latex-project.org&#x2F;&quot;&gt;texlive-full&lt;&#x2F;a&gt;, elaboración de documentos;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;andreafrancia&#x2F;trash-cli&quot;&gt;trash-cli&lt;&#x2F;a&gt;, papelera para la terminal;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.vim.org&#x2F;&quot;&gt;vim&lt;&#x2F;a&gt;, editor de texto;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;yt-dlp&#x2F;yt-dlp&quot;&gt;yt-dlp&lt;&#x2F;a&gt;, herramienta para descargar videos;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;pwmt.org&#x2F;projects&#x2F;zathura&#x2F;&quot;&gt;zathura&lt;&#x2F;a&gt;, visualizador de documentos;&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Mi teléfono celular es un Samsung Galaxy A22 5G, este, intento pensarlo
como un remplazo a los dispositivos analógicos que se usaban antaño.&lt;&#x2F;p&gt;
&lt;p&gt;La siguiente es la lista de aplicaciones que tengo instaladas en mi
teléfono móvil:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;OxygenCobalt&#x2F;Auxio&quot;&gt;auxio&lt;&#x2F;a&gt;, reproductor de música;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;davidtakac&#x2F;bura&#x2F;&quot;&gt;bura&lt;&#x2F;a&gt;, información meteorológica;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;GrapheneOS&#x2F;Camera&quot;&gt;camera&lt;&#x2F;a&gt;, cámara;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.comaps.app&#x2F;&quot;&gt;comaps&lt;&#x2F;a&gt;, mapas sin conexión;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;Etar-Group&#x2F;Etar-Calendar&quot;&gt;etar calendar&lt;&#x2F;a&gt;, calendario;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;f-droid.org&#x2F;es&#x2F;packages&#x2F;org.mozilla.fennec_fdroid&#x2F;&quot;&gt;fennec&lt;&#x2F;a&gt;, navegador web;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.fossify.org&#x2F;&quot;&gt;fossify gallery&lt;&#x2F;a&gt;, galería;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;f-droid.org&#x2F;&quot;&gt;f-droid&lt;&#x2F;a&gt;, catalogo de aplicaciones;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.keepassdx.com&#x2F;&quot;&gt;keepassdx&lt;&#x2F;a&gt;, gestor de contraseñas;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;zhanghai&#x2F;MaterialFiles&quot;&gt;material files&lt;&#x2F;a&gt;, gestor de archivos;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;clementwzk&#x2F;OpenCalc&quot;&gt;opencalc&lt;&#x2F;a&gt;, calculadora;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;GrapheneOS&#x2F;PdfViewer&quot;&gt;pdfviewer&lt;&#x2F;a&gt;, visualizador de documentos;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;github.com&#x2F;octoshrimpy&#x2F;quik&quot;&gt;quik&lt;&#x2F;a&gt;, lector de sms;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;signal.org&#x2F;&quot;&gt;signal&lt;&#x2F;a&gt;, servicio de mensajería instantánea;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.thunderbird.net&#x2F;mobile&#x2F;&quot;&gt;thunderbird&lt;&#x2F;a&gt;, cliente de correo electrónico;&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;tusky.app&#x2F;&quot;&gt;tusky&lt;&#x2F;a&gt;, cliente de Mastodon.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Guía de Markdown</title>
        <published>2024-06-15T00:00:00+00:00</published>
        <updated>2024-06-15T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2024-06-15/"/>
        <id>https://alexisalzate.com/blog/2024-06-15/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2024-06-15/">&lt;p&gt;Markdown es un lenguaje de marcado que permite escribir usando una
sintaxis sencilla con el objetivo de convertir el texto a formato HTML.
Este lenguaje fue creado en el año 2004 por &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daringfireball.net&#x2F;projects&#x2F;markdown&#x2F;&quot;&gt;John Gruber&lt;&#x2F;a&gt; con la
ayuda de &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;http:&#x2F;&#x2F;www.aaronsw.com&#x2F;&quot;&gt;Aaron Swartz&lt;&#x2F;a&gt;, y es popular en diversos entornos web debido
a su facilidad de uso.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;encabezados&quot;&gt;Encabezados&lt;&#x2F;h2&gt;
&lt;p&gt;En Markdown, los encabezados emplean de 1 a 6 ‘#’ seguidos de un espacio
en blanco y el texto del encabezado.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;markdown&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;#&lt;&#x2F;span&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt; Esto es un h1&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;##&lt;&#x2F;span&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt; Esto es un h2&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;###&lt;&#x2F;span&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt; Esto es un h3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;####&lt;&#x2F;span&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt; Esto es un h4&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;#####&lt;&#x2F;span&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt; Esto es un h5&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;######&lt;&#x2F;span&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt; Esto es un h6&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;parrafos&quot;&gt;Párrafos&lt;&#x2F;h2&gt;
&lt;p&gt;Para indicar el final de un párrafo, basta con separar el texto con una
línea en blanco.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;markdown&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Etiam lobortis&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;facilisis sem. Nullam nec mi et neque pharetra sollicitudin.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Etiam lobortis&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;facilisis sem. Nullam nec mi et neque pharetra sollicitudin.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;saltos-de-linea&quot;&gt;Saltos de línea&lt;&#x2F;h2&gt;
&lt;p&gt;Un salto de línea consta de un doble espacio antes de presionar la tecla
&lt;strong&gt;‘Enter’&lt;&#x2F;strong&gt;.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;markdown&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;Lorem ipsum dolor sit amet,  &lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;consectetuer adipiscing elit.  &lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;Etiam lobortis facilisis sem.  &lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;Nullam nec mi et neque pharetra sollicitudin.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;listas&quot;&gt;Listas&lt;&#x2F;h2&gt;
&lt;p&gt;Las listas ordenadas utilizan números seguidos de un punto, un espacio y
el texto del elemento de la lista.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;markdown&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;1.&lt;&#x2F;span&gt;&lt;span&gt; Lorem&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;2.&lt;&#x2F;span&gt;&lt;span&gt; Ipsum&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;3.&lt;&#x2F;span&gt;&lt;span&gt; Dolor&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Similarmente, las listas desordenadas utilizan un guion, seguido de un
espacio y el texto del elemento de la lista.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;markdown&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;-&lt;&#x2F;span&gt;&lt;span&gt; Lorem&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;-&lt;&#x2F;span&gt;&lt;span&gt; ipsum&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;-&lt;&#x2F;span&gt;&lt;span&gt; dolor&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;citas&quot;&gt;Citas&lt;&#x2F;h2&gt;
&lt;p&gt;Puedes indicar una cita con el símbolo ‘&amp;gt;’ seguido de un espacio y luego
el texto de la cita.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;markdown&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FF9CAC;font-style: italic;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;font-style: italic;&quot;&gt; Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Etiam&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FF9CAC;font-style: italic;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;font-style: italic;&quot;&gt; lobortis facilisis sem. Nullam nec mi et neque pharetra sollicitudin.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FF9CAC;font-style: italic;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FF9CAC;font-style: italic;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;font-style: italic;&quot;&gt; Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Etiam&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FF9CAC;font-style: italic;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;font-style: italic;&quot;&gt; lobortis facilisis sem. Nullam nec mi et neque pharetra sollicitudin.&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;enfasis&quot;&gt;Énfasis&lt;&#x2F;h2&gt;
&lt;p&gt;El lenguaje Markdown usa los asteriscos ‘*’ como indicadores de
énfasis.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;plain&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;*Texto en cursiva*&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;**Texto en negrilla**&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;reglas-horizontales&quot;&gt;Reglas horizontales&lt;&#x2F;h2&gt;
&lt;p&gt;Es posible generar una regla horizontal con tres guiones en una línea.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;markdown&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;---&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;enlaces&quot;&gt;Enlaces&lt;&#x2F;h2&gt;
&lt;p&gt;Añade el texto del enlace entre corchetes, seguido por la dirección web
entre paréntesis.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;markdown&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;[&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;Mi sitio web&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;](&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;text-decoration: underline;&quot;&gt;https:&#x2F;&#x2F;alexisalzate.com&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;También puedes añadir enlaces a modo de referencia.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;markdown&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;[&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;Mi sitio web&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;][&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;id&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;]&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;[&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;id&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;]:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #000000;background-color: #FFFFFF;&quot;&gt; &lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;text-decoration: underline;&quot;&gt;https:&#x2F;&#x2F;alexisalzate.com&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Nota:&lt;&#x2F;strong&gt; “id” puede ser reemplazado por cualquier cosa, los id suelen
ser números.&lt;&#x2F;p&gt;
&lt;p&gt;Además, es posible usar el nombre implícito del enlace. Basta con
utilizar un conjunto vacío de corchetes.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;markdown&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;[&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;Alexis Alzate&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;][]&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;[&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;Alexis Alzate&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;]:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #000000;background-color: #FFFFFF;&quot;&gt; &lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;text-decoration: underline;&quot;&gt;https:&#x2F;&#x2F;alexisalzate.com&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;imagenes&quot;&gt;Imágenes&lt;&#x2F;h2&gt;
&lt;p&gt;La sintaxis para añadir imágenes pretende parecerse a la sintaxis usada
por los enlaces.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;markdown&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;![&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;Texto alternativo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;](&lt;&#x2F;span&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&#x2F;ruta&#x2F;de&#x2F;la&#x2F;imagen.jpg&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;O en forma de referencia:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;markdown&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;![&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;Texto alternativo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;][&lt;&#x2F;span&gt;&lt;span&gt;id&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;]&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;[&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;id&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;]:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #000000;background-color: #FFFFFF;&quot;&gt; &lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;text-decoration: underline;&quot;&gt;ruta&#x2F;de&#x2F;la&#x2F;imagen.jpg&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;codigo&quot;&gt;Código&lt;&#x2F;h2&gt;
&lt;p&gt;Para escribir líneas de código en Markdown, encierra el código entre
comillas (`), o bloques de código entre tres comillas (```).&lt;&#x2F;p&gt;
&lt;p&gt;Así se escribe una línea de código:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;`:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;(){&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt; :&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;|&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;amp; };&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;`&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Así se escribe un bloque de código:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;c&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;```#include &lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;lt;&lt;&#x2F;span&gt;&lt;span&gt;stdio.h&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #C792EA;&quot;&gt;int&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt; main&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;() {&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;	printf&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;(&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;Hola, mundo!&lt;&#x2F;span&gt;&lt;span&gt;\n&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;);&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;font-style: italic;&quot;&gt;return&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F78C6C;&quot;&gt; 0&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;}&lt;&#x2F;span&gt;&lt;span&gt;```&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;sintaxis-extendida&quot;&gt;Sintaxis extendida&lt;&#x2F;h2&gt;
&lt;p&gt;Existen características adicionales que no están incluidas en la
especificación original de Markdown, pero que han sido implementadas en
librerías para ofrecer funcionalidades más avanzadas de formato de
texto.&lt;&#x2F;p&gt;
&lt;h3 id=&quot;formulas-matematicas&quot;&gt;Fórmulas matemáticas&lt;&#x2F;h3&gt;
&lt;p&gt;Una funcionalidad de sintaxis extendida es la integración con fórmulas
matemáticas utilizando la notación LaTeX.&lt;&#x2F;p&gt;
&lt;p&gt;Para asegurar el correcto funcionamiento, es necesario añadir las
librerías de MathJax al head del documento HTML.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;html&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;script&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C792EA;&quot;&gt; src&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;=&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;https:&#x2F;&#x2F;polyfill.io&#x2F;v3&#x2F;polyfill.min.js?features=es6&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&amp;gt;&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;script&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;script&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C792EA;&quot;&gt; type&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;=&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;text&#x2F;javascript&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C792EA;&quot;&gt; id&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;=&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;MathJax-script&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C792EA;&quot;&gt; async src&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;=&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;https:&#x2F;&#x2F;cdn.jsdelivr.net&#x2F;npm&#x2F;mathjax@3&#x2F;es5&#x2F;tex-chtml.js&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&amp;gt;&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;script&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;&lt;strong&gt;Nota:&lt;&#x2F;strong&gt; Por defecto LaTeX utiliza los símbolos $…$ para insertar
ecuaciones en línea, sin embargo, debido a la frecuencia con la que el
símbolo ‘$’ es usado en otros contextos, en la librería MathJax se
reemplaza dicha notación por \\(…\\).&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;tex&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;Ley de corrientes de Kirchhoff (LKC):&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;\&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;begin&lt;&#x2F;span&gt;&lt;span&gt;{equation}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;\&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;sum&lt;&#x2F;span&gt;&lt;span&gt;_{n=1}^{N} I_n = 0&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;\&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;end&lt;&#x2F;span&gt;&lt;span&gt;{equation}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;Ley de voltajes de Kirchhoff (LVK):&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;$$\&lt;&#x2F;span&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;sum&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;_{&lt;&#x2F;span&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;n=&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F78C6C;&quot;&gt;1&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;}^{&lt;&#x2F;span&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;N&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;}&lt;&#x2F;span&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt; V&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;_&lt;&#x2F;span&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;n = &lt;&#x2F;span&gt;&lt;span style=&quot;color: #F78C6C;&quot;&gt;0&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;$$&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;Ley de Ohm:&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;font-style: italic;&quot;&gt;\\&lt;&#x2F;span&gt;&lt;span&gt;(V = I * R&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;font-style: italic;&quot;&gt;\\&lt;&#x2F;span&gt;&lt;span&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;hr &#x2F;&gt;
&lt;p&gt;&lt;strong&gt;Referencias:&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;daringfireball.net&#x2F;projects&#x2F;markdown&#x2F;syntax&quot;&gt;Sintaxis de Markdown&lt;&#x2F;a&gt;.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;docs.mathjax.org&#x2F;&quot;&gt;Librería MathJax&lt;&#x2F;a&gt;.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Escritura no regulada</title>
        <published>2024-05-18T00:00:00+00:00</published>
        <updated>2024-05-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2024-05-18/"/>
        <id>https://alexisalzate.com/blog/2024-05-18/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2024-05-18/">&lt;p&gt;Escrito en colaboración con &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;gatooscuro.xyz&quot;&gt;GatoOscuro&lt;&#x2F;a&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;La escritura es la forma por excelencia de plasmar nuestras ideas; para
ello, basta y sobra con dar libertad a la pluma y derramar algo de tinta
en el papel. A su vez, la escritura no regulada se refiere al tipo de
escritura que carece de las convenciones formales de la gramática y la
estructura de un texto. Esto tiene el objetivo de dejar que las ideas
fluyan libremente sin preocuparse por la calidad o el resultado final,
permitiendo a los escritores un modo de terapia o autoexploración,
ayudándoles a procesar emociones difíciles o aclarar sus pensamientos y
experiencias de manera autentica y sin restricciones.&lt;&#x2F;p&gt;
&lt;p&gt;Y aunque como autores somos los propietarios de nuestros textos, debemos
convivir con la existencia de las leyes, normativas y controles que
supervisan y, de alguna manera, restringen nuestras ideas. Sin embargo,
en la sociedad actual es relativamente sencillo escribir. Aparte de las
herramientas analógicas, existe una multitud de software para este
propósito. Cabe recalcar que escribir sin trabas puede exponer a las
personas a todo tipo de riesgos. Dicho software ha evolucionado hasta el
punto en el que la gran mayoría de personas tiene redes sociales en las
cuales pueden expresarse o crear sus propios espacios, ya sean públicos
o privados, como es nuestro caso al expresarnos “libremente” desde
nuestros blogs.&lt;&#x2F;p&gt;
&lt;p&gt;Las formas creativas de expresión que no están reguladas por las
convenciones literarias tradicionales nos proveen un mecanismo para el
ejercicio democrático, permitiendo expresar preferencias políticas y
otras ideas particulares, bajo el derecho de la libertad de expresión
reconocido por aquella súplica que nos dejaron nuestros antepasados en
forma de Declaración Universal de los Derechos Humanos. Aún hoy, el arte
que no desafíe las normas convencionales no es arte.&lt;&#x2F;p&gt;
&lt;p&gt;Pero siendo sinceros, la escritura está sujeta a la censura o al control
de una autoridad centralizada. Las distintas jurisprudencias han
abordado aspectos específicos relacionados con la libertad de expresión
en el contexto de las redes sociales, como la protección al periodismo,
la no protección a la calumnia, y la tutela de la honra y la reputación
durante el desarrollo de la contienda. Estos criterios reflejan la
complejidad de equilibrar la libertad de expresión con la necesidad de
proteger los derechos humanos y el orden público, donde la escritura no
regulada se muestra como un acto de resistencia contra el control
gubernamental sobre la información y la comunicación.&lt;&#x2F;p&gt;
&lt;p&gt;La escritura no regulada es un excelente punto de partida para el
proceso de revisión y edición, que vale como herramienta para superar
los bloqueos creativos o desarrollar procesos personales. Sin embargo
esta debe discernirse de medios de comunicación social, que
frecuentemente han sido utilizados como un medio para restringir la
libertad de expresión. Estos medios sociales han servido más como
métodos publicitarios alejados del fin de facilitar la circulación de
noticias, ideas y conversaciones. Incluso impidiendo el derecho de las
personas a recibir información, limitando el desarrollo pleno de una
sociedad democrática.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Dependencia de internet</title>
        <published>2024-04-20T00:00:00+00:00</published>
        <updated>2024-04-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2024-04-20/"/>
        <id>https://alexisalzate.com/blog/2024-04-20/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2024-04-20/">&lt;p&gt;Mientras aprendía informática, a menudo me encontraba sin una conexión
estable a internet. Debido a esto, desarrollé el buen hábito de
descargar el material directamente en mi computadora. De esta manera,
puedo asegurarme de tener acceso local en todo momento. Aunque muchas
veces podría acceder al él en diversas plataformas web, encuentro más
conveniente tener copias de los archivos que necesito en mi computadora.
Esto me permite evitar posibles problemas con la conexión a internet, ya
que no experimento interrupciones en mi flujo de trabajo.&lt;&#x2F;p&gt;
&lt;p&gt;Ahora bien, la informática ha cambiado mucho desde aquellos tiempos, y
específicamente las redes han mejorado significativamente. Lo cual,
lejos de ser algo completamente positivo, ha creado en la sociedad una
dependencia de internet, incluso reacia a mantener fotografías,
documentos, música, entre otros archivos en sus computadoras personales,
optando en cambio por servicios que requieren tener acceso a una
conexión de internet estable.&lt;&#x2F;p&gt;
&lt;p&gt;Es innegable que en esta metodología, se presupone el funcionamiento
adecuado del sistema. En contraste, para acceder a un archivo en mi
computadora simplemente necesito confiar en su correcto funcionamiento,
mientras que, para acceder a archivos a través de un servicio en
internet, se depende también de toda la infraestructura donde se alojan
los datos y todo lo que hay entre ellos. Esto, como es obvio, presenta
más vulnerabilidades y aumenta la posibilidad de experimentar problemas.&lt;&#x2F;p&gt;
&lt;p&gt;Además, es fundamental el uso de las herramientas que no requieren una
conexión constante a internet, ya que no sólo garantiza una mayor
seguridad y privacidad, sino que también se evita la exposición a
posibles problemas de seguridad informática. Asimismo, al tener control
total sobre los datos almacenados localmente, se facilita la gestión y
organización de la información sin estar sujeto a las limitaciones o
políticas de terceros.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Aprende de los libros</title>
        <published>2024-04-06T00:00:00+00:00</published>
        <updated>2024-04-06T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2024-04-06/"/>
        <id>https://alexisalzate.com/blog/2024-04-06/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2024-04-06/">&lt;p&gt;A lo largo de la historia, los libros han sido útiles para transmitir
todo tipo de conocimientos, cultura, valores y experiencias humanas. Su
inmutabilidad radica en la permanencia de las ideas que contienen, esto
se debe al cuidado excepcional que un buen escritor debe poner en la
elaboración de su obra. Además, los libros generalmente pasan por un
riguroso proceso de selección y revisión antes de ser publicados, donde
los autores y sus pares suelen ser expertos en sus campos, y editores
especializados son responsables de garantizar que el contenido esté
respaldado por evidencia sólida.&lt;&#x2F;p&gt;
&lt;p&gt;Leer un libro requiere esfuerzo, lo cual nos proporciona una mayor
retentiva. Además, gracias a su estructura, es fácil volver atrás y
consultar material anterior en el aprendizaje. Sólo hay que abrir el
capítulo y pasar unas cuantas páginas hasta encontrar lo que buscas. Un
libro de texto es una herramienta mucho más útil que una búsqueda en
internet, sobretodo cuando se requiere información confiable.&lt;&#x2F;p&gt;
&lt;p&gt;Generalmente, un libro ofrece un mayor nivel de profundidad y contexto.
Un autor puede dedicar cientos de páginas a explorar un tema en detalle,
proporcionando un análisis exhaustivo y perspectivas diversas.&lt;&#x2F;p&gt;
&lt;p&gt;En contraste, los medios digitales ofrecen facilidad de publicar en
línea, donde cualquiera puede compartir información. Y aunque reconozco
la importancia de la palabra no regulada, esta facilidad también puede
llevar a la difusión de información no verificada. Algo que me parece
preocupante es que el uso de los libros se ha perdido bastante en las
personas que me rodean.&lt;&#x2F;p&gt;
&lt;p&gt;Internet es valiosa como medio de exposición. Los foros son una de las
mejores maneras de resolver cuestiones practicas. Los vídeos, a su vez,
son buenos en la demostración de procesos de cualquier tipo. Pero a
menudo son un resumen de la información que se puede encontrar en los
libros.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Ofimática en GNU&#x2F;Linux</title>
        <published>2024-03-02T00:00:00+00:00</published>
        <updated>2024-03-02T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2024-03-02/"/>
        <id>https://alexisalzate.com/blog/2024-03-02/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2024-03-02/">&lt;p&gt;Uno de los problemas que una persona puede encontrarse al empezar a
utilizar una distribución de GNU&#x2F;Linux por primera vez es la supuesta
falta de programas. Esto se debe a que esperan cierta familiaridad y
desde el desconocimiento, buscan que los programas funcionen de manera
similar a como funcionaban en su anterior sistema operativo.&lt;&#x2F;p&gt;
&lt;p&gt;Olvidar algo que sabemos con el objetivo de aprender algo nuevo para
suplir la misma necesidad a priori no parece tener mucho sentido, sin
embargo, y aunque existen diversas formas de instalar programas que
fueron concebidos para otros sistemas operativos en GNU&#x2F;Linux, a largo
plazo, la mejor opción es usar programas que sean acordes a la filosofía
o forma de trabajo del sistema operativo que queremos utilizar. Con esto
quiero decir que generalmente, en GNU&#x2F;Linux existen mejores opciones.&lt;&#x2F;p&gt;
&lt;p&gt;La creación de documentos es una habilidad valiosa, tanto en el ámbito
personal como laboral, para este fin una de las mejores opciones es
utilizar &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.latex-project.org&#x2F;&quot;&gt;LaTeX&lt;&#x2F;a&gt;, un sistema de composición de documentos que utiliza
un lenguaje de marcado para definir el formato y la apariencia del
contenido. Lo que lo hace ideal para documentos académicos y
científicos, que requieren una apariencia uniforme y profesional. LaTeX
es popular debido a que ofrece una sintaxis sencilla y eficiente,
pensada para que las personas se centren en el contenido y no en el
formato.&lt;&#x2F;p&gt;
&lt;p&gt;De manera similar, el análisis de datos es una tarea recurrente, para
dicho propósito &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.r-project.org&#x2F;&quot;&gt;El proyecto R&lt;&#x2F;a&gt; es una excelente opción, ya que está
diseñado para permitir un análisis avanzado y complejo sin olvidarse de
una integración completa con otras herramientas tanto de análisis como
de visualización.&lt;&#x2F;p&gt;
&lt;p&gt;Con el software mencionado podemos suplir las necesidades del
procesamiento de texto, hojas de cálculo o presentaciones que se
encuentran en programas de ofimática. Sin embargo, también existe
&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.libreoffice.org&#x2F;&quot;&gt;LibreOffice&lt;&#x2F;a&gt; que ofrece una forma de trabajo más similar. Ahora
bien, el motivo por el cual es interesante adoptar la forma de trabajar
que nos ofrece GNU&#x2F;Linux viene dado por &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;es.wikipedia.org&#x2F;wiki&#x2F;Filosof%C3%ADa_de_Unix&quot;&gt;la filosofía de Unix&lt;&#x2F;a&gt;, donde
es común utilizar varios programas para llevar a cabo una tarea.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Fácil y sencillo</title>
        <published>2024-02-24T00:00:00+00:00</published>
        <updated>2025-11-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2024-02-24/"/>
        <id>https://alexisalzate.com/blog/2024-02-24/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2024-02-24/">&lt;p&gt;Hace un tiempo surgió en Mastodon (una de tantas redes sociales) la
discusión sobre la web sencilla. Sin embargo, no espero que todas las
personas sean expertas en informática; yo tampoco lo soy. Encontré que
existe una confusión entre lo que es sencillo y lo que es fácil.&lt;&#x2F;p&gt;
&lt;p&gt;La web no es sencilla; si quieres aprender a crear tu propio sitio web,
debes aprender un par de lenguajes de programación (HTML y CSS, y
opcionalmente, JavaScript). Además, debes aprender cómo alojar estos
archivos para que cualquier persona pueda acceder a ellos desde un
dispositivo con conexión a internet.&lt;&#x2F;p&gt;
&lt;p&gt;Y aunque dicha forma es la más sencilla, no es la más fácil. Lo más
fácil sería utilizar un servicio que te ofrezca una plantilla para lo
que sea que quieras publicar, aprender Markdown, o utilizar un generador
de sitios, o una solución que no requiera código.&lt;&#x2F;p&gt;
&lt;p&gt;Antes de llegar a saber cómo publicar un sitio web, debes conocer
algunas bases de la informática, desde cómo encender un dispositivo,
cómo conectarlo a internet, cómo editar un archivo, algo de
mecanografía… Y si quieres ser un experto, puedes incluso aprender
cómo funciona una computadora, un sistema operativo, un protocolo web…&lt;&#x2F;p&gt;
&lt;p&gt;Puedes aprender diferentes tecnologías y dominar sus técnicas, y aún así
hacer un sitio web que no sea sencillo. Existen diversas filosofías o
formas de trabajo: el código limpio, el minimalismo digital, las
diferentes formas de diseñar una interfaz…&lt;&#x2F;p&gt;
&lt;p&gt;Son muchas las decisiones con las que uno se enfrenta a la hora de hacer
un sitio web. En alguna ocasión escribí que un blog es sólo tan bueno
como su contenido, y quiero generalizar un poco más esa frase: una web
es sólo tan buena como su contenido, es eso lo que importa.&lt;&#x2F;p&gt;
&lt;p&gt;Alguna vez me di cuenta que una de las mejores formas de demostrar
maestría era hacer que se viera fácil y sencillo.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Demasiada información generalizada</title>
        <published>2024-01-20T00:00:00+00:00</published>
        <updated>2024-01-20T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2024-01-20/"/>
        <id>https://alexisalzate.com/blog/2024-01-20/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2024-01-20/">&lt;p&gt;Quiero tomarme un respiro.&lt;&#x2F;p&gt;
&lt;p&gt;No quiero ver en las noticias las tragedias del día, o leer en las redes
sociales los problemas del mundo, mucho menos ver propagandas de
productos que no necesito, no me interesan las nuevas tendencias, o si
la inteligencia artificial ahora es inteligente y dejo de ser
artificial.&lt;&#x2F;p&gt;
&lt;p&gt;Podría estar toda mi vida consumiendo información y morir sin saber nada
realmente. Hace un tiempo que no me encuentro conforme con a gran
cantidad de información que recibo desde internet. Quiero un ritmo de
vida que me permita leer un libro de principio a fin, bailar como antes,
y disfrutar en tranquilidad de las buenas películas.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Introducción a la programación en C</title>
        <published>2023-12-23T00:00:00+00:00</published>
        <updated>2023-12-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2023-12-23/"/>
        <id>https://alexisalzate.com/blog/2023-12-23/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2023-12-23/">&lt;p&gt;La programación es el proceso de crear programas. Normalmente, los
computadores sólo entienden el lenguaje binario, que es difícil de leer
y escribir para las personas. Los lenguajes de programación son un
intermedio entre los idiomas humanos y lo que pueden entender los
computarores.&lt;&#x2F;p&gt;
&lt;p&gt;C es un lenguaje de programación potente y rápido, fue creado en 1972, y
esta bien establecido y probado a lo largo del tiempo.&lt;&#x2F;p&gt;
&lt;p&gt;Vamos a escribir el código fuente de un programa en C, compilarlo, y
ejecutarlo.&lt;&#x2F;p&gt;
&lt;p&gt;Necesitarás un edidor de texto plano con el cual escribir el programa.
Los mejores editores de texto son &lt;a href=&quot;https:&#x2F;&#x2F;alexisalzate.com&#x2F;blog&#x2F;2023-08-12&#x2F;&quot;&gt;Vim&lt;&#x2F;a&gt; e Emacs.&lt;&#x2F;p&gt;
&lt;p&gt;Además, también necesitarás un compilador, el programa que traduce el
archivo de texto con tu programa escrito en C a un archivo ejecutable.
Mi preferencia personal es usar GNU Compiler Collection (gcc),
disponible en la mayoría de distribuciones de GNU&#x2F;Linux.&lt;&#x2F;p&gt;
&lt;p&gt;Escribe el sigueinte código en tu editor de texto:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;c&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;font-style: italic;&quot;&gt;#include&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;stdio.h&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #C792EA;&quot;&gt;int&lt;&#x2F;span&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt; main&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;(&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C792EA;&quot;&gt;void&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;)&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;{&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #82AAFF;&quot;&gt;	printf&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;(&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;Hola mundo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;);&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;font-style: italic;&quot;&gt;	return&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F78C6C;&quot;&gt; 0&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Guarda el archivo con la extensión &lt;strong&gt;.c&lt;&#x2F;strong&gt; (por ejemplo, hola-mundo.c).
Luego, abre una consola y navega a la carpeta que contiene el programa
(con el comando cd) y compila el programa escribiendo:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;gcc&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; -o hola-mundo.c hola-mundo&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Debería aparecer un archivo ejecutable llamado “hola-mundo”. Puedes
ejecutar el programa desde la línea de comandos:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;.&#x2F;hola-mundo&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Ahora analicemos brevemente el programa escrito:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;#include &amp;lt;stdio.h&amp;gt;&lt;&#x2F;strong&gt; carga la biblioteca “stdio” (Input&#x2F;Output
estándar).&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;int main(void)&lt;&#x2F;strong&gt; es el punto central del programa, entre llaves se
escriben los comandos a ejecutar.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;printf(“”)&lt;&#x2F;strong&gt; imprime el texto entre las comillas; los comandos de
este tipo terminan con ;.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;return 0&lt;&#x2F;strong&gt; indica que el programa finalizó correctamente.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Si quieres continuar aprendiendo te recomiendo el libro “El lenguaje de
programación C” escrito por Brian W. Kernighan &amp;amp; Dennis M. Ritchie.&lt;&#x2F;p&gt;
&lt;p&gt;El minimalismo es una parte muy importante de la programación, nunca
hagas un programa más complejo de lo necesario.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Guía básica de CSS</title>
        <published>2023-11-11T00:00:00+00:00</published>
        <updated>2023-11-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2023-11-11/"/>
        <id>https://alexisalzate.com/blog/2023-11-11/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2023-11-11/">&lt;p&gt;Cascading Style Sheets (CSS) son las hojas de estilo en cascada
utilizadas para dar formato a documentos. Estas permiten personalizar la
apariencia de los elementos a través de reglas de estilo que contienen
selectores y propiedades.&lt;&#x2F;p&gt;
&lt;p&gt;Los selectores en CSS indican qué elementos recibirán las propiedades
establecidas. CSS sigue el principio de cascada, lo que significa que
las reglas más específicas tienen prioridad sobre las más generales.
Además, los estilos se heredan de los elementos padres a los elementos
hijos.&lt;&#x2F;p&gt;
&lt;p&gt;Para aplicar hojas de estilo externas en un &lt;a href=&quot;https:&#x2F;&#x2F;alexisalzate.com&#x2F;blog&#x2F;2023-11-04&#x2F;&quot;&gt;documento HTML&lt;&#x2F;a&gt;, se
utiliza la etiqueta &lt;code&gt;&amp;lt;link&amp;gt;&lt;&#x2F;code&gt; en la sección &lt;strong&gt;head&lt;&#x2F;strong&gt; del documento. En el
siguiente ejemplo, aplicamos la hoja de estilos llamada &lt;strong&gt;“style.css”&lt;&#x2F;strong&gt;:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;html&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;link&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C792EA;&quot;&gt; rel&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;=&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;stylesheet&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C792EA;&quot;&gt; href&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;=&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;style.css&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Para escribir un selector, frecuentemente se utiliza una etiqueta HTML,
y entre llaves, las propiedades de estilo que se desean añadir. En el
siguiente ejemplo, se está estableciendo el estilo para todos los
párrafos del documento:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;css&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;p&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; {&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #B2CCD6;&quot;&gt;	color&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;: #&lt;&#x2F;span&gt;&lt;span&gt;111&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #B2CCD6;&quot;&gt;	font-size&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F78C6C;&quot;&gt; 16px&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #B2CCD6;&quot;&gt;	font-family&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;:&lt;&#x2F;span&gt;&lt;span&gt; sans-serif&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #B2CCD6;&quot;&gt;	line-height&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F78C6C;&quot;&gt; 1.7&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #B2CCD6;&quot;&gt;	margin-bottom&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;:&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F78C6C;&quot;&gt; 1em&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;}&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Guía básica de HTML</title>
        <published>2023-11-04T00:00:00+00:00</published>
        <updated>2025-11-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2023-11-04/"/>
        <id>https://alexisalzate.com/blog/2023-11-04/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2023-11-04/">&lt;p&gt;El Lenguaje de Marcado de Hiper Texto, más conocido como HTML, se
utiliza para estructurar el contenido de una página web. Este tipo de
documento utiliza la extensión &lt;strong&gt;.html&lt;&#x2F;strong&gt; para indicarle al ordenador que
se trata de un documento web.&lt;&#x2F;p&gt;
&lt;p&gt;Cada documento HTML consiste en elementos que están construidos por
contenido y etiquetas.&lt;&#x2F;p&gt;
&lt;p&gt;Las etiquetas establecen dónde comienza y termina un elemento. Estas
consisten en el nombre del elemento, encerrado entre paréntesis
angulares: &amp;lt; y &amp;gt;. Normalmente funcionan en pares, donde la etiqueta de
cierre es la misma que la etiqueta de apertura, pero con una barra
diagonal hacia adelante: &#x2F;.&lt;&#x2F;p&gt;
&lt;p&gt;Es recomendable que cada documento siga una estructura básica. Un
documento HTML debería comenzar declarando el tipo de documento con una
etiqueta de declaración al inicio:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;html&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;lt;!&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;DOCTYPE&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C792EA;&quot;&gt; html&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;La etiqueta &lt;code&gt;&amp;lt;html&amp;gt;&lt;&#x2F;code&gt; se conoce como el elemento raíz, ya que todo en un
sitio web debe ir dentro de dicho elemento.&lt;&#x2F;p&gt;
&lt;p&gt;La etiqueta &lt;code&gt;&amp;lt;head&amp;gt;&lt;&#x2F;code&gt; sirve para añadir información general de un sitio
web, incluyendo el título, enlaces a &lt;a href=&quot;https:&#x2F;&#x2F;alexisalzate.com&#x2F;blog&#x2F;2023-11-11&#x2F;&quot;&gt;hojas de estilo&lt;&#x2F;a&gt;, entre otros.&lt;&#x2F;p&gt;
&lt;p&gt;La etiqueta &lt;code&gt;&amp;lt;body&amp;gt;&lt;&#x2F;code&gt; representa el cuerpo o el contenido del sitio web.&lt;&#x2F;p&gt;
&lt;p&gt;En HTML podemos usar 6 tamaños de título: &lt;code&gt;&amp;lt;h1&amp;gt;&lt;&#x2F;code&gt;, &lt;code&gt;&amp;lt;h2&amp;gt;&lt;&#x2F;code&gt;, …, &lt;code&gt;&amp;lt;h6&amp;gt;&lt;&#x2F;code&gt;.
Además, también podemos utilizar la etiqueta &lt;code&gt;&amp;lt;p&amp;gt;&lt;&#x2F;code&gt; para insertar un
párrafo.&lt;&#x2F;p&gt;
&lt;p&gt;Algunas etiquetas pueden tener atributos que proporcionan información
adicional sobre el elemento. Por ejemplo, la etiqueta &lt;code&gt;&amp;lt;a&amp;gt;&lt;&#x2F;code&gt; contiene el
atributo &lt;strong&gt;‘href’&lt;&#x2F;strong&gt; que se usa para enlazar a otro sitio web.&lt;&#x2F;p&gt;
&lt;p&gt;A continuación, se muestra un ejemplo de un documento HTML estructurado:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;html&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;lt;!&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;DOCTYPE&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C792EA;&quot;&gt; html&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;html&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;	&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;head&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;		&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;title&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;span&gt;Mi primera web.&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;title&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;		&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;link&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C792EA;&quot;&gt; rel&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;=&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;stylesheet&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C792EA;&quot;&gt; href&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;=&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;style.css&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;	&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;head&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;	&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;body&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;		&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;h1&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;span&gt;Título&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;h1&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;		&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;p&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;span&gt;Primer párrafo de mi sitio web.&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;p&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;		&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;p&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;span&gt;Segundo párrafo.&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;p&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;		&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;p&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;span&gt;El enlace de mi sitio web: &lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;lt;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;a&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C792EA;&quot;&gt; href&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;=&amp;quot;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;https:&#x2F;&#x2F;alexisalzate.com&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;quot;&amp;gt;&lt;&#x2F;span&gt;&lt;span&gt;alexisalzate.com&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;a&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;span&gt;.&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;p&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;	&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;body&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;lt;&#x2F;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #F07178;&quot;&gt;html&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;gt;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;</content>
        
    </entry>
    <entry xml:lang="es">
        <title>La financiación en la era digital</title>
        <published>2023-10-21T00:00:00+00:00</published>
        <updated>2023-10-21T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2023-10-21/"/>
        <id>https://alexisalzate.com/blog/2023-10-21/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2023-10-21/">&lt;p&gt;Hace algún tiempo, tomé la decisión de incorporar un enlace en mi sitio
web para aceptar donaciones, lo cual generó algunas críticas
relacionadas con la posibilidad de que esto afectara mi credibilidad al
“vender mis escritos”. En este contexto, me gustaría expresar mi opinión
al respecto.&lt;&#x2F;p&gt;
&lt;p&gt;Soy una persona común y no tengo el privilegio de contar con recursos
económicos en exceso. Por lo tanto, no puedo darme el lujo de gastar sin
restricciones. Debo preocuparme de pagar el alquiler, los costos de
atención médica, la alimentación, los servicios básicos (agua, gas y
electricidad), y entre otras cosas, el acceso a internet. Estos son
elementos básicos para mi bienestar, aunque el último, el internet,
además de ocupar mi tiempo, no me ofrece ningún beneficio tangible.&lt;&#x2F;p&gt;
&lt;p&gt;Actualmente, estoy cursando una carrera universitaria, lo que me lleva a
trabajar en un empleo a tiempo parcial. Aunque inicialmente mi sitio web
no fue concebido con la intención de generar ingresos, ahora, a pesar de
ser mínimos, existen costos de funcionamiento que me gustaría que
pudieran autogestionarse.&lt;&#x2F;p&gt;
&lt;p&gt;Muchas personas han crecido en un entorno digital donde no tenían que
preocuparse por los costos asociados a los servicios de internet. Esto
ha persistido durante tanto tiempo que ha dado lugar a la creencia de
que el internet es tan valioso y esencial que sus servicios son
inherentemente gratuitos.&lt;&#x2F;p&gt;
&lt;p&gt;No obstante, en la realidad, numerosos servicios en línea generan
ingresos que no alcanzan para sufragar sus propios costos operativos.
Muchas empresas tecnológicas operan con pérdidas considerables con el
propósito de aumentar su base de usuarios y, posteriormente, obtienen
ganancias al vender datos personales y mostrar anuncios de manera
indiscriminada.&lt;&#x2F;p&gt;
&lt;p&gt;Es fundamental reconocer que alguien debe asumir los costos; el uso de
un servicio no puede ser considerado una forma de compensación. La
satisfacción del usuario no es suficiente para cubrir los gastos
vinculados a servidores, ancho de banda y otros recursos necesarios.&lt;&#x2F;p&gt;
&lt;p&gt;Personalmente, me complace cuando tengo la oportunidad de financiar los
gastos de mi sitio web y, en ocasiones, contribuir con donaciones a los
servicios libres y gratuitos que utilizo. Es la única manera de que las
cosas funcionen de manera sostenible.&lt;&#x2F;p&gt;
&lt;p&gt;En la realidad, los esfuerzos humanos tienden a favorecer los intereses
de quienes sustentan la vida cotidiana. Desafortunadamente, mi visión
idealizada de internet no es factible desde una perspectiva puramente
financiera.&lt;&#x2F;p&gt;
&lt;p&gt;No tengo la intención de iniciar discusiones acerca de culpas o
responsabilidades, ya que todos somos conscientes del papel que
desempeñamos. Por mi parte, cada línea de código de mi sitio web se ha
desarrollado con un propósito claro, y es lamentable que la experiencia
de navegar en internet cada día sea peor.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Finanzas personales</title>
        <published>2023-09-23T00:00:00+00:00</published>
        <updated>2023-09-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2023-09-23/"/>
        <id>https://alexisalzate.com/blog/2023-09-23/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2023-09-23/">&lt;p&gt;Una de mis metas principales en la vida es alcanzar la máxima calma y
tranquilidad posible. Para lograrlo, considero esencial dedicar tiempo a
administrar mis recursos económicos con el fin de evaluar de manera
honesta mi poder adquisitivo y analizar la diferencia con lo que
desearía tener para buscar una forma de acortar esa brecha.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;presupuesto&quot;&gt;Presupuesto&lt;&#x2F;h2&gt;
&lt;p&gt;Un presupuesto es un plan financiero que detalla los ingresos y gastos
durante un periodo específico. Su objetivo principal es asignar los
fondos disponibles para cubrir primero las necesidades básicas y luego
alcanzar nuestros objetivos establecidos. Esto se logra garantizando que
los gastos no superen los ingresos y manteniendo un registro preciso de
las finanzas.&lt;&#x2F;p&gt;
&lt;p&gt;Para crear un presupuesto, es fundamental identificar tus fuentes de
ingresos, como tu salario, regalías, inversiones, etc. Además, es
necesario detallar tus gastos, como el alquiler, alimentos, transporte,
ahorros y cualquier otro gasto.&lt;&#x2F;p&gt;
&lt;p&gt;Suma todos tus ingresos y resta todos tus gastos; de esta manera,
determinarás tu saldo. Si obtienes un saldo negativo, identifica las
áreas en las que puedes reducir gastos o aumentar ingresos que se
adapten mejor a tu situación.&lt;&#x2F;p&gt;
&lt;p&gt;Lleva un registro, preferiblemente mes a mes, ya que esto facilitará el
seguimiento y te permitirá revisar y ajustar regularmente a medida que
evolucione tu situación financiera.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;ahorro&quot;&gt;Ahorro&lt;&#x2F;h2&gt;
&lt;p&gt;El ahorro implica reservar una parte de los ingresos en lugar de
gastarlos de inmediato. El objetivo principal del ahorro es alcanzar
metas a largo plazo, como comprar una casa, financiar la educación o
crear un fondo de emergencia. Esto nos ayuda a construir seguridad
financiera y a tener recursos disponibles cuando sean necesarios.&lt;&#x2F;p&gt;
&lt;p&gt;Para lograr un ahorro efectivo, es esencial reservar una parte de tus
ingresos cada vez que los recibas. No deberías ahorrar “lo que sobre”,
ya que generalmente no suele sobrar. Incluso pequeños ajustes en la
forma en que manejas tu dinero pueden generar ahorros significativos con
el tiempo.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;fondo-de-emergencias&quot;&gt;Fondo de emergencias&lt;&#x2F;h2&gt;
&lt;p&gt;Un fondo de emergencias es un ahorro destinado a cubrir gastos
inesperados o situaciones de crisis. Su propósito es proporcionar
seguridad financiera en momentos de necesidad, como gastos médicos o
momentos de desempleo.&lt;&#x2F;p&gt;
&lt;p&gt;Este fondo generalmente se compone de una cantidad de dinero en efectivo
o en una cuenta de ahorros de fácil acceso. Se recomienda que este fondo
sea suficiente para cubrir al menos de tres a seis meses de gastos,
proporcionando así un margen de tiempo suficiente para hacer frente a
emergencias.&lt;&#x2F;p&gt;
&lt;p&gt;Prioriza la creación de tu fondo de emergencias, es lo primero para lo
que deberíamos ahorrar. Idealmente, este fondo debe estar en una cuenta
separada de tus otros ahorros.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;deudas&quot;&gt;Deudas&lt;&#x2F;h2&gt;
&lt;p&gt;Una deuda es una suma de dinero que alguien te presta con el acuerdo de
que la devolverás en el futuro, generalmente con un interés adicional.&lt;&#x2F;p&gt;
&lt;p&gt;La clave es pagarlas. El crédito no equivale a un aumento de sueldo,
sino a una flexibilidad para gastar, lo que, además conlleva intereses y
puede aumentar innecesariamente el costo de un producto o servicio.&lt;&#x2F;p&gt;
&lt;p&gt;El primer paso consiste en reducir los gastos y destinar una cantidad
mensual que puedas pagar hacia tus deudas. Esta cantidad debería ser
superior al pago mínimo de tus créditos.&lt;&#x2F;p&gt;
&lt;p&gt;Registra tus deudas desde la tasa de interés más alta hasta la más baja.
Paga, al menos, el pago mínimo de cada deuda, pero concéntrate en la
primera de la lista y destina la mayor cantidad posible a esta.&lt;&#x2F;p&gt;
&lt;p&gt;Una vez que hayas liquidado la primera deuda, toma el mismo monto y
aplícalo a la siguiente deuda, y así sucesivamente hasta que hayas
pagado todas tus deudas.&lt;&#x2F;p&gt;
&lt;p&gt;De esta manera, cada vez que liquides una deuda, tendrás más dinero
disponible para abordar las siguientes, acelerando el proceso de pago de
todas tus deudas.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;compras&quot;&gt;Compras&lt;&#x2F;h2&gt;
&lt;p&gt;Una compra es el acto de adquirir bienes o servicios a cambio de un
pago.&lt;&#x2F;p&gt;
&lt;p&gt;Haz una lista de los bienes que deseas comprar y, sobre ella, toma
decisiones que te ofrezcan el mejor valor por tu dinero. Compara precios
y características, evita las compras impulsivas y no te limites a una
sola marca. Aprovecha descuentos (como mencioné antes, en la lista de
bienes que deseas comprar). En pocas palabras, prioriza calidad sobre la
cantidad.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;inversiones&quot;&gt;Inversiones&lt;&#x2F;h2&gt;
&lt;p&gt;El objetivo es utilizar el dinero del que no necesitas disponer para
generar más dinero.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Censura</title>
        <published>2023-09-02T00:00:00+00:00</published>
        <updated>2023-09-02T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2023-09-02/"/>
        <id>https://alexisalzate.com/blog/2023-09-02/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2023-09-02/">&lt;p&gt;Internet es vasto. La cantidad de información existente en los
servidores es tan inmensa que nadie podría leerla en toda su vida.&lt;&#x2F;p&gt;
&lt;p&gt;La vida no es color de rosa; generalmente se torna deprimente, violenta,
sexual, interesante… Internet, gracias a la libertad de expresión,
siempre está reflejando quiénes somo como individuos y como sociedad.&lt;&#x2F;p&gt;
&lt;p&gt;Sin embargo, existen empresas que osan crear un internet donde,
curiosamente, no se suele ver nada de esto. Está censurado, y el motivo
es muy simple: los gobiernos, y las grandes corporaciones publicitarias
no quieren asociar su imagen con este tipo de contenidos.&lt;&#x2F;p&gt;
&lt;p&gt;Las personas, por otro lado, consumen estas cosas casi siempre en
lugares que no son apropiados para ello. No desafíes la ley frente a un
policía. No busques contenido ilegal en Google, YouTube u otros
servicios infantiles y ridículos que solo buscan ganar dinero a costas
de intentar quitarnos una parte de nuestras vidas.&lt;&#x2F;p&gt;
&lt;p&gt;Encuentra alternativas, lee lo que necesites leer, acepta las dicotomías
de la vida, y evita a toda costa a las personas que quieren cerrar sus
ojos ante la realidad.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Guía básica de Vim</title>
        <published>2023-08-12T00:00:00+00:00</published>
        <updated>2025-08-11T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2023-08-12/"/>
        <id>https://alexisalzate.com/blog/2023-08-12/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2023-08-12/">&lt;p&gt;Esta es una guía para la utilización de mi editor de texto favorito,
&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.vim.org&#x2F;&quot;&gt;Vim&lt;&#x2F;a&gt;.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;instalacion&quot;&gt;Instalación&lt;&#x2F;h2&gt;
&lt;p&gt;Para instalar Vim en distribuciones basadas en Debian, abre una terminal
y ejecuta el siguiente comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;sudo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; apt install vim&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;uso-esencial&quot;&gt;Uso esencial&lt;&#x2F;h2&gt;
&lt;p&gt;Vim es un editor de texto modal, lo que significa que tiene diferentes
modos en los que puedes realizar distintas acciones. Los principales
son:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Modo normal:&lt;&#x2F;strong&gt; Es el modo predeterminado donde puedes navegar y
ejecutar comandos.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;Modo de inserción:&lt;&#x2F;strong&gt; Permite escribir y editar texto.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Para abrir un archivo con Vim simplemente abre una terminal y ejecuta el
siguiente comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;vim&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt; &amp;#39;&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt;nombre_del_archivo&lt;&#x2F;span&gt;&lt;span style=&quot;color: #89DDFF;&quot;&gt;&amp;#39;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Donde &lt;strong&gt;‘vim’&lt;&#x2F;strong&gt; es el nombre del paquete que vamos a ejecutar, en este
caso vim, y &lt;strong&gt;‘nombre_del_archivo’&lt;&#x2F;strong&gt; es el nombre del archivo que
queremos editar o crear.&lt;&#x2F;p&gt;
&lt;p&gt;Utiliza las teclas &lt;strong&gt;‘h’&lt;&#x2F;strong&gt;, &lt;strong&gt;‘j’&lt;&#x2F;strong&gt;, &lt;strong&gt;‘k’&lt;&#x2F;strong&gt;, y &lt;strong&gt;‘l’&lt;&#x2F;strong&gt; para moverte
hacia la izquierda, abajo, arriba y derecha respectivamente.&lt;&#x2F;p&gt;
&lt;p&gt;Posiciona el cursor donde lo necesites y presiona la tecla &lt;strong&gt;‘i’&lt;&#x2F;strong&gt; para
cambiar al modo de inserción, es decir, para insertar texto.&lt;&#x2F;p&gt;
&lt;p&gt;Siempre que quieras puedes regresar al modo normal presionando la tecla
&lt;strong&gt;‘Esc’&lt;&#x2F;strong&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;Para guardar los cambios, asegúrate de estar en el modo normal y ejecuta
el comando &lt;strong&gt;‘:w’&lt;&#x2F;strong&gt; y luego presiona la tecla &lt;strong&gt;‘Enter’&lt;&#x2F;strong&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;Puedes salir sin guardar escribiendo el comando &lt;strong&gt;‘:q!’&lt;&#x2F;strong&gt; y luego
presionando la tecla &lt;strong&gt;‘Enter’&lt;&#x2F;strong&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;También puedes combinar comandos, es decir, puedes escribir el comando
&lt;strong&gt;‘:wq’&lt;&#x2F;strong&gt; y presionar &lt;strong&gt;‘Enter’&lt;&#x2F;strong&gt; para guardar y salir.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;atajos&quot;&gt;Atajos&lt;&#x2F;h2&gt;
&lt;p&gt;Los siguientes comandos no son estrictamente necesarios para utilizar
Vim, pero vale la pena aprenderlos.&lt;&#x2F;p&gt;
&lt;p&gt;Existen atajos para los comandos más utilizados, por ejemplo el comando
&lt;strong&gt;‘:x’&lt;&#x2F;strong&gt; hace lo mismo que el comando &lt;strong&gt;‘:wq’&lt;&#x2F;strong&gt;, ambos son utilizados
para guardar y salir.&lt;&#x2F;p&gt;
&lt;p&gt;A algunas personas les parece incomodo presionar la tecla &lt;strong&gt;‘Esc’&lt;&#x2F;strong&gt;, es
útil saber que la combinación de teclas &lt;strong&gt;‘Ctrl + [’&lt;&#x2F;strong&gt; hace la misma
función.&lt;&#x2F;p&gt;
&lt;p&gt;Existen algunos atajos para mover nuestro cursor desde el teclado:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;‘gg’&lt;&#x2F;strong&gt; Ir al inicio de un archivo.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;‘G’&lt;&#x2F;strong&gt; Ir al final de un archivo.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;‘0’&lt;&#x2F;strong&gt; Ir al inicio de una linea.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;‘$’&lt;&#x2F;strong&gt; Ir al final de una línea.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;‘w’&lt;&#x2F;strong&gt; Ir al inicio de la siguiente palabra.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;‘e’&lt;&#x2F;strong&gt; Ir al final de la siguiente palabra.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;También existen comandos para editar texto rápidamente:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;‘i’&lt;&#x2F;strong&gt; Entrar al modo insertar.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;‘dd’&lt;&#x2F;strong&gt; Cortar una línea.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;‘yy’&lt;&#x2F;strong&gt; Copiar una línea.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;‘p’&lt;&#x2F;strong&gt; Pegar.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;‘u’&lt;&#x2F;strong&gt; Deshacer.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;‘Ctrl + r’&lt;&#x2F;strong&gt; Rehacer.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;‘o’&lt;&#x2F;strong&gt; Insertar una línea vacía debajo del cursor y entrar al modo
insertar.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;‘r’&lt;&#x2F;strong&gt; Reemplazar el carácter actual.&lt;&#x2F;li&gt;
&lt;li&gt;&lt;strong&gt;‘x’&lt;&#x2F;strong&gt; Eliminar el carácter actual.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Una de las funciones más interesantes de Vim es la búsqueda, podemos
realizarla entrando al modo normal y presionando:&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;“&#x2F;‘texto’”&lt;&#x2F;strong&gt; Donde &lt;strong&gt;‘texto’&lt;&#x2F;strong&gt; es lo que queremos buscar. Puedes
presionar la tecla &lt;strong&gt;‘n’&lt;&#x2F;strong&gt; para ir al siguiente resultado y &lt;strong&gt;‘N’&lt;&#x2F;strong&gt; para
ir al anterior.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;combinacion-de-comandos&quot;&gt;Combinación de comandos&lt;&#x2F;h2&gt;
&lt;p&gt;Una de las características más importantes de Vim es su capacidad para
combinar comandos en una sola operación.&lt;&#x2F;p&gt;
&lt;p&gt;Para eliminar varias palabras, podemos ejecutar:&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;“’número’dw”&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Donde &lt;strong&gt;‘número’&lt;&#x2F;strong&gt; es el número de palabras que queremos eliminar.&lt;&#x2F;p&gt;
&lt;p&gt;Podemos copiar varias líneas a la vez:&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;“’número’yy”&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;O pegar algo varias veces:&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;“’número’p”&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Podemos eliminar desde el cursor hasta el final de una línea.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;‘d$’&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;También podemos combinar comandos con búsquedas.&lt;&#x2F;p&gt;
&lt;p&gt;&lt;strong&gt;“d&#x2F;‘texto’”&lt;&#x2F;strong&gt;&lt;&#x2F;p&gt;
&lt;p&gt;Elimina desde la ubicación del cursor hasta &lt;strong&gt;‘texto’&lt;&#x2F;strong&gt;.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;correccion-ortografica&quot;&gt;Corrección ortográfica&lt;&#x2F;h2&gt;
&lt;p&gt;Primero debemos configurar nuestro idioma, para ello ejecutamos el
comando &lt;strong&gt;‘:set spelllang=es’&lt;&#x2F;strong&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;Ahora, podemos activar el modo de corrección ortográfica con el comando
&lt;strong&gt;‘:set spell’&lt;&#x2F;strong&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;Vim resaltará las palabras que considere incorrectas. Para moverte entre
ellas, el comando &lt;strong&gt;‘]s’&lt;&#x2F;strong&gt; te llevará a la siguiente palabra mal escriba
y &lt;strong&gt;‘[s’&lt;&#x2F;strong&gt; a la anterior.&lt;&#x2F;p&gt;
&lt;p&gt;Para ver las sugerencias de corrección, sitúa el cursor sobre ella y
presiona &lt;strong&gt;‘z=’&lt;&#x2F;strong&gt;, entonces presiona el número que corresponda a la
palabra deseada y Vim reemplazará la palabra mal escrita.&lt;&#x2F;p&gt;
&lt;p&gt;Si en algún momento deseas desactivar el modo de corrección ortográfica,
simplemente ejecuta el comando &lt;strong&gt;‘:set nospell’&lt;&#x2F;strong&gt; y presiona
&lt;strong&gt;‘Enter’&lt;&#x2F;strong&gt;.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;configuracion&quot;&gt;Configuración&lt;&#x2F;h2&gt;
&lt;p&gt;Vim se puede utilizar sin configuración adicional. Sin embargo, puedes
personalizarlo para que se adapte a tus preferencias. Puedes editar la
configuración de Vim ejecutando el comando:&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;shellscript&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span style=&quot;color: #FFCB6B;&quot;&gt;vim&lt;&#x2F;span&gt;&lt;span style=&quot;color: #C3E88D;&quot;&gt; ~&#x2F;.vim&#x2F;vimrc&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;Que abrirá el archivo &lt;strong&gt;‘vimrc’&lt;&#x2F;strong&gt; donde se guardan las configuraciones
del paquete.&lt;&#x2F;p&gt;
&lt;p&gt;Puedes agregar tus preferencias y ajustes personalizados utilizando
comandos de Vim.&lt;&#x2F;p&gt;
&lt;hr &#x2F;&gt;
&lt;p&gt;En memoria de &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.moolenaar.net&#x2F;&quot;&gt;Bram Moolenaar&lt;&#x2F;a&gt;.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Carta abierta a los programadores</title>
        <published>2023-07-29T00:00:00+00:00</published>
        <updated>2023-07-29T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2023-07-29/"/>
        <id>https://alexisalzate.com/blog/2023-07-29/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2023-07-29/">&lt;p&gt;Imagínate que quieres ir de un punto A a un punto B. En un principio,
puedes hacerlo caminando, disfrutando del camino, el paisaje y saludando
a quienes te encuentras; todo muy bonito y práctico.&lt;&#x2F;p&gt;
&lt;p&gt;En algún momento, recuerdas que existen las ruedas, así que decides
crear tu propio auto, añadiendo todo lo necesario para que sea cómodo,
funcional y pequeño.&lt;&#x2F;p&gt;
&lt;p&gt;Supongamos ahora que necesitas transportar cosas, como un mueble, por
ejemplo. En lugar de empezar desde cero para crear una solución adecuada
a ese problema específico, decides añadirle un compartimiento de carga a
tu auto imaginario.&lt;&#x2F;p&gt;
&lt;p&gt;Ahora tu auto es más lento que antes, así que decides añadirle un nuevo
motor, total, a nadie le importa, es tu auto. Pero ahora es más pesado,
entonces también añades nuevos neumáticos, suspensión, un tanque más
grande, etc.&lt;&#x2F;p&gt;
&lt;p&gt;En fin, no sé mucho de autos, pero algo es seguro: esto no es práctico
en absoluto. Bien, esto es precisamente lo que le sucede a muchos
proyectos informáticos; quieren abarcar tantos problemas como sea
posible que se olvidan de las necesidades que querían resolver en
primera instancia.&lt;&#x2F;p&gt;
&lt;p&gt;Hoy en día, tenemos software con un sinfín de características
innecesarias que no tienen relación con nuestras necesidades originales.
Por favor, si escribes software, mantén las cosas simples y usables. No
necesito tener infinitas características en cada aplicación de mi
teléfono móvil o en cada programa que abro en mi computador. Es absurdo
e innecesario.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Minimalismo digital</title>
        <published>2023-01-07T00:00:00+00:00</published>
        <updated>2025-07-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2023-01-07/"/>
        <id>https://alexisalzate.com/blog/2023-01-07/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2023-01-07/">&lt;p&gt;Hoy en día, es difícil encontrar productos que puedan llegar a durar al
menos un par de años en buen estado, sobretodo cuando hablamos de
teléfonos celulares y computadoras personales.&lt;&#x2F;p&gt;
&lt;p&gt;El teléfono celular hoy en día ha dejado de ser una herramienta para
convertirse en un centro de entretenimiento, las personas usan este tipo
de dispositivos para todo, el problema es que no todas las personas
están enseñadas a darles buen uso.&lt;&#x2F;p&gt;
&lt;p&gt;La computación esta dividida en dos partes. Generalmente las personas
que no tienen idea de tecnología suelen usar dispositivos que tienen
buen hardware con pésimo software, mientras tanto, las personas que
saben del tema, suelen instalar el software que necesitan y como
consecuencia, no necesitan dispositivos muy potentes para realizar sus
tareas.&lt;&#x2F;p&gt;
&lt;p&gt;Lo anterior le genera un problema a las personas que no les interesa
saber de tecnología, y es que terminan comprando dispositivos que son
tremendamente capaces de hacer casi que cualquier tarea de software,
pero en ningún momento ponen el debido cuidado a cuales son las tareas
que sus dispositivos están ejecutando.&lt;&#x2F;p&gt;
&lt;p&gt;No pretendo que nadie deje de usar sus dispositivos, porque los gigantes
tecnológicos han buscado por años los mejores métodos para hacernos
adictos a sus medios de hacernos perder el tiempo mientras ellos ganan
dinero.&lt;&#x2F;p&gt;
&lt;p&gt;Mi propuesta es que usemos nuestro teléfono móvil como si fuese una de
las herramientas que se usaban antes de la llegada de estos
dispositivos, es decir, como una radio, una cámara, etc.&lt;&#x2F;p&gt;
&lt;p&gt;Ahora bien, el uso que más le damos a nuestros teléfonos móviles es
mirar las redes sociales, te propongo que pienses en las personas que
realmente son importantes para ti, y que busques las redes sociales que
te permitan conectar con ellas, en lugar de ver publicaciones de
personas que ni conoces.&lt;&#x2F;p&gt;
&lt;p&gt;Las computadoras personales tienen un problema similar al que tienen los
teléfonos móviles, este problema es el software que traen pre-instalado
por defecto.&lt;&#x2F;p&gt;
&lt;p&gt;Windows es mal software por muchos motivos, el que más odio es que
saquen actualizaciones que no son compatibles con los dispositivos que
he usado toda la vida.&lt;&#x2F;p&gt;
&lt;p&gt;Linux siempre ha funcionado muy bien para los que sabemos de tecnología,
sin embargo las cosas han cambiado y hoy en día es más fácil de usar que
windows.&lt;&#x2F;p&gt;
&lt;p&gt;Linux no solamente tiene la ventaja de ser gratis, sino que además el
software que esta creado para Linux esta enfocado a hacer una tarea en
concreto de la mejor y más eficiente manera posible, mientras que los
programas en windows tienen opciones que nunca usas.&lt;&#x2F;p&gt;
&lt;p&gt;Debemos utilizar la menor cantidad de tecnología necesaria para
completar una tarea, y en mi opinión, prefiero usar un programa que hace
una cosa bien a usar un programa que hace mil cosas mal. Para eso
existen miles de programas que hacen las cosas bien en Linux.&lt;&#x2F;p&gt;
&lt;p&gt;El problema es que sabes usar windows, pero no puedes esperar que las
cosas funcionen en Linux como estas acostumbrado, son cosas distintas,
una es claramente superior a la otra, no solamente en términos técnicos,
sino que también en términos de respeto por el usuario final.&lt;&#x2F;p&gt;
&lt;p&gt;Al usar Linux, utilizas mejor tu computadora personal. Al reducir el uso
de tus redes sociales te darás cuenta de que es mejor socializar con las
personas que con las pantallas de los teléfonos móviles.&lt;&#x2F;p&gt;
&lt;p&gt;Una vez que te hayas acostumbrado a hacer buen uso de la tecnología
necesitarás usar menos tecnología y estarás más presente en tu propia
vida que en las pantallas.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>¿Cómo hago mis copias de seguridad?</title>
        <published>2022-12-31T00:00:00+00:00</published>
        <updated>2022-12-31T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2022-12-31/"/>
        <id>https://alexisalzate.com/blog/2022-12-31/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2022-12-31/">&lt;p&gt;En algún momento de mi vida, perdí archivos importantes. Debido a eso,
aprendí la importancia de hacer copias de seguridad. Sin embargo, solo
respaldo aquellos archivos que son realmente importantes para mí.&lt;&#x2F;p&gt;
&lt;p&gt;Utilizo la regla 3-2-1 para mis copias de seguridad. Esto implica tener
tres copias de mis archivos (una copia principal y dos copias de
respaldo), almacenadas en dos dispositivos de almacenamiento
diferentes, y una de ellas guardada fuera de mi hogar.&lt;&#x2F;p&gt;
&lt;p&gt;Realizo copias de seguridad de forma semanal, ya que no estoy dispuesto
a perder mucha información. Automatizo este proceso con &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;rsync.samba.org&#x2F;&quot;&gt;rsync&lt;&#x2F;a&gt; y
&lt;a href=&quot;https:&#x2F;&#x2F;alexisalzate.com&#x2F;blog&#x2F;2024-11-30&#x2F;&quot;&gt;cron&lt;&#x2F;a&gt;.&lt;&#x2F;p&gt;
&lt;p&gt;Aunque parezca obvio, periódicamente verifico que mis copias de
seguridad se hayan realizado correctamente. De lo contrario, nunca
sabré si mis archivos están realmente seguros.&lt;&#x2F;p&gt;
&lt;p&gt;No confió en proveedores de almacenamiento en la nube. Al utilizar
servicios en la nube, los datos dejan de ser completamente míos y
pueden ser utilizados por las empresas con diversos propósitos.&lt;&#x2F;p&gt;
&lt;p&gt;Personalmente, evito cifrar las copias de seguridad cuando no es
estrictamente necesario. El cifrado no solo complica las cosas, sino
que también impide que mis conocidos accedan a mis archivos debido a la
falta de conocimientos técnicos.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>¿cómo organizo mis archivos?</title>
        <published>2022-12-24T00:00:00+00:00</published>
        <updated>2026-01-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2022-12-24/"/>
        <id>https://alexisalzate.com/blog/2022-12-24/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2022-12-24/">&lt;p&gt;Una de las cosas que no me gusta de los sistemas operativos es cómo se
gestiona el directorio destinado a guardar los datos del usuario. Si
bien es cierto que la configuración del software, el caché y otros datos
son necesarios para el funcionamiento del sistema, considero necesario
crear una separación con los archivos que quiero conservar, como mis
fotografías y vídeos, mi colección musical, mis proyectos de
programación, y mis documentos (estudios, trabajo, finanzas, etc.).&lt;&#x2F;p&gt;
&lt;p&gt;Por facilidad, he decidido prescindir de la carpeta &lt;code&gt;\home&lt;&#x2F;code&gt; a la hora de
guardar mis archivos personales, y usar un espacio aparte. Para ello, he
reestructurado las particiones de mi computador de la siguiente manera:&lt;&#x2F;p&gt;
&lt;ul&gt;
&lt;li&gt;Unidad SSD de 1TB:
&lt;ul&gt;
&lt;li&gt;Partición &lt;code&gt;\efi&lt;&#x2F;code&gt;, donde se guardan los archivos necesarios para el
arranque del sistema.&lt;&#x2F;li&gt;
&lt;li&gt;Partición &lt;code&gt;\&lt;&#x2F;code&gt;, donde se guardan los archivos del sistema. Además,
está partición contiene mi carpeta &lt;code&gt;\home&lt;&#x2F;code&gt;, donde se guardan las
configuraciones de los paquetes de software que uso.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;Disco duro de 1TB:
&lt;ul&gt;
&lt;li&gt;Partición &lt;code&gt;\data&lt;&#x2F;code&gt;, donde guardo mis archivos personales.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;Disco duro de 500MB:
&lt;ul&gt;
&lt;li&gt;Partición &lt;code&gt;\backup&lt;&#x2F;code&gt;, donde hago parte de mis copias de seguridad.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;Disco duro de 1TB:
&lt;ul&gt;
&lt;li&gt;Partición &lt;code&gt;\media&lt;&#x2F;code&gt;, donde guardo vídeos.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;li&gt;Unidad SSD de 500MB:
&lt;ul&gt;
&lt;li&gt;Partición &lt;code&gt;\docs&lt;&#x2F;code&gt;, donde guardo los archivos que necesito para
trabajar.&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;&#x2F;li&gt;
&lt;&#x2F;ul&gt;
&lt;p&gt;Además, tengo un par de unidades de almacenamiento externas para hacer
mis copias de seguridad.&lt;&#x2F;p&gt;
&lt;p&gt;Mis archivos personales los organizo de la siguiente manera:&lt;&#x2F;p&gt;
&lt;h2 id=&quot;fotografias-y-videos&quot;&gt;Fotografías y videos&lt;&#x2F;h2&gt;
&lt;p&gt;Para mis fotografías y videos dispongo mis directorios en orden
cronológico. Un directorio para cada año, y un subdirectorio para cada
fecha, con el formato año-mes-día.&lt;&#x2F;p&gt;
&lt;p&gt;Además, el formato que utilizo para nombrar los archivos es el
siguiente: (img o vid)-año-mes-día-hora.formato.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;plain&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;└── Imágenes&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	├── 2023&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	├── 2023-01-07&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	|	├── img-2023-01-07-1500.jpg&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	|	├── img-2023-01-07-1501.jpg&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	|	├── vid-2023-01-07-1505.mp4&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	|	└── ...&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	├── 2023-01-08&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	└── ...&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	└── ...&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;musica&quot;&gt;Música&lt;&#x2F;h2&gt;
&lt;p&gt;Organizo mi colección musical colocando todas las canciones de un
artista en el mismo directorio. Luego, utilizo mi reproductor musical
para crear algunas listas de reproducción.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;plain&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;└── Música&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	├── los-enanitos-verdes&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	├── lamento-boliviano.mp3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	├── la-muralla-verde.mp3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	├── tu-cárcel.mp3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	└── ...&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	├── vetusta-morla&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	├── consejo-de-sabios.mp3&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	└── ...&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	└── ...&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;programacion&quot;&gt;Programación&lt;&#x2F;h2&gt;
&lt;p&gt;Cada proyecto de programación es un mundo. Para los más simples, creo
una carpeta con el nombre y en ella ubico todos los archivos necesarios.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;plain&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;└── Programación&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	├── web&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	├── index.html&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	├── style.css&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	└── atom.xml&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	├── dotfiles&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	├── vim&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	|	└── vimrc&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	└── ...&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	└── ...&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;&lt;h2 id=&quot;documentos&quot;&gt;Documentos&lt;&#x2F;h2&gt;
&lt;p&gt;Intento organizar mis documentos por categorías, cada uno en su
subdirectorio.&lt;&#x2F;p&gt;
&lt;pre class=&quot;giallo&quot; style=&quot;color: #EEFFFF; background-color: #212121;&quot;&gt;&lt;code data-lang=&quot;plain&quot;&gt;&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;└── Documentos&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	├── escritos&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	├── ejemplo.md&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	├── ejemplo.md&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	└── ...&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	├── universidad&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	├── semestre-1&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	|	├── calculo&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	|	|	└── libro.pdf&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	|	├── física&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	|	└── ...&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	├── semestre-2&#x2F;&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	|	└── ...&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;
&lt;span class=&quot;giallo-l&quot;&gt;&lt;span&gt;	└── finanzas.ods&lt;&#x2F;span&gt;&lt;&#x2F;span&gt;&lt;&#x2F;code&gt;&lt;&#x2F;pre&gt;
&lt;p&gt;El directorio de descargas lo uso como almacenamiento temporal, y
siempre intento mantenerlo vacío. De forma similar, en el escritorio
únicamente tengo los archivos que estoy utilizando en el momento.&lt;&#x2F;p&gt;
&lt;p&gt;Para terminar, es importante nombrar los archivos de forma consistente.
En mi caso, siempre los nombro en minúscula y reemplazo los espacios por
guiones.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Redes sociales</title>
        <published>2022-11-26T00:00:00+00:00</published>
        <updated>2025-03-19T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2022-11-26/"/>
        <id>https://alexisalzate.com/blog/2022-11-26/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2022-11-26/">&lt;p&gt;El único propósito de las redes sociales debería ser ayudarte a
contactar con las personas que realmente quieres, y a impulsar tus
relaciones humanas. Sin embargo, el principal objetivo de las empresas
detrás de ellas es maximizar sus ingresos mediante la recolección, el
análisis, la venta, y demás usos poco éticos de nuestros datos.&lt;&#x2F;p&gt;
&lt;p&gt;La mayoría de las redes sociales han perdido su esencia. Te bombardean
con sugerencias, anuncios publicitarios y publicaciones que las personas
a quienes agregas nunca han publicado.&lt;&#x2F;p&gt;
&lt;p&gt;Personalmente, prefiero ver las publicaciones de las personas que sigo
en orden cronológico, evitando que un algoritmo oculte las publicaciones
de mis amigos cercanos porque estas no parecen coincidir con mis
“intereses”. La ventaja de esto es que una vez que las he visto, no
tengo ningún motivo para quedarme conectado.&lt;&#x2F;p&gt;
&lt;p&gt;La verdad es que no necesito estar en las redes sociales; considero que
es mejor eliminarlas y prestar atención a cosas más importantes. No
obstante, considero que pueden ser útiles si se usan correctamente.
Existen plataformas como &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;joinmastodon.org&#x2F;&quot;&gt;Mastodon&lt;&#x2F;a&gt; o &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;signal.org&#x2F;&quot;&gt;Signal&lt;&#x2F;a&gt;, que fueron
pensadas para ser usadas de una forma más ética, permitiéndonos tener
más control sobre nuestros datos, y el tiempo que pasamos digitalmente
con nuestros amigos.&lt;&#x2F;p&gt;
&lt;p&gt;Mantén activas las notificaciones de las personas significativas para
ti. Si las desactivas, tendrás que revisar tu teléfono celular sólo para
ver si alguien te ha escrito. Esto te proporciona más control sobre tu
tiempo y es menos adictivo.&lt;&#x2F;p&gt;
&lt;p&gt;Probablemente, la peor decisión que ha tomado la sociedad en cuanto a la
informática es no leer los términos y condiciones, así como las
políticas de privacidad de los servicios digitales que se usan a diario.
Digo esto porque, aunque no los leas, siguen siendo acuerdos legales.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>He dejado los videojuegos</title>
        <published>2022-10-08T00:00:00+00:00</published>
        <updated>2026-01-18T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2022-10-08/"/>
        <id>https://alexisalzate.com/blog/2022-10-08/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2022-10-08/">&lt;p&gt;Mi época como jugador de videojuegos ya ha pasado, y los videojuegos han
dejado de llamarme la atención casi por completo. Para mí, ya no son
divertidos, así que prefiero guardar mis buenos recuerdos y dedicar mi
tiempo a las cosas que considero más importantes en mi vida.&lt;&#x2F;p&gt;
&lt;p&gt;Últimamente tengo la sensación de que están diseñados para que pasemos
una gran cantidad de horas frente a la pantalla, lo cual puede afectar
negativamente otros aspectos de nuestras vidas. Simplemente, es mejor
dedicar ese tiempo a leer, hacer ejercicio, o a caminar por la calle.&lt;&#x2F;p&gt;
&lt;p&gt;La pantalla dividida y el multijugador local fueron las formas de jugar
que más disfruté en mi vida. Sin embargo, más allá de los videojuegos,
lo que realmente disfrutaba era el aspecto social que ofrecían. Hoy en
día, parece que tienes que estar en línea todo el tiempo, lo cual te
conecta con más personas que probablemente nunca conocerás, pero te
desconecta de tu propia realidad.&lt;&#x2F;p&gt;
&lt;p&gt;Tomarse en serio los videojuegos puede ser perjudicial para aquellos que
sólo buscamos entretenimiento en ellos. Su nivel de inmersión puede
llevarnos a pensar en sus términos al enfrentarnos a problemas de la
vida real, hasta el punto de hacernos olvidar que no estamos jugando.
Para cada problema real existe una solución, y la vida suele ser más
compleja que los desafíos presentados para resolverse con un mando.&lt;&#x2F;p&gt;
&lt;p&gt;Ahora sé que obsesionarme con un videojuego no tiene sentido. Debo
asegurarme de realizar actividades que me proporcionen satisfacción
personal a largo plazo, y no enfocarme en algo tan trivial como el
entretenimiento vacío de las pantallas. A veces, desearía tener todo el
tiempo de vuelta que, ahora considero, perdí jugando videojuegos.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Usa un gestor de contraseñas</title>
        <published>2022-09-24T00:00:00+00:00</published>
        <updated>2025-11-09T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2022-09-24/"/>
        <id>https://alexisalzate.com/blog/2022-09-24/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2022-09-24/">&lt;p&gt;Las contraseñas son una forma de proteger la privacidad de nuestros
datos.&lt;&#x2F;p&gt;
&lt;p&gt;Las mejores prácticas para crear contraseñas cambian con el tiempo
junto con los avances tecnológicos. Actualmente, se recomienda usar
contraseñas únicas para cada cuenta, con un mínimo de 12 caracteres,
que incluyan una mezcla de letras mayúsculas, minúsculas, números y
símbolos. Una contraseña no debería contener ningún tipo de información
personal como nombres, fechas, documentos de identificación, números
telefónicos, direcciones, etc.&lt;&#x2F;p&gt;
&lt;p&gt;Cambiar tu contraseña es una precaución de seguridad que debes tomar
después de iniciar sesión en dispositivos que no sean tuyos, si
encuentras programas maliciosos u otro tipo de riesgo en tus
dispositivos, o si ha pasado mucho tiempo desde la última ves que la
cambiaste.&lt;&#x2F;p&gt;
&lt;p&gt;Cierra tus cuentas en los dispositivos que hayan sido robados, que hayas
perdido, o que no utilices actualmente.&lt;&#x2F;p&gt;
&lt;p&gt;Del mismo modo, revisa tus cuentas inactivas y elimina aquellas que no
quieras volver a usar en el futuro. Antes de eliminarlas, intenta
eliminar tus datos personales como tu dirección, número de teléfono y
cualquier información financiera. Si no puedes eliminar estos datos,
intenta cambiarlos por datos falsos.&lt;&#x2F;p&gt;
&lt;h2 id=&quot;que-es-un-gestor-de-contrasenas&quot;&gt;¿Qué es un gestor de contraseñas?&lt;&#x2F;h2&gt;
&lt;p&gt;Los gestores de contraseñas son herramientas para generar contraseñas
fuertes y almacenarlas, facilitando el inicio de sesión rápido y seguro
en tus cuentas.&lt;&#x2F;p&gt;
&lt;p&gt;Usualmente, los gestores de contraseñas utilizan una base de datos
protegida por una única contraseña llamada contraseña maestra, la cual
debe ser elegida con cuidado: debe ser fuerte pero fácil de recordar.&lt;&#x2F;p&gt;
&lt;p&gt;La mayor ventaja de usar un gestor de contraseñas es que te permite
saber exactamente qué cuentas tienes y cuáles son sus contraseñas. Al
almacenar las contraseñas en un solo lugar, es más fácil identificar
aquellas que no son lo suficientemente seguras o ver si estás
utilizando contraseñas similares para diferentes cuentas.&lt;&#x2F;p&gt;
&lt;p&gt;No recomiendo compartir tus contraseñas con el primer sitio en internet
que se autodenomine seguro para guardar tus datos. Cada empresa que
desarrolla gestores de contraseñas afirmará que su producto es el mejor
del mercado. Por lo tanto, busca gestores de contraseñas de código
abierto y, si no sabes cómo revisar el código tú mismo, asegúrate al
menos de que otras personas lo hayan hecho por ti.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Problemas de la web moderna</title>
        <published>2022-06-25T00:00:00+00:00</published>
        <updated>2022-06-25T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2022-06-25/"/>
        <id>https://alexisalzate.com/blog/2022-06-25/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2022-06-25/">&lt;p&gt;Mi sitio web es de código abierto, está publicado y alojado a través de
&lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;codeberg.org&#x2F;alexalzate&#x2F;pages&quot;&gt;Codeberg.org&lt;&#x2F;a&gt;, por lo tanto está sujeto a sus &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;codeberg.org&#x2F;Codeberg&#x2F;org&#x2F;src&#x2F;branch&#x2F;main&#x2F;TermsOfUse.md&quot;&gt;términos de uso&lt;&#x2F;a&gt;
y a su &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;codeberg.org&#x2F;Codeberg&#x2F;org&#x2F;src&#x2F;branch&#x2F;main&#x2F;PrivacyPolicy.md&quot;&gt;política de privacidad&lt;&#x2F;a&gt;. Un sitio web de código abierto
permite que cualquier presona pueda revisar que no esté haciendo algo
que no debería; esto debería ser la norma en la web.&lt;&#x2F;p&gt;
&lt;p&gt;Esta es una forma de alojar un sitio web completamente gratis, con la
libertad de poder usar HTML Y CSS. Este sitio web está pensado para
funcionar sin JavaScript, rastreadores o cualquier tipo de software
malicioso. La web moderna empeora cada vez más y uno de los motivos es
el mal uso de JavaScript. Simplemente tener este lenguaje habilitado en
el navegador es un posible riesgo para la privacidad y seguridad.&lt;&#x2F;p&gt;
&lt;p&gt;Aunque el código CSS ayuda a que un sitio web se vea mejor, mi sitio
web no depende de este lenguaje para su funcionamiento. Si por algún
motivo quieres hacer sitios web con JavaScript, debes asegurarte de que
tu sitio web funcione bien sin él.&lt;&#x2F;p&gt;
&lt;p&gt;Un sitio web no debería asumir el consentimiento de sus visitantes. En
internet somos constantemente el objetivo de anuncios publicitarios. Me
molesta cuando los sitios web se quejan de que los visitantes usan un
bloqueador de anuncios, cuando su modelo de monetización requiere
compartir información privada con docenas de compañías.&lt;&#x2F;p&gt;
&lt;p&gt;Muchas páginas muestran un cartel enorme preguntando por permisos para
usar cookies, o pidiendo que se active JavaScript para una “mejor
experiencia”. Personalmente, estoy bien con una “peor experiencia”,
pero no con un cartel que cubre la mitad de mi pantalla todo el tiempo
y no me deja leer el contenido que estoy buscando. Parece que los
creadores de sitios web no se dan cuenta de que la mayoría de los
usuarios odian estos carteles, las cookies, los anuncios y otras cosas
absurdas que los sitios web no necesitan para funcionar.&lt;&#x2F;p&gt;
&lt;p&gt;Cuando internet empezó a globalizarse, las personas creaban sus propios
sitios web en HTML y CSS. Por algún motivo, existe la idea equivocada de
que programar es difícil, así que algunas personas prefieren usar
esquemas o soluciones “sin código” para hacer sus sitios web, pero
estas tecnologías utilizan cientos de líneas de código innecesarias.&lt;&#x2F;p&gt;
&lt;p&gt;He de admitir que existen buenos esquemas como &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;gohugo.io&#x2F;&quot;&gt;Hugo&lt;&#x2F;a&gt; o &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;www.getzola.org&#x2F;&quot;&gt;Zola&lt;&#x2F;a&gt;,
pero la mejor opción siempre será escribir el código a mano. Esto
permite tener más control para hacer un sitio web más rápido y seguro.&lt;&#x2F;p&gt;
&lt;p&gt;Algunos sitios web han pasado de mostrar contenido a ser “aplicaciones
web”, realizando tareas informáticas como el almacenamiento de datos
sin necesidad de ninguna instalación. Sin embargo, en mi opinión,
deberías poder ejecutar este software en tu propio sistema y tus datos
nunca deberían abandonar tu dispositivo. No deberías tener que acceder
a ellos a través de un servidor de alguien más al que accedes mediante
una interfaz web.&lt;&#x2F;p&gt;
&lt;p&gt;El problema es que no puedes saber qué está pasando del lado del lado
del servidor. Además, un sitio web puede dejar de estar disponible de un
día para otro, quitar funcionalidades que usas o incluso negarte el
acceso a tu cuenta.&lt;&#x2F;p&gt;
&lt;p&gt;Los sitios web necesitan recursos para funcionar; un sitio web más
grande necesita más almacenamiento, capacidad de procesamiento y una
mejor conexión a internet. Aunque existen muchos otros factores que
hacen que los sitios web sean cada vez más ineficientes, la percepción
más común de que algo está funcionando mal es su velocidad. Si tu sitio
web tiene bajo rendimiento en circunstancias reales, entonces debes
solucionarlo.&lt;&#x2F;p&gt;
&lt;p&gt;Las personas que no se preocupan por resolver los problemas de sus
sitios web contribuyen a la obsolescencia prematura de los
dispositivos, obligando a sus usuarios a actualizarlos, afectando su
economía y aumentando los problemas ambientales. Además, aumentar la
necesidad de conexiones más rápidas y mejor hardware también significa
excluir a visitantes con menos capacidad adquisitiva.&lt;&#x2F;p&gt;
&lt;p&gt;La web está hecha para compartir información y es excelente haciendo
eso. Si algo no es esencial para el funcionamiento de un sitio web, no
debería estar ahí. Así que céntrate en el propósito de tu sitio web y
hazlo tan pequeño y rápido como sea posible. Ten en cuenta que algunas
horas de trabajo podrían mejorar considerablemente el rendimiento.&lt;&#x2F;p&gt;
&lt;p&gt;Necesitamos resolver estos problemas y utilizar la tecnología con la
intención con la que fue creada. Esto significa retomar el control
sobre tus datos, implementar un flujo de trabajo local para aumentar el
control sobre el código que ejecutas, y hacer internet accesible para
todos. Y traer de vuelta sitios web con contenido simple, pequeño y
especializado: sitios web personales, temáticos, de pasatiempos, con
información accesible y legible presentada como un documento que reside
y se ejecuta en tu ordenador.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>Usa un bloqueador de anuncios</title>
        <published>2022-06-04T00:00:00+00:00</published>
        <updated>2022-06-04T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2022-06-04/"/>
        <id>https://alexisalzate.com/blog/2022-06-04/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2022-06-04/">&lt;p&gt;En el modelo económico actual, vemos anuncios publicitarios que son
altamente efectivos trabajando en nuestro subconsciente para crear una
mentalidad en la que, sin importar el problema, existe una solución que
se puede comprar.&lt;&#x2F;p&gt;
&lt;p&gt;Este modelo permite a las corporaciones anunciar sus productos como
deseen. Sin embargo, los anuncios publicitarios tienen un impacto
negativo; constantemente generan falsas necesidades y aumentan el
consumismo de manera desmesurada, sin añadir ningún valor real a la
sociedad.&lt;&#x2F;p&gt;
&lt;p&gt;En mi opinión, los anuncios publicitarios deberían ser prohibidos. La
mayoría de ellos son engañosos, abusivos e indiscretos. Además, en
internet se utilizan con frecuencia para distribuir malware o robar
información, lo que causa problemas de seguridad y privacidad. Como
consecuencia, bloquear los anuncios publicitarios hace que la
navegación en la web sea más privada y segura.&lt;&#x2F;p&gt;
&lt;p&gt;Existen diversos métodos para bloquear los anuncios en nuestras
computadoras y teléfonos móviles, que van desde extensiones para el
navegador, software especializado, hasta métodos más avanzados como el
hundimiento de DNS.&lt;&#x2F;p&gt;
&lt;p&gt;Las empresas publicitarias trabajan activamente para impedir el acceso
a quienes utilizan bloqueadores de anuncios. Mi solución es dejar de
visitar estos servicios incondicionalmente.&lt;&#x2F;p&gt;
&lt;p&gt;Los usuarios de Google Chrome suelen experimentar problemas al bloquear
anuncios debido a que Google es una empresa que vende anuncios
publicitarios. Por eso, es recomendable usar un navegador web que no
tenga conflictos de interés entre lo que es mejor para sus usuarios y su
modelo de monetización.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>¿Qué es RSS?</title>
        <published>2022-05-28T00:00:00+00:00</published>
        <updated>2022-05-28T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2022-05-28/"/>
        <id>https://alexisalzate.com/blog/2022-05-28/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2022-05-28/">&lt;p&gt;RSS son las siglas para Rich Site Summary (Resumen del sitio
enriquecido) o Really Simple Syndication (Sindicación Realmente Simple),
entre otras interpretaciones. Es un protocolo que permite difundir
actualizaciones de contenido en la web.&lt;&#x2F;p&gt;
&lt;p&gt;Es importante porque un lector de RSS facilita recibir información
proveniente de varias fuentes de manera organizada y privada,
permitiendo a los usuarios seguir sus intereses sin tener que visitar
cada sitio individualmente. Estas fuentes pueden incluir desde páginas
web hasta perfiles en redes sociales, pasando por cualquier tipo de
contenido adaptable a internet.&lt;&#x2F;p&gt;
&lt;p&gt;Todo lo que necesitas es un buen lector de RSS. Para usarlo, añade las
fuentes RSS de tus sitios favoritos, y cada publicación aparecerá
directamente en tu lector de RSS.&lt;&#x2F;p&gt;
&lt;p&gt;Si quieres seguir mis publicaciones, sólo tienes que copiar y pegar el
enlace de mi &lt;a rel=&quot;noopener external&quot; target=&quot;_blank&quot; href=&quot;https:&#x2F;&#x2F;alexisalzate.com&#x2F;blog&#x2F;atom.xml&quot;&gt;fuente RSS&lt;&#x2F;a&gt; en el lector RSS de tu elección.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>¿Por qué un blog?</title>
        <published>2022-04-30T00:00:00+00:00</published>
        <updated>2022-04-30T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2022-04-30/"/>
        <id>https://alexisalzate.com/blog/2022-04-30/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2022-04-30/">&lt;p&gt;Creé este blog para compartir algunas opiniones personales, además de,
información que considero útil.&lt;&#x2F;p&gt;
&lt;p&gt;Hago mi mejor esfuerzo para cuidar mis textos, aunque, admito que no soy
buen escritor. Suelo descartar muchas ideas antes de encontrar alguna
que me guste, debido a esto, no puedo mantener una frecuencia constante
de publicaciones. Además, cada vez que reviso un texto suelo hacer
cambios para mejorar aspectos que no me satisfacen.  Hago esto como
muestra de cariño y respeto por la escritura.&lt;&#x2F;p&gt;
&lt;p&gt;Intento recuperar el control de mi información digital y contribuir a la
web para todos. Creo que es momento de que demos un paso atrás y
volvamos a un internet en el que la prioridad es compartir y no llenar
momentos vacíos en el día a día de las personas.&lt;&#x2F;p&gt;
&lt;p&gt;Internet es enorme; algunas personas creen que se reduce a un pequeño
número de páginas que visitan diariamente, pero en realidad existen
miles de sitios esperando a ser descubiertos.&lt;&#x2F;p&gt;
</content>
        
    </entry>
    <entry xml:lang="es">
        <title>¿Quieres conocerme?</title>
        <published>2022-04-23T00:00:00+00:00</published>
        <updated>2022-04-23T00:00:00+00:00</updated>
        
        <author>
          <name>
            
              Alexis Alzate
            
          </name>
        </author>
        
        <link rel="alternate" type="text/html" href="https://alexisalzate.com/blog/2022-04-23/"/>
        <id>https://alexisalzate.com/blog/2022-04-23/</id>
        
        <content type="html" xml:base="https://alexisalzate.com/blog/2022-04-23/">&lt;p&gt;Mi nombre, mi edad o país no me describen realmente como persona. Somos
más que solo datos; los datos son aburridos. Las personas somos arte,
historias, música, sensaciones, universos completos. Si quieres conocer
a alguien, tienes que explorarlo, escuchar sus historias o incluso
compartir algunas. Leer sobre alguien en internet o ver sus
publicaciones es simplemente absurdo y al final una mentira.&lt;&#x2F;p&gt;
&lt;p&gt;Lamentablemente, la sociedad hoy en día está llena de personas falsas;
nadie es verdaderamente auténtico. Esto debería arreglarse. La única
forma de hacer de este mundo un lugar mejor es haciendo lo que amas,
dejando de vivir en la ignorancia y empezando a ser honestos con
nosotros mismos.&lt;&#x2F;p&gt;
&lt;p&gt;Amo y odio la tecnología. Por eso, creo que todo el software debería
ser software libre. Todos deberíamos preocuparnos por nuestra
privacidad, especialmente en internet, y en general, deberíamos
aprender cómo funcionan las cosas antes de usarlas.&lt;&#x2F;p&gt;
</content>
        
    </entry>
</feed>
