altenwald.org Ads.txt file

<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->

<meta name="author" content="Altenwald">
<title>Altenwald Blog</title>

<!-- Consent -->
<script type="text/javascript">
var _iub = _iub || [];
_iub.csConfiguration = {"siteId":3913164,"cookiePolicyId":64508499,"lang":"es","storage":{"useSiteId":true}};
</script>
<script type="text/javascript" src="https://cs.iubenda.com/autoblocking/3913164.js"></script>
<script type="text/javascript" src="//cdn.iubenda.com/cs/gpp/stub.js"></script>
<script type="text/javascript" src="//cdn.iubenda.com/cs/iubenda_cs.js" charset="UTF-8" async></script>


<!-- Google font -->
<link href="https://fonts.googleapis.com/css?family=Nunito+Sans:700%7CNunito:300,600" rel="stylesheet">
<link href='https://fonts.googleapis.com/css?family=Share+Tech' rel='stylesheet' type='text/css'>
<link href='https://fonts.googleapis.com/css?family=Fenix' rel='stylesheet' type='text/css'>
<link href='https://fonts.googleapis.com/css?family=Cantarell' rel='stylesheet' type='text/css'>

<!-- Custom stlylesheet -->
<link type="text/css" rel="stylesheet" href="/css/app.css">

<meta name="description" content="">


<!-- Schema.org markup -->
<meta itemprop="name" content="Altenwald Blog">
<meta itemprop="description" content="Blog sobre programación, software libre, redes, servidores, ...">
<meta itemprop="image" content="/images/posts/unknown.jpg">

<!-- Twitter Card data -->
<meta name="twitter:card" content="summary">
<meta name="twitter:site" content="@altenwald">
<meta name="twitter:title" content="Altenwald Blog">
<meta name="twitter:description" content="Blog sobre programación, software libre, redes, servidores, ...">
<meta name="twitter:creator" content="@altenwald">
<meta name="twitter:image" content="/images/posts/unknown.jpg">

<link href="/atom.xml" rel="alternate" title="Altenwald Blog" type="application/atom+xml">

<meta property="og:type" content="website" />
<meta property="og:image" content="/images/posts/unknown.jpg" />
<meta property="og:site_name" content="Altenwald Blog" />
<meta property="og:title" content="Altenwald Blog" />
<meta property="og:description" content="Blog sobre programación, software libre, redes, servidores, ..." />
<meta property="og:url" content="/////"/>

<meta name="distribution" content="global">
<!-- Global site tag (gtag.js) - Google Analytics -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-N5Q0F0976P"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-N5Q0F0976P');
</script>

<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-K8V762B');</script>
<!-- End Google Tag Manager -->


<meta name="sitemap" type="application/xml" title="Sitemap" href="/sitemap.xml"/>

<link rel="apple-touch-icon" sizes="57x57" href="/favicon/apple-icon-57x57.png">
<link rel="apple-touch-icon" sizes="60x60" href="/favicon/apple-icon-60x60.png">
<link rel="apple-touch-icon" sizes="72x72" href="/favicon/apple-icon-72x72.png">
<link rel="apple-touch-icon" sizes="76x76" href="/favicon/apple-icon-76x76.png">
<link rel="apple-touch-icon" sizes="114x114" href="/favicon/apple-icon-114x114.png">
<link rel="apple-touch-icon" sizes="120x120" href="/favicon/apple-icon-120x120.png">
<link rel="apple-touch-icon" sizes="144x144" href="/favicon/apple-icon-144x144.png">
<link rel="apple-touch-icon" sizes="152x152" href="/favicon/apple-icon-152x152.png">
<link rel="apple-touch-icon" sizes="180x180" href="/favicon/apple-icon-180x180.png">
<link rel="icon" type="image/png" sizes="192x192" href="/favicon/android-icon-192x192.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="96x96" href="/favicon/favicon-96x96.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon/favicon-16x16.png">
<link rel="manifest" href="/favicon/manifest.json">
<meta name="msapplication-TileColor" content="#ffffff">
<meta name="msapplication-TileImage" content="/favicon/ms-icon-144x144.png">
<meta name="theme-color" content="#ffffff">
</head>

