<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>JAEM</title>
    <link>https://jaem.site/</link>
    <description>Recent content on JAEM</description>
    <generator>Hugo</generator>
    <language>es</language>
    <lastBuildDate>Sat, 07 Jun 2025 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://jaem.site/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Sistema de Gestión Bibliotecaria - BibliotecaForm</title>
      <link>https://jaem.site/projects/sistemabibliotecario/</link>
      <pubDate>Sat, 07 Jun 2025 00:00:00 +0000</pubDate>
      <guid>https://jaem.site/projects/sistemabibliotecario/</guid>
      <description>&lt;p&gt;&lt;a href=&#34;https://dotnet.microsoft.com/download/dotnet-framework&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/.NET%20Framework-4.8-blue.svg&#34; alt=&#34;.NET Framework&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://www.microsoft.com/sql-server&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/SQL%20Server-2019+-red.svg&#34; alt=&#34;SQL Server&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;https://docs.microsoft.com/dotnet/desktop/winforms/&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/UI-Windows%20Forms-green.svg&#34; alt=&#34;Windows Forms&#34;&gt;&lt;/a&gt;&#xA;&lt;a href=&#34;LICENSE&#34;&gt;&lt;img src=&#34;https://img.shields.io/badge/license-MIT-blue.svg&#34; alt=&#34;License&#34;&gt;&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;strong&gt;BibliotecaForm&lt;/strong&gt; es un sistema de gestión de bibliotecas robusto y fácil de usar, desarrollado en C# con Windows Forms. Ofrece una interfaz MDI moderna y funcionalidades completas para la administración de libros, usuarios y préstamos, ideal para pequeñas y medianas bibliotecas.&lt;/p&gt;&#xA;&lt;p&gt;Este proyecto nació de la necesidad de contar con una herramienta eficiente y visualmente atractiva para la gestión bibliotecaria, enfocándose en la experiencia del usuario y la solidez funcional.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Dominando los Bloques de Código en Hugo: Resaltado y Funciones Avanzadas</title>
      <link>https://jaem.site/posts/hugo/bloques-codigo-hugo/</link>
      <pubDate>Thu, 05 Jun 2025 00:00:00 +0000</pubDate>
      <guid>https://jaem.site/posts/hugo/bloques-codigo-hugo/</guid>
      <description>&lt;h1 id=&#34;dominando-los-bloques-de-código-en-hugo-resaltado-y-funciones-avanzadas&#34;&gt;Dominando los Bloques de Código en Hugo: Resaltado y Funciones Avanzadas&lt;/h1&gt;&#xA;&lt;p&gt;Esta guía completa te mostrará cómo utilizar y personalizar el resaltado de sintaxis (syntax highlighting) y los bloques de código mejorados en tu sitio Hugo, aprovechando el poder de Chroma.&lt;/p&gt;&#xA;&lt;h2 id=&#34;características-implementadas&#34;&gt;Características Implementadas&lt;/h2&gt;&#xA;&lt;p&gt;Este sitio cuenta con un sistema de bloques de código robusto que incluye:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;Syntax highlighting nativo de Hugo&lt;/strong&gt; con Chroma.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Soporte para más de 250 lenguajes&lt;/strong&gt; de programación.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Botón de &amp;ldquo;Copiar&amp;rdquo;&lt;/strong&gt; en cada bloque de código para facilitar la reutilización.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Header automático&lt;/strong&gt; que muestra el lenguaje del bloque de código.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Configuración flexible&lt;/strong&gt; mediante atributos en los bloques de código (ej. números de línea, resaltado de líneas específicas).&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Tema Dracula&lt;/strong&gt; optimizado para una excelente legibilidad.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Diseño responsive&lt;/strong&gt; que se adapta a cualquier tamaño de pantalla.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Estilos modernos&lt;/strong&gt; con efectos hover y transiciones suaves.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;uso-de-bloques-de-código&#34;&gt;Uso de Bloques de Código&lt;/h2&gt;&#xA;&lt;p&gt;Tienes dos maneras principales de insertar bloques de código en tus posts:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Guía de Inicio y Uso Básico de Hugo</title>
      <link>https://jaem.site/posts/hugo/guia-inicio-hugo/</link>
      <pubDate>Thu, 05 Jun 2025 00:00:00 +0000</pubDate>
      <guid>https://jaem.site/posts/hugo/guia-inicio-hugo/</guid>
      <description>&lt;h2 id=&#34;1-crear-un-nuevo-post-en-hugo&#34;&gt;1. Crear un Nuevo Post en Hugo&lt;/h2&gt;&#xA;&lt;p&gt;Para crear un nuevo post, abre la terminal en la ubicación de tu proyecto de Hugo y escribe:&lt;/p&gt;&#xA;&lt;div class=&#34;code-block&#34;&gt;&#xD;&#xA;    &lt;div class=&#34;code-block__header&#34;&gt;&#xD;&#xA;      &lt;span class=&#34;code-block__lang&#34;&gt;BASH&lt;/span&gt;&#xD;&#xA;      &lt;button class=&#34;code-block__copybtn&#34; onclick=&#34;copyToClipboard(this)&#34; title=&#34;Copiar código&#34;&gt;&#xD;&#xA;        &lt;svg width=&#34;16&#34; height=&#34;16&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&#xD;&#xA;          &lt;rect x=&#34;9&#34; y=&#34;9&#34; width=&#34;13&#34; height=&#34;13&#34; rx=&#34;2&#34; ry=&#34;2&#34;&gt;&lt;/rect&gt;&#xD;&#xA;          &lt;path d=&#34;M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1&#34;&gt;&lt;/path&gt;&#xD;&#xA;        &lt;/svg&gt;&#xD;&#xA;      &lt;/button&gt;&#xD;&#xA;    &lt;/div&gt;&#xD;&#xA;    &lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;hugo new posts/nombre_post.md&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xD;&#xA;  &lt;/div&gt;&lt;script&gt;&#xD;&#xA;      function copyToClipboard(button) {&#xD;&#xA;        const codeBlock = button.closest(&#39;.code-block&#39;).querySelector(&#39;code&#39;);&#xD;&#xA;        if (codeBlock) {&#xD;&#xA;          const textToCopy = codeBlock.textContent || codeBlock.innerText;&#xD;&#xA;          navigator.clipboard.writeText(textToCopy).then(() =&gt; {&#xD;&#xA;            const originalContent = button.innerHTML;&#xD;&#xA;            button.innerHTML = &#39;&lt;svg width=&#34;16&#34; height=&#34;16&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&lt;polyline points=&#34;20,6 9,17 4,12&#34;&gt;&lt;/polyline&gt;&lt;/svg&gt;&#39;;&#xD;&#xA;            button.style.color = &#39;#10b981&#39;;&#xD;&#xA;            setTimeout(() =&gt; {&#xD;&#xA;              button.innerHTML = originalContent;&#xD;&#xA;              button.style.color = &#39;&#39;;&#xD;&#xA;            }, 2000);&#xD;&#xA;          }).catch(err =&gt; {&#xD;&#xA;            console.error(&#39;Error al copiar el código: &#39;, err);&#xD;&#xA;            alert(&#39;No se pudo copiar el código&#39;);&#xD;&#xA;          });&#xD;&#xA;        }&#xD;&#xA;      }&#xD;&#xA;    &lt;/script&gt;&lt;p&gt;Esto generará un archivo Markdown dentro de &lt;code&gt;content/posts/&lt;/code&gt;. Por ejemplo, si deseas crear un post dentro de un directorio específico:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Integración y Uso de Diagramas Mermaid en Hugo</title>
      <link>https://jaem.site/posts/hugo/diagramas-mermaid-hugo/</link>
      <pubDate>Thu, 05 Jun 2025 00:00:00 +0000</pubDate>
      <guid>https://jaem.site/posts/hugo/diagramas-mermaid-hugo/</guid>
      <description>&lt;h1 id=&#34;integración-y-uso-de-diagramas-mermaid-en-hugo&#34;&gt;Integración y Uso de Diagramas Mermaid en Hugo&lt;/h1&gt;&#xA;&lt;p&gt;Los diagramas Mermaid te permiten crear una amplia variedad de visualizaciones complejas (diagramas de flujo, secuencia, Gantt, etc.) directamente desde texto, de manera similar a Markdown. En este sitio, el soporte para Mermaid ya está configurado y listo para que lo uses en tus posts.&lt;/p&gt;&#xA;&lt;h2 id=&#34;cómo-usar-mermaid&#34;&gt;Cómo Usar Mermaid&lt;/h2&gt;&#xA;&lt;p&gt;Para crear un diagrama Mermaid en cualquier post, simplemente usa un bloque de código estándar de Markdown con el lenguaje especificado como &lt;code&gt;mermaid&lt;/code&gt;:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Historico Sección “Posts”</title>
      <link>https://jaem.site/posts/hugo/historico/</link>
      <pubDate>Fri, 23 May 2025 15:07:06 -0600</pubDate>
      <guid>https://jaem.site/posts/hugo/historico/</guid>
      <description>&lt;h3 id=&#34;resumen-de-la-estructura-y-lógica-de-la-sección-posts&#34;&gt;Resumen de la Estructura y Lógica de la Sección &amp;ldquo;Posts&amp;rdquo;&lt;/h3&gt;&#xA;&lt;p&gt;El objetivo principal de la página &lt;code&gt;/posts/&lt;/code&gt; es mostrar una lista combinada de:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&lt;strong&gt;Categorías de Posts&lt;/strong&gt;: Son subdirectorios dentro de &lt;code&gt;content/posts/&lt;/code&gt; (ej: &lt;code&gt;content/posts/Redes/&lt;/code&gt;, &lt;code&gt;content/posts/Java/&lt;/code&gt;) que contienen sus propios archivos &lt;code&gt;_index.md&lt;/code&gt;.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Artículos Sin Categoría&lt;/strong&gt;: Son archivos de artículos individuales (ej: &lt;code&gt;content/posts/mi_aprendizaje.md&lt;/code&gt;) que residen directamente en &lt;code&gt;content/posts/&lt;/code&gt; y no dentro de un subdirectorio de categoría.&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Esta lista combinada se ordena cronológicamente de más reciente a más antiguo.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Administración y Resolución de Problemas en Windows y Linux</title>
      <link>https://jaem.site/posts/redes/redes/</link>
      <pubDate>Tue, 25 Feb 2025 10:00:00 -0600</pubDate>
      <guid>https://jaem.site/posts/redes/redes/</guid>
      <description>&lt;h1 id=&#34;administración-y-resolución-de-problemas-en-windows-y-linux&#34;&gt;Administración y Resolución de Problemas en Windows y Linux&lt;/h1&gt;&#xA;&lt;p&gt;Esta guía te ayudará a comprender conceptos básicos de administración y troubleshooting en estos sistemas operativos. Aquí aprenderás a manejar procesos, servicios, redes y más.&lt;/p&gt;&#xA;&lt;h2 id=&#34;-windows&#34;&gt;🔹 Windows&lt;/h2&gt;&#xA;&lt;h3 id=&#34;reiniciar-un-servicio&#34;&gt;Reiniciar un Servicio&lt;/h3&gt;&#xA;&lt;p&gt;Existen dos métodos principales:&lt;/p&gt;&#xA;&lt;h4 id=&#34;cmd&#34;&gt;CMD:&lt;/h4&gt;&#xA;&lt;div class=&#34;code-block&#34;&gt;&#xD;&#xA;    &lt;div class=&#34;code-block__header&#34;&gt;&#xD;&#xA;      &lt;span class=&#34;code-block__lang&#34;&gt;CMD&lt;/span&gt;&#xD;&#xA;      &lt;button class=&#34;code-block__copybtn&#34; onclick=&#34;copyToClipboard(this)&#34; title=&#34;Copiar código&#34;&gt;&#xD;&#xA;        &lt;svg width=&#34;16&#34; height=&#34;16&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&#xD;&#xA;          &lt;rect x=&#34;9&#34; y=&#34;9&#34; width=&#34;13&#34; height=&#34;13&#34; rx=&#34;2&#34; ry=&#34;2&#34;&gt;&lt;/rect&gt;&#xD;&#xA;          &lt;path d=&#34;M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1&#34;&gt;&lt;/path&gt;&#xD;&#xA;        &lt;/svg&gt;&#xD;&#xA;      &lt;/button&gt;&#xD;&#xA;    &lt;/div&gt;&#xD;&#xA;    &lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-cmd&#34; data-lang=&#34;cmd&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;net stop NombreDelServicio&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;net start NombreDelServicio&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xD;&#xA;  &lt;/div&gt;&lt;script&gt;&#xD;&#xA;      function copyToClipboard(button) {&#xD;&#xA;        const codeBlock = button.closest(&#39;.code-block&#39;).querySelector(&#39;code&#39;);&#xD;&#xA;        if (codeBlock) {&#xD;&#xA;          const textToCopy = codeBlock.textContent || codeBlock.innerText;&#xD;&#xA;          navigator.clipboard.writeText(textToCopy).then(() =&gt; {&#xD;&#xA;            const originalContent = button.innerHTML;&#xD;&#xA;            button.innerHTML = &#39;&lt;svg width=&#34;16&#34; height=&#34;16&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&lt;polyline points=&#34;20,6 9,17 4,12&#34;&gt;&lt;/polyline&gt;&lt;/svg&gt;&#39;;&#xD;&#xA;            button.style.color = &#39;#10b981&#39;;&#xD;&#xA;            setTimeout(() =&gt; {&#xD;&#xA;              button.innerHTML = originalContent;&#xD;&#xA;              button.style.color = &#39;&#39;;&#xD;&#xA;            }, 2000);&#xD;&#xA;          }).catch(err =&gt; {&#xD;&#xA;            console.error(&#39;Error al copiar el código: &#39;, err);&#xD;&#xA;            alert(&#39;No se pudo copiar el código&#39;);&#xD;&#xA;          });&#xD;&#xA;        }&#xD;&#xA;      }&#xD;&#xA;    &lt;/script&gt;&lt;h4 id=&#34;powershell&#34;&gt;PowerShell:&lt;/h4&gt;&#xA;&lt;div class=&#34;code-block&#34;&gt;&#xD;&#xA;    &lt;div class=&#34;code-block__header&#34;&gt;&#xD;&#xA;      &lt;span class=&#34;code-block__lang&#34;&gt;POWERSHELL&lt;/span&gt;&#xD;&#xA;      &lt;button class=&#34;code-block__copybtn&#34; onclick=&#34;copyToClipboard(this)&#34; title=&#34;Copiar código&#34;&gt;&#xD;&#xA;        &lt;svg width=&#34;16&#34; height=&#34;16&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&#xD;&#xA;          &lt;rect x=&#34;9&#34; y=&#34;9&#34; width=&#34;13&#34; height=&#34;13&#34; rx=&#34;2&#34; ry=&#34;2&#34;&gt;&lt;/rect&gt;&#xD;&#xA;          &lt;path d=&#34;M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1&#34;&gt;&lt;/path&gt;&#xD;&#xA;        &lt;/svg&gt;&#xD;&#xA;      &lt;/button&gt;&#xD;&#xA;    &lt;/div&gt;&#xD;&#xA;    &lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-powershell&#34; data-lang=&#34;powershell&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;Restart-Service&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;-Name&lt;/span&gt; &lt;span class=&#34;n&#34;&gt;NombreDelServicio&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xD;&#xA;  &lt;/div&gt;&lt;h3 id=&#34;gestión-de-procesos-y-rendimiento&#34;&gt;Gestión de Procesos y Rendimiento&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;Listar procesos:&lt;/strong&gt;&#xA;&lt;div class=&#34;code-block&#34;&gt;&#xD;&#xA;    &lt;div class=&#34;code-block__header&#34;&gt;&#xD;&#xA;      &lt;span class=&#34;code-block__lang&#34;&gt;CMD&lt;/span&gt;&#xD;&#xA;      &lt;button class=&#34;code-block__copybtn&#34; onclick=&#34;copyToClipboard(this)&#34; title=&#34;Copiar código&#34;&gt;&#xD;&#xA;        &lt;svg width=&#34;16&#34; height=&#34;16&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&#xD;&#xA;          &lt;rect x=&#34;9&#34; y=&#34;9&#34; width=&#34;13&#34; height=&#34;13&#34; rx=&#34;2&#34; ry=&#34;2&#34;&gt;&lt;/rect&gt;&#xD;&#xA;          &lt;path d=&#34;M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1&#34;&gt;&lt;/path&gt;&#xD;&#xA;        &lt;/svg&gt;&#xD;&#xA;      &lt;/button&gt;&#xD;&#xA;    &lt;/div&gt;&#xD;&#xA;    &lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-cmd&#34; data-lang=&#34;cmd&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;tasklist&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xD;&#xA;  &lt;/div&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Finalizar procesos con alto consumo de CPU:&lt;/strong&gt;&#xA;&lt;div class=&#34;code-block&#34;&gt;&#xD;&#xA;    &lt;div class=&#34;code-block__header&#34;&gt;&#xD;&#xA;      &lt;span class=&#34;code-block__lang&#34;&gt;CMD&lt;/span&gt;&#xD;&#xA;      &lt;button class=&#34;code-block__copybtn&#34; onclick=&#34;copyToClipboard(this)&#34; title=&#34;Copiar código&#34;&gt;&#xD;&#xA;        &lt;svg width=&#34;16&#34; height=&#34;16&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&#xD;&#xA;          &lt;rect x=&#34;9&#34; y=&#34;9&#34; width=&#34;13&#34; height=&#34;13&#34; rx=&#34;2&#34; ry=&#34;2&#34;&gt;&lt;/rect&gt;&#xD;&#xA;          &lt;path d=&#34;M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1&#34;&gt;&lt;/path&gt;&#xD;&#xA;        &lt;/svg&gt;&#xD;&#xA;      &lt;/button&gt;&#xD;&#xA;    &lt;/div&gt;&#xD;&#xA;    &lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-cmd&#34; data-lang=&#34;cmd&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;taskkill /PID &lt;span class=&#34;p&#34;&gt;&amp;lt;&lt;/span&gt;Número_PID&lt;span class=&#34;p&#34;&gt;&amp;gt;&lt;/span&gt; /F&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xD;&#xA;  &lt;/div&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Ver conexiones de red:&lt;/strong&gt;&#xA;&lt;div class=&#34;code-block&#34;&gt;&#xD;&#xA;    &lt;div class=&#34;code-block__header&#34;&gt;&#xD;&#xA;      &lt;span class=&#34;code-block__lang&#34;&gt;CMD&lt;/span&gt;&#xD;&#xA;      &lt;button class=&#34;code-block__copybtn&#34; onclick=&#34;copyToClipboard(this)&#34; title=&#34;Copiar código&#34;&gt;&#xD;&#xA;        &lt;svg width=&#34;16&#34; height=&#34;16&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&#xD;&#xA;          &lt;rect x=&#34;9&#34; y=&#34;9&#34; width=&#34;13&#34; height=&#34;13&#34; rx=&#34;2&#34; ry=&#34;2&#34;&gt;&lt;/rect&gt;&#xD;&#xA;          &lt;path d=&#34;M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1&#34;&gt;&lt;/path&gt;&#xD;&#xA;        &lt;/svg&gt;&#xD;&#xA;      &lt;/button&gt;&#xD;&#xA;    &lt;/div&gt;&#xD;&#xA;    &lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-cmd&#34; data-lang=&#34;cmd&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;netstat -an&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xD;&#xA;  &lt;/div&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Información de red:&lt;/strong&gt;&#xA;&lt;div class=&#34;code-block&#34;&gt;&#xD;&#xA;    &lt;div class=&#34;code-block__header&#34;&gt;&#xD;&#xA;      &lt;span class=&#34;code-block__lang&#34;&gt;CMD&lt;/span&gt;&#xD;&#xA;      &lt;button class=&#34;code-block__copybtn&#34; onclick=&#34;copyToClipboard(this)&#34; title=&#34;Copiar código&#34;&gt;&#xD;&#xA;        &lt;svg width=&#34;16&#34; height=&#34;16&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&#xD;&#xA;          &lt;rect x=&#34;9&#34; y=&#34;9&#34; width=&#34;13&#34; height=&#34;13&#34; rx=&#34;2&#34; ry=&#34;2&#34;&gt;&lt;/rect&gt;&#xD;&#xA;          &lt;path d=&#34;M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1&#34;&gt;&lt;/path&gt;&#xD;&#xA;        &lt;/svg&gt;&#xD;&#xA;      &lt;/button&gt;&#xD;&#xA;    &lt;/div&gt;&#xD;&#xA;    &lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-cmd&#34; data-lang=&#34;cmd&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ipconfig /all&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xD;&#xA;  &lt;/div&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;otros-comandos-útiles&#34;&gt;Otros Comandos Útiles&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;Información del sistema:&lt;/strong&gt;&#xA;&lt;div class=&#34;code-block&#34;&gt;&#xD;&#xA;    &lt;div class=&#34;code-block__header&#34;&gt;&#xD;&#xA;      &lt;span class=&#34;code-block__lang&#34;&gt;CMD&lt;/span&gt;&#xD;&#xA;      &lt;button class=&#34;code-block__copybtn&#34; onclick=&#34;copyToClipboard(this)&#34; title=&#34;Copiar código&#34;&gt;&#xD;&#xA;        &lt;svg width=&#34;16&#34; height=&#34;16&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&#xD;&#xA;          &lt;rect x=&#34;9&#34; y=&#34;9&#34; width=&#34;13&#34; height=&#34;13&#34; rx=&#34;2&#34; ry=&#34;2&#34;&gt;&lt;/rect&gt;&#xD;&#xA;          &lt;path d=&#34;M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1&#34;&gt;&lt;/path&gt;&#xD;&#xA;        &lt;/svg&gt;&#xD;&#xA;      &lt;/button&gt;&#xD;&#xA;    &lt;/div&gt;&#xD;&#xA;    &lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-cmd&#34; data-lang=&#34;cmd&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;systeminfo&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xD;&#xA;  &lt;/div&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Apagar o reiniciar el sistema:&lt;/strong&gt;&#xA;&lt;div class=&#34;code-block&#34;&gt;&#xD;&#xA;    &lt;div class=&#34;code-block__header&#34;&gt;&#xD;&#xA;      &lt;span class=&#34;code-block__lang&#34;&gt;CMD&lt;/span&gt;&#xD;&#xA;      &lt;button class=&#34;code-block__copybtn&#34; onclick=&#34;copyToClipboard(this)&#34; title=&#34;Copiar código&#34;&gt;&#xD;&#xA;        &lt;svg width=&#34;16&#34; height=&#34;16&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&#xD;&#xA;          &lt;rect x=&#34;9&#34; y=&#34;9&#34; width=&#34;13&#34; height=&#34;13&#34; rx=&#34;2&#34; ry=&#34;2&#34;&gt;&lt;/rect&gt;&#xD;&#xA;          &lt;path d=&#34;M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1&#34;&gt;&lt;/path&gt;&#xD;&#xA;        &lt;/svg&gt;&#xD;&#xA;      &lt;/button&gt;&#xD;&#xA;    &lt;/div&gt;&#xD;&#xA;    &lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-cmd&#34; data-lang=&#34;cmd&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;shutdown /r /t 0&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xD;&#xA;  &lt;/div&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;hr&gt;&#xA;&lt;h2 id=&#34;-linux&#34;&gt;🔹 Linux&lt;/h2&gt;&#xA;&lt;h3 id=&#34;monitoreo-de-procesos-y-recursos&#34;&gt;Monitoreo de Procesos y Recursos&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Visualizar procesos en tiempo real:&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Patrones de Diseño en .NET</title>
      <link>https://jaem.site/posts/dotnet/patronesdedisenio/</link>
      <pubDate>Sat, 09 Nov 2024 22:28:49 -0600</pubDate>
      <guid>https://jaem.site/posts/dotnet/patronesdedisenio/</guid>
      <description>&lt;h3 id=&#34;1-patrones-creacionales&#34;&gt;1. Patrones Creacionales&lt;/h3&gt;&#xA;&lt;p&gt;Estos patrones se centran en cómo crear objetos de manera que el sistema sea flexible y escalable. Ayudan a abstraer y simplificar la creación de objetos en lugar de instanciarlos directamente.&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Factory Method (Método de Fábrica)&lt;/strong&gt;:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Proporciona una interfaz para crear objetos en una clase base, permitiendo a las subclases decidir qué objeto instanciar.&lt;/li&gt;&#xA;&lt;li&gt;Ejemplo: Un sistema de gestión de productos en el que diferentes tipos de productos (como físicos o digitales) se crean según la necesidad.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Abstract Factory (Fábrica Abstracta)&lt;/strong&gt;:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mi Página Web</title>
      <link>https://jaem.site/projects/website-jaem/</link>
      <pubDate>Sat, 01 Jun 2024 10:00:00 -0600</pubDate>
      <guid>https://jaem.site/projects/website-jaem/</guid>
      <description>&lt;p&gt;Esta es la versión anterior de mi sitio web personal. Fue desarrollada utilizando el generador de sitios estáticos Hugo y sirvió como mi presencia en línea antes de la versión actual.&lt;/p&gt;&#xA;&lt;p&gt;Puedes visitar la versión antigua aquí: &lt;a href=&#34;https://jaem.site/old/&#34;&gt;https://jaem.site/old/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;Aunque la tecnología y el diseño han evolucionado en la versión actual, esta página representa una etapa importante en mi aprendizaje y desarrollo como desarrollador web.&#xA;&lt;a href=&#34;https://jaem.site/old/&#34;&gt;&lt;figure class=&#34;lightbox-figure&#34;&gt;&#xD;&#xA;  &lt;img&#xD;&#xA;    src=&#34;https://jaem.site/images/old-website-thumbnail.png&#34;&#xD;&#xA;    alt=&#34;Captura de pantalla de la versión antigua de mi sitio web&#34;&#xD;&#xA;    class=&#34;img-fluid lightbox-trigger&#34;&#xD;&#xA;    data-lightbox-src=&#34;https://jaem.site/images/old-website-thumbnail.png&#34;&#xD;&#xA;    data-lightbox-alt=&#34;Captura de pantalla de la versión antigua de mi sitio web&#34;&#xD;&#xA;    loading=&#34;lazy&#34;&#xD;&#xA;    decoding=&#34;async&#34;&#xD;&#xA;    style=&#34;cursor: pointer;&#34;&#xD;&#xA;  &gt;&lt;/figure&gt;&#xD;&#xA;&lt;/a&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mis proyectos</title>
      <link>https://jaem.site/projects/proyectos/</link>
      <pubDate>Mon, 01 Jan 2024 00:00:00 -0600</pubDate>
      <guid>https://jaem.site/projects/proyectos/</guid>
      <description>&lt;h3 id=&#34;hola&#34;&gt;¡Hola!&lt;/h3&gt;&#xA;&lt;p&gt;Hoy, quiero compartir los emocionantes proyectos en los que he estado trabajando. La tecnología sigue avanzando, y con ella, las habilidades y herramientas.&lt;/p&gt;&#xA;&lt;p&gt;Aquí tienes un resumen de algunos de mis proyectos. Haz clic en cada uno para ver más detalles:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;./generador_qr_mongodb.md&#34;&gt;Generador de códigos QR con Python conectado a MongoDB&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;./parroquia_santa_catarina_web.md&#34;&gt;Página web Parroquia Santa Catarina&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;./pasteleria_web.md&#34;&gt;Página web Pastelería&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;./juego_scratch.md&#34;&gt;Juego en Scratch&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Programas realizados en la universidad: He trabajado en varios programas usando Java, C#, etc. Estaré subiendo estos a GitHub próximamente.&lt;br&gt;&#xA;Cada uno de estos proyectos ha sido una oportunidad para aprender, crecer y conectarme con otros. Si alguna pregunta puedes comunicarte con migo atrabez de una de las redes sociales o correo electronico.&lt;/p&gt;</description>
    </item>
    <item>
      <title>ASP.NET: Introducción</title>
      <link>https://jaem.site/posts/dotnet/aspdotnet/</link>
      <pubDate>Fri, 13 Oct 2023 15:07:06 -0600</pubDate>
      <guid>https://jaem.site/posts/dotnet/aspdotnet/</guid>
      <description>&lt;h3 id=&#34;características-principales-de-aspnet&#34;&gt;Características Principales de ASP.NET&lt;/h3&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Alto Rendimiento&lt;/strong&gt;:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;ASP.NET es conocido por su rendimiento optimizado, con tiempos de respuesta rápidos y manejo eficiente de solicitudes de usuario.&lt;/li&gt;&#xA;&lt;li&gt;Incluye capacidades avanzadas de administración de caché, compresión y almacenamiento en memoria para mejorar la experiencia del usuario.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Multiplataforma&lt;/strong&gt;:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Con &lt;strong&gt;ASP.NET Core&lt;/strong&gt;, Microsoft introdujo soporte multiplataforma, permitiendo que las aplicaciones ASP.NET se ejecuten en Windows, Linux y macOS.&lt;/li&gt;&#xA;&lt;li&gt;Esto facilita la portabilidad y el despliegue de aplicaciones en una variedad de servidores y entornos en la nube.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Compatibilidad con MVC (Modelo-Vista-Controlador)&lt;/strong&gt;:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Windows Forms: Introducción</title>
      <link>https://jaem.site/posts/dotnet/windowsforms/</link>
      <pubDate>Fri, 13 Oct 2023 10:29:46 -0600</pubDate>
      <guid>https://jaem.site/posts/dotnet/windowsforms/</guid>
      <description>&lt;h3 id=&#34;características-principales-de-windows-forms&#34;&gt;Características Principales de Windows Forms&lt;/h3&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Desarrollo Rápido y Visual&lt;/strong&gt;:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;WinForms permite el desarrollo rápido de interfaces gracias a su diseñador visual en &lt;strong&gt;Visual Studio&lt;/strong&gt;. Los desarrolladores pueden arrastrar y soltar componentes, como botones y cuadros de texto, directamente en el formulario, y ajustar sus propiedades visualmente.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Componentes Predefinidos&lt;/strong&gt;:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Windows Forms ofrece una variedad de controles listos para usar, como etiquetas, botones, cuadros de texto, listas, menús, barras de progreso y muchos más. Esto facilita el diseño de aplicaciones de usuario enriquecidas sin necesidad de programar todos los elementos de interfaz desde cero.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;p&gt;&lt;strong&gt;Facilidad de Personalización&lt;/strong&gt;:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Generador de códigos QR con Python conectado a MongoDB</title>
      <link>https://jaem.site/projects/generador_qr_mongodb/</link>
      <pubDate>Thu, 15 Jun 2023 00:00:00 -0600</pubDate>
      <guid>https://jaem.site/projects/generador_qr_mongodb/</guid>
      <description>&lt;p&gt;Este es un proyecto fascinante en el que utilicé Python para generar códigos QR y los conecté con MongoDB para la gestión de datos.&lt;/p&gt;&#xA;&lt;p&gt;Puedes encontrar todo el código en mi repositorio de GitHub:&#xA;&lt;a href=&#34;https://github.com/J0SE-ESC0BAR/Qr_Generator&#34;&gt;https://github.com/J0SE-ESC0BAR/Qr_Generator&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;figure class=&#34;lightbox-figure&#34;&gt;&#xD;&#xA;  &lt;img&#xD;&#xA;    src=&#34;https://jaem.site/images/Open_Qr.png&#34;&#xD;&#xA;    alt=&#34;Generador de QR&#34;&#xD;&#xA;    class=&#34;img-fluid lightbox-trigger&#34;&#xD;&#xA;    data-lightbox-src=&#34;https://jaem.site/images/Open_Qr.png&#34;&#xD;&#xA;    data-lightbox-alt=&#34;Generador de QR&#34;&#xD;&#xA;    loading=&#34;lazy&#34;&#xD;&#xA;    decoding=&#34;async&#34;&#xD;&#xA;    style=&#34;cursor: pointer;&#34;&#xD;&#xA;  &gt;&lt;/figure&gt;&#xD;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>GPT3 Responde: ¿Es malo jugar?</title>
      <link>https://jaem.site/posts/gpt3_es_malo_jugar/</link>
      <pubDate>Mon, 26 Dec 2022 21:28:43 -0600</pubDate>
      <guid>https://jaem.site/posts/gpt3_es_malo_jugar/</guid>
      <description>&lt;p&gt;No hay una respuesta simple a esta pregunta, ya que depende de cómo se use el juego y de la persona que lo está jugando. Algunos estudios han demostrado que jugar videojuegos puede tener efectos positivos en el cerebro, como mejorar la habilidad de resolución de problemas y la coordinación mano-ojo. Sin embargo, como con cualquier actividad, es importante moderar el tiempo que se dedica a jugar videojuegos y asegurarse de tener un equilibrio adecuado en la vida. Si se juega de manera excesiva, puede interferir con otras responsabilidades y compromisos, como la escuela o el trabajo, y puede afectar negativamente la salud física y mental.&lt;br&gt;&#xA;Es importante encontrar un equilibrio y asegurarse de que el juego no interfiera con otras áreas de la vida.&lt;/p&gt;</description>
    </item>
    <item>
      <title>¿Que es el Back End?</title>
      <link>https://jaem.site/posts/que_es_el_back-end/</link>
      <pubDate>Mon, 26 Dec 2022 12:03:56 -0600</pubDate>
      <guid>https://jaem.site/posts/que_es_el_back-end/</guid>
      <description>&lt;p&gt;El backend, también conocido como &amp;ldquo;servidor&amp;rdquo;, es la parte de una aplicación o sitio web que se encarga de realizar tareas en segundo plano, es decir, que el usuario final no ve. El backend puede ser utilizado para realizar tareas como almacenar y recuperar información de una base de datos, realizar cálculos y procesamientos complicados, enviar y recibir información a través de Internet, entre otras cosas.&lt;/p&gt;&#xA;&lt;p&gt;El backend suele ser desarrollado utilizando lenguajes de programación como Python, Java o PHP y se ejecuta en servidores de aplicaciones o servidores web. Es común que el backend tenga una interfaz de programación de aplicaciones (API) que permite que otros sistemas o aplicaciones accedan a sus funcionalidades y datos de manera controlada.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Diferencia entre listas y arreglos</title>
      <link>https://jaem.site/posts/java/diferencia-entre-listas-y-arreglos/</link>
      <pubDate>Sun, 25 Dec 2022 21:28:43 -0600</pubDate>
      <guid>https://jaem.site/posts/java/diferencia-entre-listas-y-arreglos/</guid>
      <description>&lt;p&gt;Cual es la diferencia entre&lt;/p&gt;&#xA;&lt;div class=&#34;code-block&#34;&gt;&#xD;&#xA;    &lt;div class=&#34;code-block__header&#34;&gt;&#xD;&#xA;      &lt;span class=&#34;code-block__lang&#34;&gt;TEXT&lt;/span&gt;&#xD;&#xA;      &lt;button class=&#34;code-block__copybtn&#34; onclick=&#34;copyToClipboard(this)&#34; title=&#34;Copiar código&#34;&gt;&#xD;&#xA;        &lt;svg width=&#34;16&#34; height=&#34;16&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&#xD;&#xA;          &lt;rect x=&#34;9&#34; y=&#34;9&#34; width=&#34;13&#34; height=&#34;13&#34; rx=&#34;2&#34; ry=&#34;2&#34;&gt;&lt;/rect&gt;&#xD;&#xA;          &lt;path d=&#34;M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1&#34;&gt;&lt;/path&gt;&#xD;&#xA;        &lt;/svg&gt;&#xD;&#xA;      &lt;/button&gt;&#xD;&#xA;    &lt;/div&gt;&#xD;&#xA;    &lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;List&amp;lt;String&amp;gt; cities = new ArrayList&amp;lt;&amp;gt;(); &lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xD;&#xA;  &lt;/div&gt;&lt;p&gt;y&lt;/p&gt;&#xA;&lt;div class=&#34;code-block&#34;&gt;&#xD;&#xA;    &lt;div class=&#34;code-block__header&#34;&gt;&#xD;&#xA;      &lt;span class=&#34;code-block__lang&#34;&gt;TEXT&lt;/span&gt;&#xD;&#xA;      &lt;button class=&#34;code-block__copybtn&#34; onclick=&#34;copyToClipboard(this)&#34; title=&#34;Copiar código&#34;&gt;&#xD;&#xA;        &lt;svg width=&#34;16&#34; height=&#34;16&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&#xD;&#xA;          &lt;rect x=&#34;9&#34; y=&#34;9&#34; width=&#34;13&#34; height=&#34;13&#34; rx=&#34;2&#34; ry=&#34;2&#34;&gt;&lt;/rect&gt;&#xD;&#xA;          &lt;path d=&#34;M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1&#34;&gt;&lt;/path&gt;&#xD;&#xA;        &lt;/svg&gt;&#xD;&#xA;      &lt;/button&gt;&#xD;&#xA;    &lt;/div&gt;&#xD;&#xA;    &lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;String[] cities = {};&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xD;&#xA;  &lt;/div&gt;&lt;p&gt;La principal diferencia entre List&lt;String&gt; cities = new ArrayList&amp;lt;&amp;gt;(); y String[] cities = {};&#xA;es &lt;strong&gt;el tipo de objeto que están creando.&lt;/strong&gt;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Java Concurrencia y Springboot</title>
      <link>https://jaem.site/posts/java/java_concurrencia_y_springboot/</link>
      <pubDate>Sat, 24 Dec 2022 19:46:50 -0600</pubDate>
      <guid>https://jaem.site/posts/java/java_concurrencia_y_springboot/</guid>
      <description>&lt;h3 id=&#34;indice&#34;&gt;Indice&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Requisitos&lt;/li&gt;&#xA;&lt;li&gt;funciones&lt;/li&gt;&#xA;&lt;li&gt;Stream&lt;/li&gt;&#xA;&lt;li&gt;Web Scraper&lt;/li&gt;&#xA;&lt;li&gt;Variables atomicas&lt;/li&gt;&#xA;&lt;li&gt;Concurrencia&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;requisitos-del-sistema&#34;&gt;Requisitos del sistema&lt;/h3&gt;&#xA;&lt;p&gt;IDE&#xA;JDK 11 o posterior&lt;/p&gt;&#xA;&lt;h3 id=&#34;stream&#34;&gt;Stream&lt;/h3&gt;&#xA;&lt;p&gt;Librerias a utilizar&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;import java.util.ArrayList;&#xD;&#xA;import java.util.List;&#xD;&#xA;import java.util.stream.Collectors;&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;p&gt;Clase principal&lt;/p&gt;&#xA;&lt;pre&gt;&lt;code&gt;public class Main {&#xD;&#xA;    public static void main(String[] args) {&#xD;&#xA;        List&amp;lt;String&amp;gt; cities = new ArrayList&amp;lt;&amp;gt;();&#xD;&#xA;        cities.add(&amp;quot;London&amp;quot;);&#xD;&#xA;        cities.add(&amp;quot;New York&amp;quot;);&#xD;&#xA;        cities.add(&amp;quot;Tokyo&amp;quot;);&#xD;&#xA;        cities.add(&amp;quot;Barcelona&amp;quot;);&#xD;&#xA;        cities.add(&amp;quot;Buenos Aires&amp;quot;);&#xD;&#xA;        cities.add(&amp;quot;Bogota&amp;quot;);&#xD;&#xA;        cities.add(&amp;quot;Ciudad de Mexico&amp;quot;);&#xD;&#xA;        cities.add(&amp;quot;Lima&amp;quot;);&#xD;&#xA;&#xD;&#xA;        //Recorrer una lista de forma tradicional&#xD;&#xA;        for (int i = 0; i &amp;lt; cities.size(); i++) {&#xD;&#xA;            System.out.println(cities.get(i));&#xD;&#xA;        }&#xD;&#xA;&#xD;&#xA;        // Recorrer una lista de forma abrebiada&#xD;&#xA;        for (String city : cities) {&#xD;&#xA;            System.out.println(city);&#xD;&#xA;        }&#xD;&#xA;&#xD;&#xA;        //Ejemplo de stream&#xD;&#xA;        cities.stream().forEach(city -&amp;gt; System.out.println(city));&#xD;&#xA;&#xD;&#xA;        /*Exprecion lambda &#xD;&#xA;        ######### city -&amp;gt; System.out.println(city) ###########&#xD;&#xA;        Es tratar de crear una funcion en una sola linea&#xD;&#xA;        (si solo tendara una variable no es nesesario declarar el tipo de la variable &#xD;&#xA;        y si solo tiene una linea de codigo no es nesesario poner las llaves)&#xD;&#xA;        */&#xD;&#xA;&#xD;&#xA;        //Lamar una funcion tradicional e stram (referencia de metodo)&#xD;&#xA;        cities.stream().forEach(Main::printCity);&#xD;&#xA;        /*en ves de ser Main.prinCity, es con doble dos puntos Main::printCity */&#xD;&#xA;        cities.stream().forEach(System.out::println);&#xD;&#xA;&#xD;&#xA;        //Tambien se puede usar directo el foreach, pero el stream aunque no este, siempre se esta usando&#xD;&#xA;        cities.forEach(System.out::println);&#xD;&#xA;&#xD;&#xA;        //Ejecutar un proceso en paralelo&#xD;&#xA;        cities.stream().parallel().forEach(System.out::println);&#xD;&#xA;&#xD;&#xA;        //Al cocatenar metodos con &amp;quot;.&amp;quot; estamos usando el patron de diseño Pipeline&#xD;&#xA;        //Ejemplo de pipeline con filter&#xD;&#xA;        /*cities.stream().filter(city -&amp;gt; city.startsWith(&amp;quot;B&amp;quot;)).forEach(System.out::println);*/&#xD;&#xA;        cities.stream()&#xD;&#xA;        .filter(city -&amp;gt; city.startsWith(&amp;quot;B&amp;quot;))&#xD;&#xA;        .forEach(System.out::println);&#xD;&#xA;&#xD;&#xA;        //Ejemplo de expresion lambda con varias lineas&#xD;&#xA;        cities.stream().filter(city -&amp;gt; {&#xD;&#xA;            boolean result = city.startsWith(&amp;quot;B&amp;quot;);&#xD;&#xA;            return result;&#xD;&#xA;        });&#xD;&#xA;&#xD;&#xA;        //Agregemos otro filto al metodo&#xD;&#xA;        cities.stream()&#xD;&#xA;        .filter(city -&amp;gt; city.startsWith(&amp;quot;B&amp;quot;))&#xD;&#xA;        .filter(city -&amp;gt; city.contains(&amp;quot;n&amp;quot;))&#xD;&#xA;        .forEach(System.out::println);&#xD;&#xA;&#xD;&#xA;        /*Existen dos tipos de metodos&#xD;&#xA;        * 1.- Metodos terminales&#xD;&#xA;        * foreach&#xD;&#xA;        * 2.- Metodos no terminales (NUNCA VAN A SER TERMINALES)&#xD;&#xA;        * filter&#xD;&#xA;        * &#xD;&#xA;        */&#xD;&#xA;&#xD;&#xA;        /*Ejemplo, no lo podmeos guardar en una lista, porque no tiene metodo terminal&#xD;&#xA;        List &amp;lt;String&amp;gt; filttredCities = cities.stream()&#xD;&#xA;        .filter(city -&amp;gt; city.startsWith(&amp;quot;B&amp;quot;))&#xD;&#xA;        .filter(city -&amp;gt; city.contains(&amp;quot;n&amp;quot;));*/&#xD;&#xA;&#xD;&#xA;        //Usando el metodo terminal collect(collectors.toList()) si se podria hacer&#xD;&#xA;        List &amp;lt;String&amp;gt; filttredCities = cities.stream()&#xD;&#xA;        .filter(city -&amp;gt; city.startsWith(&amp;quot;B&amp;quot;))&#xD;&#xA;        .filter(city -&amp;gt; city.contains(&amp;quot;n&amp;quot;))&#xD;&#xA;        .collect(Collectors.toList());&#xD;&#xA;        //El metodo collect permite convertir un stream en una lista&#xD;&#xA;    }&#xD;&#xA;&#xD;&#xA;    //Metodo filtrar ciudad&#xD;&#xA;    public static boolean filterCity(String city) {&#xD;&#xA;        return city.startsWith(&amp;quot;B&amp;quot;);&#xD;&#xA;    }&#xD;&#xA;&#xD;&#xA;    //Metodo tradicional&#xD;&#xA;    public static void printCity(String city) {&#xD;&#xA;        System.out.println(city);&#xD;&#xA;    }&#xD;&#xA;}&#xD;&#xA;&lt;/code&gt;&lt;/pre&gt;&#xA;&lt;h3 id=&#34;web-scraper&#34;&gt;Web Scraper&lt;/h3&gt;&#xA;&lt;h3 id=&#34;variables-atomicas&#34;&gt;Variables atomicas&lt;/h3&gt;&#xA;&lt;blockquote&gt;&#xA;&lt;p&gt;Las clases count y count_atomic se encuantran despues de los ejemplos&lt;/p&gt;</description>
    </item>
    <item>
      <title>SQL Basico</title>
      <link>https://jaem.site/posts/sql_basico/</link>
      <pubDate>Thu, 14 Jul 2022 09:20:48 -0600</pubDate>
      <guid>https://jaem.site/posts/sql_basico/</guid>
      <description>&lt;p&gt;En este post se describen los comandos básicos de SQL, desde la creación de una base de datos hasta la eliminación de una tabla. Además, se muestran ejemplos de cómo insertar valores en una tabla, solicitar datos específicos, ordenar resultados y actualizar o eliminar registros. También se incluyen comandos para agregar, renombrar o eliminar columnas en una tabla.&lt;/p&gt;&#xA;&lt;h3 id=&#34;comandos-básicos&#34;&gt;Comandos básicos&lt;/h3&gt;&#xA;&lt;h4 id=&#34;-crea-una-nueva-base-de-datos&#34;&gt;&amp;ndash; Crea una nueva base de datos&lt;/h4&gt;&#xA;&lt;div class=&#34;code-block&#34;&gt;&#xD;&#xA;    &lt;div class=&#34;code-block__header&#34;&gt;&#xD;&#xA;      &lt;span class=&#34;code-block__lang&#34;&gt;SQL&lt;/span&gt;&#xD;&#xA;      &lt;button class=&#34;code-block__copybtn&#34; onclick=&#34;copyToClipboard(this)&#34; title=&#34;Copiar código&#34;&gt;&#xD;&#xA;        &lt;svg width=&#34;16&#34; height=&#34;16&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&#xD;&#xA;          &lt;rect x=&#34;9&#34; y=&#34;9&#34; width=&#34;13&#34; height=&#34;13&#34; rx=&#34;2&#34; ry=&#34;2&#34;&gt;&lt;/rect&gt;&#xD;&#xA;          &lt;path d=&#34;M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1&#34;&gt;&lt;/path&gt;&#xD;&#xA;        &lt;/svg&gt;&#xD;&#xA;      &lt;/button&gt;&#xD;&#xA;    &lt;/div&gt;&#xD;&#xA;    &lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;k&#34;&gt;create&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;database&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Blog&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xD;&#xA;  &lt;/div&gt;&lt;script&gt;&#xD;&#xA;      function copyToClipboard(button) {&#xD;&#xA;        const codeBlock = button.closest(&#39;.code-block&#39;).querySelector(&#39;code&#39;);&#xD;&#xA;        if (codeBlock) {&#xD;&#xA;          const textToCopy = codeBlock.textContent || codeBlock.innerText;&#xD;&#xA;          navigator.clipboard.writeText(textToCopy).then(() =&gt; {&#xD;&#xA;            const originalContent = button.innerHTML;&#xD;&#xA;            button.innerHTML = &#39;&lt;svg width=&#34;16&#34; height=&#34;16&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&lt;polyline points=&#34;20,6 9,17 4,12&#34;&gt;&lt;/polyline&gt;&lt;/svg&gt;&#39;;&#xD;&#xA;            button.style.color = &#39;#10b981&#39;;&#xD;&#xA;            setTimeout(() =&gt; {&#xD;&#xA;              button.innerHTML = originalContent;&#xD;&#xA;              button.style.color = &#39;&#39;;&#xD;&#xA;            }, 2000);&#xD;&#xA;          }).catch(err =&gt; {&#xD;&#xA;            console.error(&#39;Error al copiar el código: &#39;, err);&#xD;&#xA;            alert(&#39;No se pudo copiar el código&#39;);&#xD;&#xA;          });&#xD;&#xA;        }&#xD;&#xA;      }&#xD;&#xA;    &lt;/script&gt;&lt;h4 id=&#34;-seleccionar-base-de-datos&#34;&gt;&amp;ndash; Seleccionar base de datos&lt;/h4&gt;&#xA;&lt;div class=&#34;code-block&#34;&gt;&#xD;&#xA;    &lt;div class=&#34;code-block__header&#34;&gt;&#xD;&#xA;      &lt;span class=&#34;code-block__lang&#34;&gt;SQL&lt;/span&gt;&#xD;&#xA;      &lt;button class=&#34;code-block__copybtn&#34; onclick=&#34;copyToClipboard(this)&#34; title=&#34;Copiar código&#34;&gt;&#xD;&#xA;        &lt;svg width=&#34;16&#34; height=&#34;16&#34; viewBox=&#34;0 0 24 24&#34; fill=&#34;none&#34; stroke=&#34;currentColor&#34; stroke-width=&#34;2&#34; stroke-linecap=&#34;round&#34; stroke-linejoin=&#34;round&#34;&gt;&#xD;&#xA;          &lt;rect x=&#34;9&#34; y=&#34;9&#34; width=&#34;13&#34; height=&#34;13&#34; rx=&#34;2&#34; ry=&#34;2&#34;&gt;&lt;/rect&gt;&#xD;&#xA;          &lt;path d=&#34;M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1&#34;&gt;&lt;/path&gt;&#xD;&#xA;        &lt;/svg&gt;&#xD;&#xA;      &lt;/button&gt;&#xD;&#xA;    &lt;/div&gt;&#xD;&#xA;    &lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;n&#34;&gt;use&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;k&#34;&gt;database&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;n&#34;&gt;Blog&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xD;&#xA;  &lt;/div&gt;&lt;p&gt;Cada uno de los identificadores representa una columna y están ordenados de la siguiente forma:&lt;br&gt;&#xA;(identificador) (tipo) (si puede quedar vacío)&lt;/p&gt;</description>
    </item>
    <item>
      <title>Halo CE</title>
      <link>https://jaem.site/posts/halo_ce_errores/</link>
      <pubDate>Tue, 07 Jun 2022 17:57:53 -0600</pubDate>
      <guid>https://jaem.site/posts/halo_ce_errores/</guid>
      <description>&lt;h2 id=&#34;halo-ce-2022--solución-de-errores&#34;&gt;Halo CE 2022 | Solución de errores&lt;/h2&gt;&#xA;&lt;h3 id=&#34;este-post-estara-dividido-en-3-partes-para-entender-mejor-el-funcionamiento-de-halo-ce&#34;&gt;Este post estara dividido en 3 partes para entender mejor el funcionamiento de Halo CE.&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&#xA;&lt;h4 id=&#34;explicación-de-que-es-hac2-y-chimera&#34;&gt;Explicación de que es hac2 y chimera&lt;/h4&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;h4 id=&#34;componentes-necesarios-que-necesita-halo-ce&#34;&gt;Componentes necesarios que necesita Halo CE&lt;/h4&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;&#xA;&lt;h4 id=&#34;solución-a-errores&#34;&gt;Solución a errores&lt;/h4&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h4 id=&#34;explicación-de-que-es-hac2-y-chimera-1&#34;&gt;Explicación de que es hac2 y chimera&lt;/h4&gt;&#xA;&lt;h3 id=&#34;qué-es-hac2&#34;&gt;¿Qué es hac2?&lt;/h3&gt;&#xA;&lt;p&gt;Hac2 es un modificador de halo ce que mejora la jugabilidad dentro del juego, sus principales características son:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Permite añadir servidores a favorito (f3) para añadir y (f5) para ver, (alt+num) para entrar al servidor.&lt;/li&gt;&#xA;&lt;li&gt;Se puede cambiar el color de hud (barra de vida, indicador de arma, granadas y munición) (f8).&lt;/li&gt;&#xA;&lt;li&gt;Se pueden descargar muchos mapas de forma automática, cuando no tienes un mapa hac2 lo descarga.&lt;/li&gt;&#xA;&lt;li&gt;Se puede cambiar el campo de visión (f6).&lt;/li&gt;&#xA;&lt;li&gt;Se puede espectar a otros jugadores(f7).&lt;/li&gt;&#xA;&lt;li&gt;Se pueden instalar medallas.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Su instalación es colocar un archivo en la carpeta controls del juego.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Página web Parroquia Santa Catarina</title>
      <link>https://jaem.site/projects/parroquia_santa_catarina_web/</link>
      <pubDate>Wed, 01 Jun 2022 00:00:00 -0600</pubDate>
      <guid>https://jaem.site/projects/parroquia_santa_catarina_web/</guid>
      <description>&lt;p&gt;Un sitio web que desarrollé para la Parroquia Santa Catarina.&lt;/p&gt;&#xA;&lt;p&gt;Visita el sitio web para verlo en acción: &lt;a href=&#34;https://parroquiasantacatarinaapopa.github.io/&#34;&gt;https://parroquiasantacatarinaapopa.github.io/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;figure class=&#34;lightbox-figure&#34;&gt;&#xD;&#xA;  &lt;img&#xD;&#xA;    src=&#34;https://jaem.site/images/capturamovil.png&#34;&#xD;&#xA;    alt=&#34;App movil&#34;&#xD;&#xA;    class=&#34;img-fluid lightbox-trigger&#34;&#xD;&#xA;    data-lightbox-src=&#34;https://jaem.site/images/capturamovil.png&#34;&#xD;&#xA;    data-lightbox-alt=&#34;App movil&#34;&#xD;&#xA;    loading=&#34;lazy&#34;&#xD;&#xA;    decoding=&#34;async&#34;&#xD;&#xA;    style=&#34;cursor: pointer;&#34;&#xD;&#xA;  &gt;&lt;/figure&gt;&#xD;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Mi aprendizaje en Launch X</title>
      <link>https://jaem.site/posts/mi_aprendizaje/</link>
      <pubDate>Wed, 20 Apr 2022 00:00:00 +0000</pubDate>
      <guid>https://jaem.site/posts/mi_aprendizaje/</guid>
      <description>&lt;p&gt;Quiero comartir con ustedes todo lo que e aprendido hasta hoy en Lauch-X&lt;/p&gt;&#xA;&lt;h3 id=&#34;introducción&#34;&gt;Introducción&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Python&lt;/li&gt;&#xA;&lt;li&gt;Logica de Programacion&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;fron-end&#34;&gt;Fron-end&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;HTML&lt;/li&gt;&#xA;&lt;li&gt;CSS&lt;/li&gt;&#xA;&lt;li&gt;JavaScript&lt;/li&gt;&#xA;&lt;li&gt;Vue(basico)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;back-end&#34;&gt;Back-end&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Git&lt;/li&gt;&#xA;&lt;li&gt;GitHub&lt;/li&gt;&#xA;&lt;li&gt;GitHub Pages&lt;/li&gt;&#xA;&lt;li&gt;Hugo&lt;/li&gt;&#xA;&lt;li&gt;Markdown (basico)&lt;/li&gt;&#xA;&lt;li&gt;node.js&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
    </item>
    <item>
      <title>Página web Pastelería</title>
      <link>https://jaem.site/projects/pasteleria_web/</link>
      <pubDate>Wed, 01 Sep 2021 00:00:00 -0600</pubDate>
      <guid>https://jaem.site/projects/pasteleria_web/</guid>
      <description>&lt;p&gt;Un proyecto en el que diseñé una página web durante un curso de full stack. El host solo estuvo disponible por un año.&lt;/p&gt;&#xA;&lt;p&gt;Puedes ver una demostración aquí: &lt;a href=&#34;http://launchfrontend.000webhostapp.com/&#34;&gt;http://launchfrontend.000webhostapp.com/&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;figure class=&#34;lightbox-figure&#34;&gt;&#xD;&#xA;  &lt;img&#xD;&#xA;    src=&#34;https://jaem.site/images/web_pasteleria.png&#34;&#xD;&#xA;    alt=&#34;Pasteleria&#34;&#xD;&#xA;    class=&#34;img-fluid lightbox-trigger&#34;&#xD;&#xA;    data-lightbox-src=&#34;https://jaem.site/images/web_pasteleria.png&#34;&#xD;&#xA;    data-lightbox-alt=&#34;Pasteleria&#34;&#xD;&#xA;    loading=&#34;lazy&#34;&#xD;&#xA;    decoding=&#34;async&#34;&#xD;&#xA;    style=&#34;cursor: pointer;&#34;&#xD;&#xA;  &gt;&lt;/figure&gt;&#xD;&#xA;&lt;/p&gt;</description>
    </item>
    <item>
      <title>Juego en Scratch</title>
      <link>https://jaem.site/projects/juego_scratch/</link>
      <pubDate>Tue, 01 Jan 2019 00:00:00 -0600</pubDate>
      <guid>https://jaem.site/projects/juego_scratch/</guid>
      <description>&lt;p&gt;Para los aficionados a los juegos, aquí tienes un juego que creé en Scratch.&lt;/p&gt;&#xA;&lt;p&gt;Puedes ver el juego en acción en YouTube: &lt;a href=&#34;https://www.youtube.com/watch?v=eA62TGHADvg&amp;amp;t=16s&amp;amp;ab_channel=JAEM&#34;&gt;https://www.youtube.com/watch?v=eA62TGHADvg&amp;amp;t=16s&amp;amp;ab_channel=JAEM&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;&lt;figure class=&#34;lightbox-figure&#34;&gt;&#xD;&#xA;  &lt;img&#xD;&#xA;    src=&#34;https://jaem.site/images/Terraria_OtherWold.png&#34;&#xD;&#xA;    alt=&#34;Juego de terraria&#34;&#xD;&#xA;    class=&#34;img-fluid lightbox-trigger&#34;&#xD;&#xA;    data-lightbox-src=&#34;https://jaem.site/images/Terraria_OtherWold.png&#34;&#xD;&#xA;    data-lightbox-alt=&#34;Juego de terraria&#34;&#xD;&#xA;    loading=&#34;lazy&#34;&#xD;&#xA;    decoding=&#34;async&#34;&#xD;&#xA;    style=&#34;cursor: pointer;&#34;&#xD;&#xA;  &gt;&lt;/figure&gt;&#xD;&#xA;&lt;/p&gt;&#xA;&lt;p&gt;Si estás interesado en probar este proyecto, aquí tienes un enlace de descarga:&#xA;&lt;a href=&#34;https://mega.nz/#!D9dURSZA!jiNh93sZMcUd1ur3vFB_kAtJJmiMBzr0mSi6E6mSmx4&#34;&gt;https://mega.nz/#!D9dURSZA!jiNh93sZMcUd1ur3vFB_kAtJJmiMBzr0mSi6E6mSmx4&lt;/a&gt;&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