<body>
<div class="navbar">
<div class="navbar-start">
<div class="dropdown">
<div tabindex="0" role="button" class="btn btn-ghost md:hidden">
<svg xmlns="http://www.w3.org/2000/svg" class="h-5 w-5" fill="none" viewBox="0 0 24 24" stroke="currentColor"> <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M4 6h16M4 12h8m-8 6h16" /> </svg>
</div>
<ul tabindex="0" class="menu menu-sm dropdown-content bg-base-100 rounded-box z-1 mt-3 w-52 p-2 shadow">

<li><a class="text-lg" href="/acerca-de/">Acerca de...</a></li>

<li><a class="text-lg" href="/curriculum-vitae/">¿Quiénes somos?</a></li>

<li><a class="text-lg" href="/atom.xml">RSS</a></li>


<li>
<a class="text-lg" href="/category/noticias/">Noticias</a>
</li>

<li class="border-s-3 border-s-blue-500">
<a class="text-lg" href="/category/sistemas/">Sistemas</a>
</li>

<li class="border-s-3 border-s-lime-500">
<a class="text-lg" href="/category/desarrollo/">Desarrollo</a>
</li>

<li class="border-s-3 border-s-orange-400">
<a class="text-lg" href="/category/historias/">Historias</a>
</li>

<li class="border-s-3 border-s-purple-500">
<a class="text-lg" href="/category/productividad/">Productividad</a>
</li>

</ul>
</div>
<a href="/" class="btn btn-ghost text-xl border-none ml-4 md:ml-2">
<img src="/images/altenwald_logo_web.png" alt="Altenwald"/>
</a>
</div>
<div class="navbar-center hidden md:flex">
<ul class="menu menu-horizontal px-1">

<li class="border-x-1 border-x-stone-300 ">
<a class="text-lg" href="/category/noticias/">Noticias</a>
</li>

<li class="border-x-1 border-x-stone-300 border-b-2 border-b-blue-500">
<a class="text-lg" href="/category/sistemas/">Sistemas</a>
</li>

<li class="border-x-1 border-x-stone-300 border-b-2 border-b-lime-500">
<a class="text-lg" href="/category/desarrollo/">Desarrollo</a>
</li>

<li class="border-x-1 border-x-stone-300 border-b-2 border-b-orange-400">
<a class="text-lg" href="/category/historias/">Historias</a>
</li>

<li class="border-x-1 border-x-stone-300 border-b-2 border-b-purple-500">
<a class="text-lg" href="/category/productividad/">Productividad</a>
</li>

</ul>
</div>
<div class="navbar-end"></div>
</div>

<main class="max-w-[52rem] mx-auto px-4 py-12 sm:px-6 md:px-8 xl:px-12 lg:max-w-6xl">
<div class="container mx-auto">
<div class="grid grid-cols-6 gap-4">
<div class="col-span-6 md:col-span-4">

<div class="grid grid-cols-4 gap-2 pb-5 mb-5 border-b-2 border-neutral-300">
<div class="hidden md:block">
<a
class="size-[150px]"
href="/2025/05/20/por-que-mi-lenguaje-no-es-popular/"
>
<img
class="shadow"
src="/images/posts/dsl.jpg"
alt="miniatura"
/>
</a>
</div>
<div class="col-span-4 md:col-span-3">
<div class="mt-0 mb-2">
<a
class="p-2 font-semibold uppercase text-white bg-yellow-300"
href="/category/opinión"
>
opinión
</a>
<span class="p-2 font-semibold mx-3">2025-05-20</span>
<span class="hidden md:inline p-2 font-semibold bg-neutral-300">7 minutos de lectura</span>
</div>
<div class="md:hidden">
<span class="p-2 font-semibold">7 minutos de lectura</span>
</div>
<div class="prose">
<h3 class="">
<a href="/2025/05/20/por-que-mi-lenguaje-no-es-popular/">¿Por qué mi lenguaje no es popular?</a>
</h3>
<p>
En el proyecto de <a href="https://youtube.com/@programandootrahistoria">Programando Otra Historia</a> publicamos hace tiempo un vídeo sobre Ada y nos hizo pensar, ¿por qué un lenguaje tan bien valorado no es más popular? ¿por qué no lo usa más gente?</p>

<a rel="full-article" href="/2025/05/20/por-que-mi-lenguaje-no-es-popular/">Leer más ➤</a>
</div>
</div>
</div>

<div class="grid grid-cols-4 gap-2 pb-5 mb-5 border-b-2 border-neutral-300">
<div class="hidden md:block">
<a
class="size-[150px]"
href="/2025/04/04/gimp-en-xquartz-mac/"
>
<img
class="shadow"
src="/images/posts/gimp.png"
alt="miniatura"
/>
</a>
</div>
<div class="col-span-4 md:col-span-3">
<div class="mt-0 mb-2">
<a
class="p-2 font-semibold uppercase text-white bg-orange-400"
href="/category/historias"
>
historias
</a>
<span class="p-2 font-semibold mx-3">2025-04-04</span>
<span class="hidden md:inline p-2 font-semibold bg-neutral-300">2 minutos de lectura</span>
</div>
<div class="md:hidden">
<span class="p-2 font-semibold">2 minutos de lectura</span>
</div>
<div class="prose">
<h3 class="">
<a href="/2025/04/04/gimp-en-xquartz-mac/">Gimp: Corriendo en Xquartz (macOS) con Docker</a>
</h3>
<p>
Hace un tiempo Gimp se rompió para macOS, no os preocupéis, afortunadamente eso fue temporal, sin embargo fue durante bastante tiempo y sin poder emplear Gimp, surgieron ideas para poder ejecutar Gimp usando Docker.</p>

<a rel="full-article" href="/2025/04/04/gimp-en-xquartz-mac/">Leer más ➤</a>
</div>
</div>
</div>

<div class="grid grid-cols-4 gap-2 pb-5 mb-5 border-b-2 border-neutral-300">
<div class="hidden md:block">
<a
class="size-[150px]"
href="/2025/03/19/ese-odioso-frontend/"
>
<img
class="shadow"
src="/images/posts/lambdapad.png"
alt="miniatura"
/>
</a>
</div>
<div class="col-span-4 md:col-span-3">
<div class="mt-0 mb-2">
<a
class="p-2 font-semibold uppercase text-white bg-orange-400"
href="/category/historias"
>
historias
</a>
<span class="p-2 font-semibold mx-3">2025-03-19</span>
<span class="hidden md:inline p-2 font-semibold bg-neutral-300">1 minutos de lectura</span>
</div>
<div class="md:hidden">
<span class="p-2 font-semibold">1 minutos de lectura</span>
</div>
<div class="prose">
<h3 class="">
<a href="/2025/03/19/ese-odioso-frontend/">Ese Odioso Frontend: Esbuild, Tailwind, NPM, ... ¿Qué más?</a>
</h3>
<p>
Hoy acabé de realizar una modificación en <a href="https://lambdapad.com">Lambdapad</a>, ya hay posibilidad de utilizar herramientas para gestionar los <em>assets</em> de forma dinámica. Dicho de otra forma, es un paso para facilitar la vida a los programadores <em>frontend</em>. Pero, ¿realmente vale la pena?</p>

<a rel="full-article" href="/2025/03/19/ese-odioso-frontend/">Leer más ➤</a>
</div>
</div>
</div>

<div class="grid grid-cols-4 gap-2 pb-5 mb-5 border-b-2 border-neutral-300">
<div class="hidden md:block">
<a
class="size-[150px]"
href="/2025/02/27/gambas-y-copilot/"
>
<img
class="shadow"
src="/images/posts/gambas_copilot.png"
alt="miniatura"
/>
</a>
</div>
<div class="col-span-4 md:col-span-3">
<div class="mt-0 mb-2">
<a
class="p-2 font-semibold uppercase text-white bg-orange-400"
href="/category/historias"
>
historias
</a>
<span class="p-2 font-semibold mx-3">2025-02-27</span>
<span class="hidden md:inline p-2 font-semibold bg-neutral-300">13 minutos de lectura</span>
</div>
<div class="md:hidden">
<span class="p-2 font-semibold">13 minutos de lectura</span>
</div>
<div class="prose">
<h3 class="">
<a href="/2025/02/27/gambas-y-copilot/">Gambas y Copilot: El Junior que cree que sabe</a>
</h3>
<p>
Para uno de los capítulos de <a href="https://youtube.com/@programandootrahistoria">Programando Otra Historia</a> estuve haciendo un desarrollo con <a href="https://gambas.sourceforge.net/">Gambas3</a> y como hace tiempo que no programo en BASIC y quería hacerlo rápido dije: &quot;Vamos a usar <a href="https://copilot.microsoft.com/">Copilot</a>, ¿qué puede salir mal?&quot;</p>

<a rel="full-article" href="/2025/02/27/gambas-y-copilot/">Leer más ➤</a>
</div>
</div>
</div>

<div class="grid grid-cols-4 gap-2 pb-5 mb-5 border-b-2 border-neutral-300">
<div class="hidden md:block">
<a
class="size-[150px]"
href="/2025/01/25/avances-en-dymmer/"
>
<img
class="shadow"
src="/images/posts/dymmer.png"
alt="miniatura"
/>
</a>
</div>
<div class="col-span-4 md:col-span-3">
<div class="mt-0 mb-2">
<a
class="p-2 font-semibold uppercase text-white bg-orange-400"
href="/category/historias"
>
historias
</a>
<span class="p-2 font-semibold mx-3">2025-01-25</span>
<span class="hidden md:inline p-2 font-semibold bg-neutral-300">14 minutos de lectura</span>
</div>
<div class="md:hidden">
<span class="p-2 font-semibold">14 minutos de lectura</span>
</div>
<div class="prose">
<h3 class="">
<a href="/2025/01/25/avances-en-dymmer/">Avances en Dymmer: Los Peligros de la Deuda Técnica</a>
</h3>
<p>
Hace 5 años escribí una entrada sobre <a href="/2019/01/15/dymmer-como-se-hizo/">Cómo se Hizo Dymmer</a> y solo tengo palabras de desaliento para ese programador de hace 5 años que se embarcó con ilusión en el desarrollo de <a href="https://dymmer.com">Dymmer</a>: ¿¡En qué estabas pensando!?</p>

<a rel="full-article" href="/2025/01/25/avances-en-dymmer/">Leer más ➤</a>
</div>
</div>
</div>

<div class="grid grid-cols-4 gap-2 pb-5 mb-5 border-b-2 border-neutral-300">
<div class="hidden md:block">
<a
class="size-[150px]"
href="/2024/09/06/diseno-de-software-por-niveles/"
>
<img
class="shadow"
src="/images/posts/bloques.png"
alt="miniatura"
/>
</a>
</div>
<div class="col-span-4 md:col-span-3">
<div class="mt-0 mb-2">
<a
class="p-2 font-semibold uppercase text-white bg-lime-500"
href="/category/desarrollo"
>
desarrollo
</a>
<span class="p-2 font-semibold mx-3">2024-09-06</span>
<span class="hidden md:inline p-2 font-semibold bg-neutral-300">6 minutos de lectura</span>
</div>
<div class="md:hidden">
<span class="p-2 font-semibold">6 minutos de lectura</span>
</div>
<div class="prose">
<h3 class="">
<a href="/2024/09/06/diseno-de-software-por-niveles/">Diseño de software por niveles: Construyendo bloques</a>
</h3>
<p>
Cuando programaba en VisualBasic usaba un elemento de tabla que conectaba a la base de datos y presentaba los datos, pero si quería mostrar los datos de otra forma tenía que crear todo el elemento desde cero yo mismo, ¿por qué no había posibilidad de usar bloques de construcción?</p>

<a rel="full-article" href="/2024/09/06/diseno-de-software-por-niveles/">Leer más ➤</a>
</div>
</div>
</div>

<div class="grid grid-cols-4 gap-2 pb-5 mb-5 border-b-2 border-neutral-300">
<div class="hidden md:block">
<a
class="size-[150px]"
href="/2024/08/12/deja-de-llamar-real-time-a-http-o-websocket/"
>
<img
class="shadow"
src="/images/posts/tiempo_real.png"
alt="miniatura"
/>
</a>
</div>
<div class="col-span-4 md:col-span-3">
<div class="mt-0 mb-2">
<a
class="p-2 font-semibold uppercase text-white bg-lime-500"
href="/category/desarrollo"
>
desarrollo
</a>
<span class="p-2 font-semibold mx-3">2024-08-12</span>
<span class="hidden md:inline p-2 font-semibold bg-neutral-300">3 minutos de lectura</span>
</div>
<div class="md:hidden">
<span class="p-2 font-semibold">3 minutos de lectura</span>
</div>
<div class="prose">
<h3 class="">
<a href="/2024/08/12/deja-de-llamar-real-time-a-http-o-websocket/">Deja de llamar Real-time a HTTP o WebSocket</a>
</h3>
<p>
Hay un término que se está haciendo muy famoso cuando se programa con HTTP
y es <em>real-time</em>. El término lo emplean actualmente para referirse a obtener
una respuesta rápida o incluso recibir información cuando esta está disponible
pero, ¿sabes que este término no es correcto?</p>

<a rel="full-article" href="/2024/08/12/deja-de-llamar-real-time-a-http-o-websocket/">Leer más ➤</a>
</div>
</div>
</div>

<div class="grid grid-cols-4 gap-2 pb-5 mb-5 border-b-2 border-neutral-300">
<div class="hidden md:block">
<a
class="size-[150px]"
href="/2024/04/05/algun-dia-fracasaras-y-esta-bien/"
>
<img
class="shadow"
src="/images/posts/fracasaras.png"
alt="miniatura"
/>
</a>
</div>
<div class="col-span-4 md:col-span-3">
<div class="mt-0 mb-2">
<a
class="p-2 font-semibold uppercase text-white bg-yellow-300"
href="/category/opinión"
>
opinión
</a>
<span class="p-2 font-semibold mx-3">2024-04-05</span>
<span class="hidden md:inline p-2 font-semibold bg-neutral-300">4 minutos de lectura</span>
</div>
<div class="md:hidden">
<span class="p-2 font-semibold">4 minutos de lectura</span>
</div>
<div class="prose">
<h3 class="">
<a href="/2024/04/05/algun-dia-fracasaras-y-esta-bien/">Algún día fracasarás y está bien</a>
</h3>
<p>
Puede sonar extraño sugerir algo como fracasar y además considerarlo algo positivo. Antes de que te vayas o consideres que esto es una locura, déjame explicarte por qué es importante fracasar y por qué está bien.</p>

<a rel="full-article" href="/2024/04/05/algun-dia-fracasaras-y-esta-bien/">Leer más ➤</a>
</div>
</div>
</div>

<div class="grid grid-cols-4 gap-2 pb-5 mb-5 border-b-2 border-neutral-300">
<div class="hidden md:block">
<a
class="size-[150px]"
href="/2023/12/11/altenwald-books/"
>
<img
class="shadow"
src="/images/posts/biblioteca.jpg"
alt="miniatura"
/>
</a>
</div>
<div class="col-span-4 md:col-span-3">
<div class="mt-0 mb-2">
<a
class="p-2 font-semibold uppercase text-white bg-orange-400"
href="/category/historias"
>
historias
</a>
<span class="p-2 font-semibold mx-3">2023-12-11</span>
<span class="hidden md:inline p-2 font-semibold bg-neutral-300">7 minutos de lectura</span>
</div>
<div class="md:hidden">
<span class="p-2 font-semibold">7 minutos de lectura</span>
</div>
<div class="prose">
<h3 class="">
<a href="/2023/12/11/altenwald-books/">Altenwald Books: Cómo avanza</a>
</h3>
<p>
Hace 5 años escribí una entrada donde contaba el gran cambio que tuvo la página de <a href="https://altenwald.com" title="">Altenwald Books</a>, cómo avanzó de ser una página estática con gran dependencia en integraciones de terceros, si quieres leerlo <a href="/2018/06/20/altenwaldbooks/" title="">por aquí anda</a>, hablemos ahora de cómo ha ido progresando.</p>

<a rel="full-article" href="/2023/12/11/altenwald-books/">Leer más ➤</a>
</div>
</div>
</div>

<div class="grid grid-cols-4 gap-2 pb-5 mb-5 border-b-2 border-neutral-300">
<div class="hidden md:block">
<a
class="size-[150px]"
href="/2023/01/15/genio-o-tornado-tactico/"
>
<img
class="shadow"
src="/images/posts/tacticaltornado.png"
alt="miniatura"
/>
</a>
</div>
<div class="col-span-4 md:col-span-3">
<div class="mt-0 mb-2">
<a
class="p-2 font-semibold uppercase text-white bg-yellow-300"
href="/category/opinión"
>
opinión
</a>
<span class="p-2 font-semibold mx-3">2023-01-15</span>
<span class="hidden md:inline p-2 font-semibold bg-neutral-300">3 minutos de lectura</span>
</div>
<div class="md:hidden">
<span class="p-2 font-semibold">3 minutos de lectura</span>
</div>
<div class="prose">
<h3 class="">
<a href="/2023/01/15/genio-o-tornado-tactico/">¿Genio de la Programación o Tornado Táctico?</a>
</h3>
<p>
Leyendo la <a href="https://mailchi.mp/bonillaware/devex">Bonilista</a> me encontré una distinción entre genios de la programación y la generación de <em>desperdicio</em> que me hizo pensar, ¿no debería ser un genio de la programación lo suficiente bueno para no dejar un desastre a su paso? ¿estamos confundiendo ser un genio con un tornado táctico?</p>

<a rel="full-article" href="/2023/01/15/genio-o-tornado-tactico/">Leer más ➤</a>
</div>
</div>
</div>

<div class="grid grid-cols-4 gap-2 pb-5 mb-5 border-b-2 border-neutral-300">
<div class="hidden md:block">
<a
class="size-[150px]"
href="/2022/11/04/miscelanea-o-procrastinacion-encubierta/"
>
<img
class="shadow"
src="/images/posts/hal_malcolm_in_the_middle.png"
alt="miniatura"
/>
</a>
</div>
<div class="col-span-4 md:col-span-3">
<div class="mt-0 mb-2">
<a
class="p-2 font-semibold uppercase text-white bg-yellow-300"
href="/category/opinión"
>
opinión
</a>
<span class="p-2 font-semibold mx-3">2022-11-04</span>
<span class="hidden md:inline p-2 font-semibold bg-neutral-300">5 minutos de lectura</span>
</div>
<div class="md:hidden">
<span class="p-2 font-semibold">5 minutos de lectura</span>
</div>
<div class="prose">
<h3 class="">
<a href="/2022/11/04/miscelanea-o-procrastinacion-encubierta/">¿Miscelánea o Procrastinación Encubierta?</a>
</h3>
<p>
Estaba pensando en escribir una nueva entrada en el blog, pero de repente me acordé que debía crear un fichero Markdown desde cero para eso y recordé que tenía esa característica en <a href="https://lambdapad.com" title="">Lambdapad</a> a medio terminar, cuando abrí el editor recordé que no había actualizado la versión de Elixir... ¿te ha pasado?</p>

<a rel="full-article" href="/2022/11/04/miscelanea-o-procrastinacion-encubierta/">Leer más ➤</a>
</div>
</div>
</div>

<div class="grid grid-cols-4 gap-2 pb-5 mb-5 border-b-2 border-neutral-300">
<div class="hidden md:block">
<a
class="size-[150px]"
href="/2022/09/19/debo-usar-liveview-ahora/"
>
<img
class="shadow"
src="/images/posts/phoenix-question.png"
alt="miniatura"
/>
</a>
</div>
<div class="col-span-4 md:col-span-3">
<div class="mt-0 mb-2">
<a
class="p-2 font-semibold uppercase text-white bg-lime-500"
href="/category/desarrollo"
>
desarrollo
</a>
<span class="p-2 font-semibold mx-3">2022-09-19</span>
<span class="hidden md:inline p-2 font-semibold bg-neutral-300">7 minutos de lectura</span>
</div>
<div class="md:hidden">
<span class="p-2 font-semibold">7 minutos de lectura</span>
</div>
<div class="prose">
<h3 class="">
<a href="/2022/09/19/debo-usar-liveview-ahora/">¿Debo usar LiveView ahora?</a>
</h3>
<p>
Cuando escribí el libro <a href="https://altenwald.com/book/phoenix-framework" title="">Phoenix Framework: Red Social en 7 días</a> me pregunté si valdría la pena incluir <a href="https://github.com/phoenixframework/phoenix_live_view" title="">LiveView</a>, en esos momentos se incluía por defecto con <a href="https://phoenixframework.org/" title="">Phoenix Framework</a> y me preguntaba si sería estable, no obstante, no consideré que fuera el momento, ¿lo es ahora?</p>

<a rel="full-article" href="/2022/09/19/debo-usar-liveview-ahora/">Leer más ➤</a>
</div>
</div>
</div>

<div class="w-full text-center">
<div class="join">

<a href="/blog/page/2" class="join-item btn p-2">&#8592; Antiguas entradas</a>


</div>
</div>
<div class="w-full text-center my-2">
<a href="https://dymmer.com"><ins id="pbx1" class="hidden block text-center w-[728px] h-[90px] bg-[url(/images/publi1-post.jpg)]"></ins></a>
<a href="https://altenwald.com"><ins id="pbx2" class="hidden block text-center w-[728px] h-[90px] bg-[url(/images/publi2-post.jpg)]"></ins></a>
<a href="https://youtube.com/altenwald"><ins id="pbx3" class="hidden block text-center w-[728px] h-[90px] bg-[url(/images/publi3-post.jpg)]"></ins></a>
<a href="https://altenwald.com/historia-de-los-lenguajes-de-programacion"><ins id="pbx4" class="hidden block text-center w-[728px] h-[90px] bg-[url(/images/publi4-post.jpg)]"></ins></a>
</div>

</div>
<div class="md:col-span-2 md:ml-3">
<div class="text-center">
<a href="https://dymmer.com"><ins id="pb1" class="hidden block text-center w-[300px] h-[250px] bg-[url(/images/publi1.jpg)]"></ins></a>
<a href="https://altenwald.com"><ins id="pb2" class="hidden block text-center w-[300px] h-[250px] bg-[url(/images/publi2.jpg)]"></ins></a>
<a href="https://youtube.com/altenwald"><ins id="pb3" class="hidden block text-center w-[300px] h-[250px] bg-[url(/images/publi3.jpg)]"></ins></a>
<a href="https://altenwald.com/historia-de-los-lenguajes-de-programacion"><ins id="pb4" class="hidden block text-center w-[300px] h-[250px] bg-[url(/images/publi4.jpg)]"></ins></a>
</div>

<div class="hidden md:block md:ml-2">
<div class="">
<h2 class="mt-3 mb-2 text-lg font-semibold">Menú</h2>

<div>
<ul>

<li class="my-2 border-b-1 border-neutral-200"><a href="/acerca-de/">Acerca de...</a></li>

<li class="my-2 border-b-1 border-neutral-200"><a href="/curriculum-vitae/">¿Quiénes somos?</a></li>

<li class="my-2 border-b-1 border-neutral-200"><a href="/atom.xml">RSS</a></li>

</ul>
</div>
</div>

<div class="">
<h2 class="mt-3 mb-2 text-lg font-semibold">Categorías</h2>

<div class="">
<ul>

<li class="pb-2 border-b-1 border-b-solid border-b-neutral-300 p-1">
<a href="/category/sistemas" class="p2">
sistemas
<span class="float-right bg-blue-500 text-white p-1">70</span>
</a>
</li>

<li class="pb-2 border-b-1 border-b-solid border-b-neutral-300 p-1">
<a href="/category/desarrollo" class="p2">
desarrollo
<span class="float-right bg-lime-500 text-white p-1">128</span>
</a>
</li>

<li class="pb-2 border-b-1 border-b-solid border-b-neutral-300 p-1">
<a href="/category/historias" class="p2">
historias
<span class="float-right bg-orange-400 text-white p-1">25</span>
</a>
</li>

<li class="pb-2 border-b-1 border-b-solid border-b-neutral-300 p-1">
<a href="/category/productividad" class="p2">
productividad
<span class="float-right bg-purple-500 text-white p-1">49</span>
</a>
</li>

<li class="pb-2 border-b-1 border-b-solid border-b-neutral-300 p-1">
<a href="/category/seguridad" class="p2">
seguridad
<span class="float-right bg-red-500 text-white p-1">10</span>
</a>
</li>

<li class="pb-2 border-b-1 border-b-solid border-b-neutral-300 p-1">
<a href="/category/libros" class="p2">
libros
<span class="float-right bg-red-800 text-white p-1">25</span>
</a>
</li>

<li class="pb-2 border-b-1 border-b-solid border-b-neutral-300 p-1">
<a href="/category/noticias" class="p2">
noticias
<span class="float-right bg-stone-400 text-white p-1">45</span>
</a>
</li>

<li class="pb-2 border-b-1 border-b-solid border-b-neutral-300 p-1">
<a href="/category/opinión" class="p2">
opinión
<span class="float-right bg-yellow-300 text-white p-1">35</span>
</a>
</li>

<li class="pb-2 border-b-1 border-b-solid border-b-neutral-300 p-1">
<a href="/category/humor" class="p2">
humor
<span class="float-right bg-yellow-500 text-white p-1">3</span>
</a>
</li>

</ul>
</div>
</div>

<div class="">
<h2 class="mt-3 mb-2 text-lg font-semibold">Etiquetas</h2>

<div class="">
<ul>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/programación">programación (111)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/desarrollo de software">desarrollo de software (79)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/erlang">erlang (75)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/opinión">opinión (37)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/noticia">noticia (36)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/libros">libros (28)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/servidores">servidores (26)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/desarrollo web">desarrollo web (24)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/base de datos">base de datos (24)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/administración de sistemas">administración de sistemas (23)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/php">php (22)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/desarrollo ágil">desarrollo ágil (22)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/empresa">empresa (21)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/otp">otp (20)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/ruby">ruby (19)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/ingeniería de negocio">ingeniería de negocio (18)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/elixir">elixir (18)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/desarrollo profesional">desarrollo profesional (16)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/redes">redes (16)</a>
</li>

<li class="inline-block p-2 bg-black text-white text-nowrap mr-1 mb-2">
<a href="/tags/seguridad">seguridad (14)</a>
</li>

</ul>
</div>
</div>
</div>

</div>
</div>
</div>
</main>
<footer class="footer footer-center bg-base-200 text-base-content p-10">
<aside>
<img src="/images/altenwald_logo_web.png" alt="altenwald logo" class="h-10">
<p class="font-bold">
<a href="https://www.iubenda.com/privacy-policy/64508499" class="iubenda-white iubenda-noiframe iubenda-embed iubenda-noiframe " title="Política de Privacidad ">Política de Privacidad</a><script type="text/javascript">(function (w,d) {var loader = function () {var s = d.createElement("script"), tag = d.getElementsByTagName("script")[0]; s.src="https://cdn.iubenda.com/iubenda.js"; tag.parentNode.insertBefore(s,tag);}; if(w.addEventListener){w.addEventListener("load", loader, false);}else if(w.attachEvent){w.attachEvent("onload", loader);}else{w.onload = loader;}})(window, document);</script>
- <a href="https://www.iubenda.com/privacy-policy/64508499/cookie-policy" class="iubenda-white iubenda-noiframe iubenda-embed iubenda-noiframe " title="Política de Cookies ">Política de Cookies</a><script type="text/javascript">(function (w,d) {var loader = function () {var s = d.createElement("script"), tag = d.getElementsByTagName("script")[0]; s.src="https://cdn.iubenda.com/iubenda.js"; tag.parentNode.insertBefore(s,tag);}; if(w.addEventListener){w.addEventListener("load", loader, false);}else if(w.attachEvent){w.attachEvent("onload", loader);}else{w.onload = loader;}})(window, document);</script>
- <a href="https://www.iubenda.com/condiciones-de-uso/64508499" class="iubenda-white iubenda-noiframe iubenda-embed iubenda-noiframe " title="Términos y Condiciones ">Términos y Condiciones</a><script type="text/javascript">(function (w,d) {var loader = function () {var s = d.createElement("script"), tag = d.getElementsByTagName("script")[0]; s.src="https://cdn.iubenda.com/iubenda.js"; tag.parentNode.insertBefore(s,tag);}; if(w.addEventListener){w.addEventListener("load", loader, false);}else if(w.attachEvent){w.attachEvent("onload", loader);}else{w.onload = loader;}})(window, document);</script>
</p>
<p>
Copyright &copy;2013-2025 <a href="https://altenwald.com">Altenwald</a>
<br/>
Powered by <a href="https://lambdapad.com" target="_blank">Lambdapad v0.11.1</a>
</p>
</aside>
</footer>

<script src="/js/app.js"></script>

</body>
</html>

Ads.Txt Alerts - A trading name of Red Volcano Limited

Waterloo Buildings, Second Floor Rear, 53 London Road, Southampton, Hampshire, United Kingdom, SO15 2AD

© Red Volcano 2020. All Rights Reserved.