<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <title>Articles — Sergio Xalambrí</title>
    <description>Articles by Sergio Xalambrí.</description>
    <link>https://r3.sergiodxa.com/articles</link>
    <item>
        <guid>731b571a-9fb8-472d-9560-3a85c092fd0d</guid>
        <title>React Router Loaders and Actions as Integration Points</title>
        <description>Test your business logic, not your loaders and actions. Treat them as integration points and avoid mocking nightmares.</description>
        <link>https://r3.sergiodxa.com/articles/react-router-loaders-and-actions-as-integration-points</link>
        <pubDate>Fri, 20 Feb 2026 06:40:28 GMT</pubDate>
      </item>
<item>
        <guid>34ef2cba-6787-417d-bbcb-f8f65fe6fe20</guid>
        <title>How Architecture Patterns Shape Development</title>
        <description>Understanding MVC, MVT, MVVM, and Component architectures through responsibility separation and data flow in modern web applications.</description>
        <link>https://r3.sergiodxa.com/articles/how-architecture-patterns-shape-development</link>
        <pubDate>Sat, 04 Oct 2025 05:26:12 GMT</pubDate>
      </item>
<item>
        <guid>9befdbcc-ee15-4c40-b974-92c75455b9c4</guid>
        <title>OAuth2 Access Token Claims Explained</title>
        <description>JWTs used as OAuth2 access tokens contain claims that define identity, security, and permissions. Learn how to use and validate them.</description>
        <link>https://r3.sergiodxa.com/articles/oauth2-access-token-claims-explained</link>
        <pubDate>Wed, 19 Mar 2025 23:30:58 GMT</pubDate>
      </item>
<item>
        <guid>cd5f4ca4-c7d5-4ea5-beee-aacecaa1a293</guid>
        <title>OAuth2 Scopes Explained</title>
        <description>OAuth2 scopes define what an app can do with your data. Learn how they work, best practices, and how to enforce them in your API.</description>
        <link>https://r3.sergiodxa.com/articles/oauth2-scopes-explained</link>
        <pubDate>Thu, 13 Mar 2025 21:47:20 GMT</pubDate>
      </item>
<item>
        <guid>db36f48a-2eaa-479f-9402-aa67c583abd6</guid>
        <title>OAuth2 Tokens Explained</title>
        <description>OAuth2 uses Access, Refresh, and ID Tokens, each with a distinct role. Learn how they work and how to store them securely.</description>
        <link>https://r3.sergiodxa.com/articles/oauth2-tokens-explained</link>
        <pubDate>Mon, 10 Mar 2025 15:13:42 GMT</pubDate>
      </item>
<item>
        <guid>78fbbb7b-265e-4cfa-8138-05bc2311a9aa</guid>
        <title>OAuth2 Audience Explained</title>
        <description>The OAuth2 audience (aud) claim ensures tokens are used only by the right APIs. Learn how it works and why it matters.</description>
        <link>https://r3.sergiodxa.com/articles/oauth2-audience-explained</link>
        <pubDate>Mon, 10 Mar 2025 04:09:54 GMT</pubDate>
      </item>
<item>
        <guid>bb4bd500-020d-44d8-93a9-6a58f8dab8d0</guid>
        <title>JWT vs. Opaque Tokens</title>
        <description>JWTs offer fast, stateless authentication, while opaque tokens provide better revocation control. Which one should you use?</description>
        <link>https://r3.sergiodxa.com/articles/jwt-vs-opaque-tokens</link>
        <pubDate>Sun, 09 Mar 2025 23:23:40 GMT</pubDate>
      </item>
<item>
        <guid>a4d23a27-67f1-4239-ab58-230a9b9f9bf2</guid>
        <title>OAuth2 for Backend-for-Frontend</title>
        <description>Securely handle OAuth2 in a Backend-for-Frontend (BFF) with React Router, keeping tokens off the frontend for better security</description>
        <link>https://r3.sergiodxa.com/articles/oauth2-for-backend-for-frontend</link>
        <pubDate>Tue, 04 Mar 2025 23:51:25 GMT</pubDate>
      </item>
<item>
        <guid>096ea2b9-47ba-4989-8ab0-96f6989f29cc</guid>
        <title>Throwing vs. Returning Redirects in React Router</title>
        <description>Throwing vs. returning redirects in React Router: understand when to use each, how they work, and how to handle them properly</description>
        <link>https://r3.sergiodxa.com/articles/throwing-vs-returning-redirects-in-react-router</link>
        <pubDate>Tue, 25 Feb 2025 05:10:12 GMT</pubDate>
      </item>
<item>
        <guid>3c2adc2d-2d32-40f9-ae79-ecb5e6b28994</guid>
        <title>Making Web Component good enough</title>
        <description>https://r3.sergiodxa.com/articles/making-web-component-good-enough</description>
        <link>https://r3.sergiodxa.com/articles/making-web-component-good-enough</link>
        <pubDate>Mon, 30 Sep 2024 23:44:50 GMT</pubDate>
      </item>
<item>
        <guid>5b209b9a-31bb-4980-9584-cfd6fd26e8cd</guid>
        <title>On Frontend vs Backend</title>
        <description>https://r3.sergiodxa.com/articles/on-frontend-vs-backend</description>
        <link>https://r3.sergiodxa.com/articles/on-frontend-vs-backend</link>
        <pubDate>Wed, 19 Jun 2024 09:06:58 GMT</pubDate>
      </item>
<item>
        <guid>ce0b8141-0ea8-46b3-8a1d-9cc5ddc7aba9</guid>
        <title>When to use Route Modal in React Router</title>
        <description>https://r3.sergiodxa.com/articles/when-to-use-route-modal-in-react-router</description>
        <link>https://r3.sergiodxa.com/articles/when-to-use-route-modal-in-react-router</link>
        <pubDate>Sun, 16 Jun 2024 06:30:40 GMT</pubDate>
      </item>
<item>
        <guid>55b00baf-2c2f-4b39-bb7f-101f11640d26</guid>
        <title>Throwing vs. Returning responses in Remix</title>
        <description>When you code a loader/action (we'll call them data functions from now) in Remix, you can either retur…</description>
        <link>https://r3.sergiodxa.com/articles/throwing-vs-returning-responses-in-remix</link>
        <pubDate>Fri, 14 Oct 2022 16:09:14 GMT</pubDate>
      </item>
<item>
        <guid>5bea3832-0e35-471b-9da0-3c9898bfeead</guid>
        <title>Optional route segments with Remix</title>
        <description>Let's say we have a URL structure like this:


/:category/products
/products


Both routes need to work…</description>
        <link>https://r3.sergiodxa.com/articles/optional-route-segments-with-remix</link>
        <pubDate>Mon, 26 Sep 2022 16:56:48 GMT</pubDate>
      </item>
<item>
        <guid>c35b5706-6d6e-4c66-b80e-a007213d04e9</guid>
        <title>Dependency injection in Remix loaders and actions</title>
        <description>Dependency Injection is a way our function or class can receieve from the caller the instancie…</description>
        <link>https://r3.sergiodxa.com/articles/dependency-injection-in-remix-loaders-and-actions</link>
        <pubDate>Tue, 19 Jul 2022 22:26:38 GMT</pubDate>
      </item>
<item>
        <guid>d69b2fc1-0303-46ed-af18-3014278095b3</guid>
        <title>Using Zod to safely read env variables</title>
        <description>Zod is a great library to do schema based validations and get fully typed objects as a result. Environmen…</description>
        <link>https://r3.sergiodxa.com/articles/using-zod-to-safely-read-env-variables</link>
        <pubDate>Thu, 23 Jun 2022 21:30:31 GMT</pubDate>
      </item>
<item>
        <guid>f80b12cd-ab27-4917-aa96-12a5d34335b9</guid>
        <title>Working with Refresh Tokens in Remix</title>
        <description>When using an external API, you may need to keep an access token to send a request as a user. And a refresh…</description>
        <link>https://r3.sergiodxa.com/articles/working-with-refresh-tokens-in-remix</link>
        <pubDate>Fri, 03 Jun 2022 16:03:56 GMT</pubDate>
      </item>
<item>
        <guid>48e1d393-b62f-4ce6-bbad-0842297e43be</guid>
        <title>E2E test Remix with Vitest and Puppeteer</title>
        <description>Vitest is a testing framework, similar to Jest, but way faster, built on top of Vite, which uses esbuil…</description>
        <link>https://r3.sergiodxa.com/articles/e2e-test-remix-with-vitest-and-puppeteer</link>
        <pubDate>Mon, 16 May 2022 22:42:56 GMT</pubDate>
      </item>
<item>
        <guid>df3bc414-e8aa-4377-889b-2b7b390773c8</guid>
        <title>Multiple forms per route in Remix</title>
        <description>Suppose you have a complex enough Remix application. In that case, you may have reached the point where a sing…</description>
        <link>https://r3.sergiodxa.com/articles/multiple-forms-per-route-in-remix</link>
        <pubDate>Thu, 14 Apr 2022 08:35:32 GMT</pubDate>
      </item>
<item>
        <guid>02635127-2b55-482b-85af-7aeb3fda9b72</guid>
        <title>Building a Command Palette with Remix and Tailwind UI</title>
        <description>Recently, the Tailwind Labs team published a new Combobox component on Headless UI and use…</description>
        <link>https://r3.sergiodxa.com/articles/building-a-command-palette-with-remix-and-tailwind-ui</link>
        <pubDate>Thu, 24 Feb 2022 23:07:42 GMT</pubDate>
      </item>
<item>
        <guid>b78bfa03-13fc-4523-ae19-3a52ec329788</guid>
        <title>HTTP vs. Server-side Cache in Remix</title>
        <description>When you build a web application, you may reach a point where some performance problems could be solved by a…</description>
        <link>https://r3.sergiodxa.com/articles/http-vs-server-side-cache-in-remix</link>
        <pubDate>Wed, 22 Dec 2021 19:22:24 GMT</pubDate>
      </item>
<item>
        <guid>a4ed3a20-405e-44c4-a5a1-9d07e45b930b</guid>
        <title>Clase rápida de programación asíncrona</title>
        <description>El código síncrono se ejecuta una linea a la vez, cierto? Entonces si haces esto:
let result = fn(…</description>
        <link>https://r3.sergiodxa.com/articles/clase-rapida-de-programacion-asincrona</link>
        <pubDate>Mon, 20 Dec 2021 02:50:17 GMT</pubDate>
      </item>
<item>
        <guid>8b0ef81d-7895-4056-a270-285c7682abfa</guid>
        <title>On-Demand Hydration in Remix</title>
        <description>Remix makes it really easy to don't send JS to the browser. It even has a guide on how to let routes statically def…</description>
        <link>https://r3.sergiodxa.com/articles/on-demand-hydration-in-remix</link>
        <pubDate>Fri, 10 Dec 2021 23:14:53 GMT</pubDate>
      </item>
<item>
        <guid>5764d421-b49d-4bb2-ac72-c2d048f03b8d</guid>
        <title>Loader vs Route Cache Headers in Remix</title>
        <description>Document Request

So, let's say you have a route at /my-super-route, and there you have a loader fun…</description>
        <link>https://r3.sergiodxa.com/articles/loader-vs-route-cache-headers-in-remix</link>
        <pubDate>Thu, 02 Dec 2021 17:20:54 GMT</pubDate>
      </item>
<item>
        <guid>d42ec256-1014-4cbc-8905-8488c9e388d6</guid>
        <title>The useMatches hook in Remix</title>
        <description>If you use Remix, there's a hook that you can use called useMatches, this hook is a way to access some internal d…</description>
        <link>https://r3.sergiodxa.com/articles/the-usematches-hook-in-remix</link>
        <pubDate>Tue, 30 Nov 2021 23:36:29 GMT</pubDate>
      </item>
<item>
        <guid>98afb00f-0c43-4e3a-9c4f-612dc5136b5f</guid>
        <title>Validating Remix forms with Constraints API</title>
        <description>The Constraints API is a browser API that has been available since the times of IE10, yep, that old.…</description>
        <link>https://r3.sergiodxa.com/articles/validating-remix-forms-with-constraints-api</link>
        <pubDate>Fri, 26 Nov 2021 06:32:51 GMT</pubDate>
      </item>
<item>
        <guid>4058e8c8-9ea0-4967-bd4c-10bf41e7d51c</guid>
        <title>Result Objects in TS</title>
        <description>Build resilient TypeScript apps that handle failures gracefully using the Result pattern to make errors explicit in your types.</description>
        <link>https://r3.sergiodxa.com/articles/result-objects-in-ts</link>
        <pubDate>Wed, 17 Nov 2021 20:32:42 GMT</pubDate>
      </item>
<item>
        <guid>bf276e06-d26e-44ef-9224-c73465a70512</guid>
        <title>Dark Mode and Dark Context</title>
        <description>Most of the time, there is two way to implement dark mode support in an application.


Using media queries with `pre…</description>
        <link>https://r3.sergiodxa.com/articles/dark-mode-and-dark-context</link>
        <pubDate>Tue, 16 Nov 2021 05:01:23 GMT</pubDate>
      </item>
<item>
        <guid>9bf18a1f-b297-4a9d-b896-5fe8aaf590f2</guid>
        <title>Automatic Revalidation in Remix</title>
        <description>If you have used SWR or React Query, you may be used to a feature both libraries have called automatic revalidat…</description>
        <link>https://r3.sergiodxa.com/articles/automatic-revalidation-in-remix</link>
        <pubDate>Tue, 31 Aug 2021 17:37:46 GMT</pubDate>
      </item>
<item>
        <guid>487451eb-062b-42ed-b732-f3fe4220002d</guid>
        <title>Creating a PDF with React in the Browser</title>
        <description>If you need to generate a PDF for your users, maybe some reports or a document you want users to be abl…</description>
        <link>https://r3.sergiodxa.com/articles/creating-a-pdf-with-react-in-the-browser</link>
        <pubDate>Wed, 14 Jul 2021 17:58:01 GMT</pubDate>
      </item>
<item>
        <guid>f332518b-c019-4ba8-a56c-ba2e2173647f</guid>
        <title>Sending data from layout to leaf routes in Remix</title>
        <description>Hey! This is outdated, Remix Outlet component now supports sending data to leaf routes using …</description>
        <link>https://r3.sergiodxa.com/articles/sending-data-from-layout-to-leaf-routes-in-remix</link>
        <pubDate>Tue, 29 Jun 2021 06:19:57 GMT</pubDate>
      </item>
<item>
        <guid>4ff0a041-9d21-4774-8d3e-0c2c6e8d72dc</guid>
        <title>Using Service Workers with Remix</title>
        <description>A Remix app is by default fast, the framework optimize a lot how the required resources for a page are loaded s…</description>
        <link>https://r3.sergiodxa.com/articles/using-service-workers-with-remix</link>
        <pubDate>Tue, 29 Jun 2021 06:08:42 GMT</pubDate>
      </item>
<item>
        <guid>4c2882eb-f88b-44a2-b401-965ca9940471</guid>
        <title>Localizing Remix apps with i18next</title>
        <description>There's a lot if libraries to implement i18n in JS and React, and i18next is one of the most popular out ther…</description>
        <link>https://r3.sergiodxa.com/articles/localizing-remix-apps-with-i18next</link>
        <pubDate>Tue, 29 Jun 2021 05:53:24 GMT</pubDate>
      </item>
<item>
        <guid>5a8bd6f2-907e-4c70-b271-7f5340dd7317</guid>
        <title>Adding CSRF protection to Remix</title>
        <description>While you may not need CSRF if your cookies have the SameSite: Lax configured, it may still be a good idea to …</description>
        <link>https://r3.sergiodxa.com/articles/adding-csrf-protection-to-remix</link>
        <pubDate>Mon, 28 Jun 2021 20:49:49 GMT</pubDate>
      </item>
<item>
        <guid>fe7d3efa-8423-4574-a344-0349aa196677</guid>
        <title>Server-Side authentication with Auth0 in Remix</title>
        <description>While this works, I recommend you to don't do all of this yourself, instead use Remix Auth with…</description>
        <link>https://r3.sergiodxa.com/articles/server-side-authentication-with-auth0-in-remix</link>
        <pubDate>Thu, 17 Jun 2021 23:12:21 GMT</pubDate>
      </item>
<item>
        <guid>b4804544-0c72-4034-bc45-7c59ab1e781f</guid>
        <title>Using TailwindCSS with Remix</title>
        <description>Let's see how to do the setup of TailwindCSS for a project using Remix.
Install Tailwind

The first thing we ne…</description>
        <link>https://r3.sergiodxa.com/articles/using-tailwindcss-with-remix</link>
        <pubDate>Thu, 17 Jun 2021 22:13:00 GMT</pubDate>
      </item>
<item>
        <guid>75122554-b3a6-4071-ac57-dedfa89f92e9</guid>
        <title>Jest Matchers for Remix responses</title>
        <description>When testing the logic of an action in Remix, or any function returning a Response, even a Fetch API Response,…</description>
        <link>https://r3.sergiodxa.com/articles/jest-matchers-for-remix-responses</link>
        <pubDate>Tue, 01 Jun 2021 22:44:26 GMT</pubDate>
      </item>
<item>
        <guid>ea59b67b-4a21-49ea-bfe8-699835744969</guid>
        <title>Using Form Objects inside Remix actions</title>
        <description>In Remix, each route can export a single action function used to handle any non GET request received b…</description>
        <link>https://r3.sergiodxa.com/articles/using-form-objects-inside-remix-actions</link>
        <pubDate>Tue, 01 Jun 2021 05:51:41 GMT</pubDate>
      </item>
<item>
        <guid>76db0fc4-eb4a-4656-8b9f-00bfafd5f29b</guid>
        <title>Route protection in Remix with Policies</title>
        <description>A Policy is a design pattern used to define authorization rules that can be re-used easily across an app…</description>
        <link>https://r3.sergiodxa.com/articles/route-protection-in-remix-with-policies</link>
        <pubDate>Thu, 27 May 2021 16:12:11 GMT</pubDate>
      </item>
<item>
        <guid>c3a0ced6-c795-48df-a456-2256b171d1ab</guid>
        <title>Que es un bundler de JS</title>
        <description>Para entender esto es un poco útil que aprendan como funcionaban las dependencias antes, hace mucho tiempo atrás (unos 6…</description>
        <link>https://r3.sergiodxa.com/articles/que-es-un-bundler-de-js</link>
        <pubDate>Fri, 07 May 2021 03:53:50 GMT</pubDate>
      </item>
<item>
        <guid>6e7db86f-f174-440e-9f09-636871a52659</guid>
        <title>Remix vs Next.js Comparison</title>
        <description>I have been using Next for years, since the v1 was released, I even become an early contributor of the framework and…</description>
        <link>https://r3.sergiodxa.com/articles/remix-vs-next-js-comparison</link>
        <pubDate>Mon, 26 Apr 2021 05:38:21 GMT</pubDate>
      </item>
<item>
        <guid>d4529a72-dcd2-47c8-a262-7cfad7ac2873</guid>
        <title>How to rename a column in a Rails migration</title>
        <description>If, for some reason, you need to rename a column in a table you need to create a new migration and r…</description>
        <link>https://r3.sergiodxa.com/articles/how-to-rename-a-column-in-a-rails-migration</link>
        <pubDate>Wed, 03 Mar 2021 16:54:48 GMT</pubDate>
      </item>
<item>
        <guid>ad1c837b-5cca-491f-a105-8b1cb29df0e4</guid>
        <title>Usar variables de entorno en Next.js</title>
        <description>Las variables de entorno nos permiten configurar como un software se ejecuta dependiendo de la computadora …</description>
        <link>https://r3.sergiodxa.com/articles/usar-variables-de-entorno-en-next-js</link>
        <pubDate>Tue, 23 Feb 2021 05:24:25 GMT</pubDate>
      </item>
<item>
        <guid>e6f84ed9-0195-4b76-b0ef-4a9c324cb660</guid>
        <title>About</title>
        <description>A photo of me

Hi there! I'm a web developer currently based on Lima, Perú.

I'm currently working in Silverback Ventures as the web devel…</description>
        <link>https://r3.sergiodxa.com/articles/about</link>
        <pubDate>Thu, 14 Jan 2021 06:04:53 GMT</pubDate>
      </item>
<item>
        <guid>0c4d6b98-9470-4b58-beb8-a5a6edad928f</guid>
        <title>¿Qué son Server Components de React y cómo se relacionan con SSR/SSG/ISR?</title>
        <description>Ayer el team de React…</description>
        <link>https://r3.sergiodxa.com/articles/que-son-server-components-de-react-y-como-se-relacionan-con-ssr-ssg-isr</link>
        <pubDate>Wed, 23 Dec 2020 02:42:09 GMT</pubDate>
      </item>
<item>
        <guid>54b1354a-3615-4dc7-bc12-4e7572201413</guid>
        <title>🔥 Pro Tip: Name your useEffect functions</title>
        <description>When creating an effect in React, avoid arrow function and instead use a function with a name. This wil…</description>
        <link>https://r3.sergiodxa.com/articles/pro-tip-name-your-useeffect-functions</link>
        <pubDate>Thu, 17 Dec 2020 20:01:10 GMT</pubDate>
      </item>
<item>
        <guid>3efca413-7796-4d2e-ab22-c5408383acd9</guid>
        <title>Using MDX with Remote Content</title>
        <description>One of the most common ways to use MDX in a website is to have the .mdx files together with the rest of the webs…</description>
        <link>https://r3.sergiodxa.com/articles/using-mdx-with-remote-content</link>
        <pubDate>Mon, 23 Nov 2020 22:25:06 GMT</pubDate>
      </item>
<item>
        <guid>242dfbae-50c1-4114-9f4f-d4a9025034a3</guid>
        <title>Todo lo que sé de SWR</title>
        <description>Conceptos Básicos
Introducción

En este artículo muy largo vamos a ver como usar esta librería para trabajar con d…</description>
        <link>https://r3.sergiodxa.com/articles/todo-lo-que-se-de-swr</link>
        <pubDate>Sun, 13 Sep 2020 10:26:26 GMT</pubDate>
      </item>
<item>
        <guid>9ca8953b-d514-4d86-ae6c-e9b4d9bf37d9</guid>
        <title>The States of the UI</title>
        <description>Let's say you are in charge of building the UI of Twitter, how many states do you think that UI …</description>
        <link>https://r3.sergiodxa.com/articles/the-states-of-the-ui</link>
        <pubDate>Tue, 25 Aug 2020 00:32:55 GMT</pubDate>
      </item>
<item>
        <guid>8a429769-28b6-43d7-9ac4-8f67c023187e</guid>
        <title>What I Use</title>
        <description>This is my current development setup.
Tech Stack


TypeSc…</description>
        <link>https://r3.sergiodxa.com/articles/uses</link>
        <pubDate>Sun, 23 Aug 2020 23:53:18 GMT</pubDate>
      </item>
<item>
        <guid>00586efd-f1de-4fa9-b4a9-1893fd109f5e</guid>
        <title>Como me inicié en el desarrollo web</title>
        <description>Corría el año 2002, tenía unos 10 años, un día me pregu…</description>
        <link>https://r3.sergiodxa.com/articles/historia</link>
        <pubDate>Tue, 18 Aug 2020 13:04:37 GMT</pubDate>
      </item>
<item>
        <guid>6a2ba101-4343-4ee0-bd14-628de716e334</guid>
        <title>Why build a non-RESTful API</title>
        <description>One of the most common architectural styles to build an HTTP API is…</description>
        <link>https://r3.sergiodxa.com/articles/why-build-a-non-restful-api</link>
        <pubDate>Sat, 15 Aug 2020 22:49:30 GMT</pubDate>
      </item>
<item>
        <guid>d05bbe1f-081d-447a-85b3-27829908c6c1</guid>
        <title>How I work with static assets in React apps</title>
        <description>Most people when working with tools like webpack te…</description>
        <link>https://r3.sergiodxa.com/articles/how-i-work-with-static-assets-in-react-apps</link>
        <pubDate>Thu, 13 Aug 2020 01:43:21 GMT</pubDate>
      </item>
<item>
        <guid>1eff8d96-87fb-446c-8993-77f8ed806876</guid>
        <title>How shallow: true works in Rails</title>
        <description>Learn how to create nested shallow resource routes in Rails</description>
        <link>https://r3.sergiodxa.com/articles/how-shallow-true-works-in-rails</link>
        <pubDate>Tue, 11 Aug 2020 22:55:18 GMT</pubDate>
      </item>
<item>
        <guid>5a9c4218-4225-454f-bc60-2d0b5655fbbb</guid>
        <title>Build an Optimistic UI in React using SWR with useMutation</title>
        <description>Use the useMutation hook together with SWR to implement optimistic updates in your React components</description>
        <link>https://r3.sergiodxa.com/articles/swr/use-mutation</link>
        <pubDate>Thu, 23 Jul 2020 08:17:26 GMT</pubDate>
      </item>
<item>
        <guid>17868ea4-917f-4206-aed5-faa65da64f02</guid>
        <title>Como organizo mis aplicaciones de React</title>
        <description>Hay muchas formas de organizar aplicaciones de React, con los años esta es la que más me ha convencido</description>
        <link>https://r3.sergiodxa.com/articles/react/estructura-archivos</link>
        <pubDate>Thu, 16 Jul 2020 05:56:01 GMT</pubDate>
      </item>
<item>
        <guid>aff77a68-c3a3-432c-998f-be346ad01a79</guid>
        <title>How I Organize React Applications</title>
        <description>There are many ways to organize a React application, with the years this the the one I liked the most</description>
        <link>https://r3.sergiodxa.com/articles/react/file-structure</link>
        <pubDate>Thu, 16 Jul 2020 04:37:52 GMT</pubDate>
      </item>
<item>
        <guid>12e6fd5d-8c02-43a7-af43-ded09282b93c</guid>
        <title>Usa React.Suspense para controlar la carga de imagenes</title>
        <description>Aprende como usar React.Suspense para controlar el estado de carga de imágenes.</description>
        <link>https://r3.sergiodxa.com/articles/react/cargando-imagenes-con-suspense</link>
        <pubDate>Wed, 15 Jul 2020 23:07:00 GMT</pubDate>
      </item>
<item>
        <guid>ca95794a-4be1-4ada-98cb-3f2f42597db6</guid>
        <title>Data-Aware Components</title>
        <description>Normalmente, al crear un app de React, un componente necesita un dato del API, ej. el usuario log…</description>
        <link>https://r3.sergiodxa.com/articles/data-aware-components</link>
        <pubDate>Wed, 24 Jun 2020 08:02:46 GMT</pubDate>
      </item>
<item>
        <guid>848c4f5b-53b3-4bf6-b1d1-b5cf6b3ea688</guid>
        <title>Collected Notes TS Client</title>
        <description>A TypeScript client for the Collected Notes API.



TypeScript Support
Types for the API returned value
Types fo…</description>
        <link>https://r3.sergiodxa.com/articles/collected-notes-ts-client</link>
        <pubDate>Sat, 20 Jun 2020 03:24:14 GMT</pubDate>
      </item>
<item>
        <guid>96d9640f-38cf-4dfd-8eba-b0b8513e3674</guid>
        <title>Using Collected Notes as CMS</title>
        <description>Now that Collected Notes has an API to get the notes you wrote here it's possible to use it as a CMS (Content Manag…</description>
        <link>https://r3.sergiodxa.com/articles/using-collected-notes-as-cms</link>
        <pubDate>Sat, 06 Jun 2020 10:21:22 GMT</pubDate>
      </item>
<item>
        <guid>a540454c-aa17-4188-bedb-80a31fd52365</guid>
        <title>Using Immer with SWR to mutate data</title>
        <description>Use Immer to make optimistic UI updates with SWR easier to follow</description>
        <link>https://r3.sergiodxa.com/articles/swr/mutate-immer</link>
        <pubDate>Sat, 09 May 2020 02:16:03 GMT</pubDate>
      </item>
<item>
        <guid>342f365e-8b6d-4494-afef-9aba8e99899c</guid>
        <title>Render as you Fetch Pattern in React with SWR</title>
        <description>Learn how to use the Render as you Fetch pattern with React and SWR.</description>
        <link>https://r3.sergiodxa.com/articles/render-as-you-fetch</link>
        <pubDate>Thu, 23 Jan 2020 22:03:45 GMT</pubDate>
      </item>
<item>
        <guid>6b96d528-4f03-4090-810e-bba18ea80956</guid>
        <title>Prefetching Data in a Next.js Application with SWR</title>
        <description>Optimizing the performance of a Next.js using SWR and data prefetching.</description>
        <link>https://r3.sergiodxa.com/articles/next-swr-prefetch</link>
        <pubDate>Wed, 22 Jan 2020 17:40:27 GMT</pubDate>
      </item>
<item>
        <guid>7cf66bac-a299-4ab6-bf73-576f6f07f654</guid>
        <title>What Type of States Could You Find in a Client-Side Application?</title>
        <description>Client-Side Applications could have different types of states based on the requirements, let's dig through them and learn their differences.</description>
        <link>https://r3.sergiodxa.com/articles/type-states-client-side-app</link>
        <pubDate>Tue, 21 Jan 2020 05:00:00 GMT</pubDate>
      </item>
<item>
        <guid>dcf10c22-6f60-4dc7-8059-f5fe66a37b3b</guid>
        <title>Using Tailwind with Next.js</title>
        <description>Learn how to use Tailwind in a Next.js application.</description>
        <link>https://r3.sergiodxa.com/articles/next-tailwind</link>
        <pubDate>Thu, 26 Dec 2019 20:19:09 GMT</pubDate>
      </item>
<item>
        <guid>30d1d0bd-68c3-4835-ad4f-6c3872e46ad9</guid>
        <title>Using Suspense for Data Fetching Today with SWR</title>
        <description>Learn how to use SWR for data fetching with Suspense to handle loading states.</description>
        <link>https://r3.sergiodxa.com/articles/swr/suspense</link>
        <pubDate>Thu, 21 Nov 2019 14:30:36 GMT</pubDate>
      </item>
<item>
        <guid>18861188-65ce-44be-b33b-44aa0c6ec99b</guid>
        <title>Using Paginated Data with SWR</title>
        <description>Learn how to use SWR to build an infinite scrolled paginated data.</description>
        <link>https://r3.sergiodxa.com/articles/swr/pagination</link>
        <pubDate>Wed, 20 Nov 2019 14:30:36 GMT</pubDate>
      </item>
<item>
        <guid>f9b1aeec-5644-4378-be6c-7a4f1bb30f4b</guid>
        <title>Introduction to SWR</title>
        <description>Learn how to start using SWR, the ZEIT data fetching library for React applications.</description>
        <link>https://r3.sergiodxa.com/articles/swr/intro</link>
        <pubDate>Wed, 20 Nov 2019 06:13:30 GMT</pubDate>
      </item>
<item>
        <guid>3b121549-d347-4b23-aec5-45e970506198</guid>
        <title>Feature Flags in React with Flagged</title>
        <description>Use Flagged to detect Feature Flags and render or not a React component</description>
        <link>https://r3.sergiodxa.com/articles/feature-flags-react</link>
        <pubDate>Sat, 26 Oct 2019 17:45:34 GMT</pubDate>
      </item>
<item>
        <guid>746883b5-3b33-4ab9-8d45-61fc5a07b2ee</guid>
        <title>Next.js File Structure</title>
        <description>Overview of the file structure I like to use in Next.js projects</description>
        <link>https://r3.sergiodxa.com/articles/next-file-structure</link>
        <pubDate>Tue, 27 Aug 2019 22:15:52 GMT</pubDate>
      </item>
<item>
        <guid>804d1f10-8a26-4653-ae1b-9ee206371e45</guid>
        <title>Testing in Next.js: Dynamic Imports</title>
        <description>Learn how to test components using dynamic imports in a Next.js application.</description>
        <link>https://r3.sergiodxa.com/articles/testing-in-next-dynamic-imports</link>
        <pubDate>Thu, 22 Aug 2019 03:14:16 GMT</pubDate>
      </item>
<item>
        <guid>04f5eb51-78c2-4e02-ab61-1f990a157cb4</guid>
        <title>Redirects in Next.js, the Best Way</title>
        <description>Learn how to create redirects when using Next.js in the most efficient way.</description>
        <link>https://r3.sergiodxa.com/articles/redirects-in-next-the-good-way</link>
        <pubDate>Tue, 20 Aug 2019 18:20:48 GMT</pubDate>
      </item>
<item>
        <guid>4c137175-bd4d-4060-9574-616028fb7146</guid>
        <title>Working with Forms in React without libraries</title>
        <description>Learn how to work with forms and form elements in React without using another library.</description>
        <link>https://r3.sergiodxa.com/articles/react-working-with-forms</link>
        <pubDate>Wed, 19 Jun 2019 20:21:42 GMT</pubDate>
      </item>
<item>
        <guid>c76fd9cc-8277-4f1c-a322-f490fe26c845</guid>
        <title>Working with conditions and lists in React</title>
        <description>Learn how to conditionally render elements and how to properly work with lists in React.</description>
        <link>https://r3.sergiodxa.com/articles/react-conditions-lists</link>
        <pubDate>Tue, 18 Jun 2019 17:36:02 GMT</pubDate>
      </item>
<item>
        <guid>5ac7a1e5-acce-468a-87d2-dfb4680124ff</guid>
        <title>Introduction to React with the State and Effects hooks</title>
        <description>Learn how to start a React project, create your first component and use the State and Effects hooks to implement basic behaviors.</description>
        <link>https://r3.sergiodxa.com/articles/react-state-effects</link>
        <pubDate>Sat, 15 Jun 2019 20:54:54 GMT</pubDate>
      </item>
<item>
        <guid>c909ee31-a3e7-4599-9eb3-9ab2e25f9005</guid>
        <title>Introducing Contentz</title>
        <description>Contentz, a Pure Static Site Generator which let you focus on the content and gives you a highly optimized website.</description>
        <link>https://r3.sergiodxa.com/articles/introducing-contentz</link>
        <pubDate>Tue, 23 Apr 2019 02:13:19 GMT</pubDate>
      </item>
<item>
        <guid>b494a10b-4dc1-472c-a6ae-7b5ed165f908</guid>
        <title>Career Titles and Levels in Tech</title>
        <description>List of possible career paths, titles and level you could find while working as Software Engineer.</description>
        <link>https://r3.sergiodxa.com/articles/career-titles-levels</link>
        <pubDate>Tue, 09 Apr 2019 21:25:19 GMT</pubDate>
      </item>
<item>
        <guid>6d966415-8bbd-4206-a6d2-0555b26fafb3</guid>
        <title>Deploy de Contentz a Netlify</title>
        <description>Aprende como llevar tu sitio de Contentz a producción usando Netlify.</description>
        <link>https://r3.sergiodxa.com/articles/contentz-netlify</link>
        <pubDate>Thu, 21 Mar 2019 19:56:31 GMT</pubDate>
      </item>
<item>
        <guid>c3f58e8d-6824-465c-bb86-43360fcc3b82</guid>
        <title>Contentz es Omakase</title>
        <description>Contentz toma decisiones por uno, a cambio nos ofrece un sitio optimizado para un mejor rendimiento y lectura.</description>
        <link>https://r3.sergiodxa.com/articles/contentz-es-omakase</link>
        <pubDate>Thu, 21 Mar 2019 18:33:05 GMT</pubDate>
      </item>
<item>
        <guid>217b2515-10c6-41de-a13f-3109abe754c6</guid>
        <title>Conceptos básicos de JS: Array#forEach</title>
        <description>Aprende a usar Array#forEeach, como se implementa a mano y casos de uso prácticos de este método de los array en JavaScript.</description>
        <link>https://r3.sergiodxa.com/articles/js-basics/array-prototype-foreach</link>
        <pubDate>Tue, 12 Mar 2019 17:05:27 GMT</pubDate>
      </item>
<item>
        <guid>cd886e92-81b0-4e8a-a416-6ceabefa6a26</guid>
        <title>Cómo crear y publicar un módulo para npm</title>
        <description>Aprende como crear un módulo y publicarlo a npm configurando Prettier, ESLint, pruebas, tipos y más.</description>
        <link>https://r3.sergiodxa.com/articles/crear-modulo-npm</link>
        <pubDate>Mon, 11 Mar 2019 17:12:50 GMT</pubDate>
      </item>
<item>
        <guid>0f329b04-4483-4a99-a310-fcb67d4b4b60</guid>
        <title>Aplicaciones web con Zero Server</title>
        <description>Introducción a Zero Server, el framework de desarrollo web con cero configuración.</description>
        <link>https://r3.sergiodxa.com/articles/aplicaciones-web-con-zero-server</link>
        <pubDate>Wed, 06 Mar 2019 04:56:18 GMT</pubDate>
      </item>
<item>
        <guid>5923aee3-fc4f-41f6-8c9c-20727e1f126d</guid>
        <title>Presentando Contentz</title>
        <description>Contentz, un Pure Static Site Generator para obtener un sitio web super optimizado.</description>
        <link>https://r3.sergiodxa.com/articles/presentando-contentz</link>
        <pubDate>Tue, 05 Mar 2019 21:03:17 GMT</pubDate>
      </item>
<item>
        <guid>9304fb28-95e0-47a9-9788-b0b50206c084</guid>
        <title>Uso del prop children en React</title>
        <description>El prop children tiene significado especial para React, veremos para que sirve y como usarlo en nuestros propios componentes.</description>
        <link>https://r3.sergiodxa.com/articles/react-prop-especial-children</link>
        <pubDate>Tue, 26 Feb 2019 16:42:36 GMT</pubDate>
      </item>
<item>
        <guid>1e69000f-1761-497c-b717-41eb4d72db14</guid>
        <title>Componentes con Hijos Personalizables en React</title>
        <description>Para evitar prop drilling y hacer componentes aún más personalizables vamos a ver como usar un prop para cambiar el contenido de un componentes de React.</description>
        <link>https://r3.sergiodxa.com/articles/componentes-react-hijos-personalizables</link>
        <pubDate>Tue, 26 Feb 2019 16:35:48 GMT</pubDate>
      </item>
<item>
        <guid>ad8f8946-0834-49f1-b4a6-5d4f1854b6dc</guid>
        <title>Composición de Componentes en React</title>
        <description>Una de las mejores cosas de React es poder combinar componentes para crear nuevo componentes más complejos</description>
        <link>https://r3.sergiodxa.com/articles/composicion-componentes-react</link>
        <pubDate>Tue, 26 Feb 2019 16:27:49 GMT</pubDate>
      </item>
<item>
        <guid>11bcf889-5a22-476b-a19f-97a6fa271255</guid>
        <title>Tipos de datos en React</title>
        <description>Hay varias formas de definir que tipos de datos recibe un componente en React, puede ser TypeScript, Flow o PropTypes</description>
        <link>https://r3.sergiodxa.com/articles/tipos-datos-react</link>
        <pubDate>Tue, 26 Feb 2019 16:14:01 GMT</pubDate>
      </item>
<item>
        <guid>dadc6089-991b-4ef5-956c-26b7bd7a8edc</guid>
        <title>Props con valores predefinidos en React</title>
        <description>Es muy común querer tener props con valores por defecto en nuestros componentes de React, veremos varias formas de lograr este objetivo.</description>
        <link>https://r3.sergiodxa.com/articles/react-props-valores-predefinidos</link>
        <pubDate>Tue, 26 Feb 2019 16:09:40 GMT</pubDate>
      </item>
<item>
        <guid>6cdc25cd-c469-4b86-bad1-af4691c9c37c</guid>
        <title>Componente de React personalizables usando props</title>
        <description>Los props nos permiten crear componentes de React que sean personalizables y que nos sirven para muchos más casos</description>
        <link>https://r3.sergiodxa.com/articles/componentes-react-personalizables-props</link>
        <pubDate>Tue, 26 Feb 2019 16:04:00 GMT</pubDate>
      </item>
<item>
        <guid>ffdbe8f4-a889-4a54-a396-a78285b4a30b</guid>
        <title>Componentes con React</title>
        <description>Los componentes de React son la unidad básica de cualquier aplicación hecha con esta librería, aprende como crear y usar componentes de React</description>
        <link>https://r3.sergiodxa.com/articles/componentes-con-react</link>
        <pubDate>Tue, 26 Feb 2019 15:58:10 GMT</pubDate>
      </item>
<item>
        <guid>91fd2371-eb8f-47cb-b28f-7e467fe7a067</guid>
        <title>Hola Mundo con React</title>
        <description>En este tutorial vamos a ver como crear un Hola Mundo en React sin usar JSX</description>
        <link>https://r3.sergiodxa.com/articles/hola-mundo-react</link>
        <pubDate>Tue, 26 Feb 2019 15:58:06 GMT</pubDate>
      </item>
<item>
        <guid>19376632-addb-4c2a-80b6-2a9c5de24f7e</guid>
        <title>Cargando React desde un CDN</title>
        <description>En este tutorial vamos a ver como crear un Hola Mundo en React sin usar JSX.</description>
        <link>https://r3.sergiodxa.com/articles/cargando-react-cdn</link>
        <pubDate>Tue, 26 Feb 2019 15:57:55 GMT</pubDate>
      </item>
<item>
        <guid>318a58c3-1a8c-46c6-8f07-d16a241b662e</guid>
        <title>Mi Static Site Generator ideal</title>
        <description>Un artículo con ideas de como sería mi generador de sitios estáticos ideal</description>
        <link>https://r3.sergiodxa.com/articles/generador-sitios-estaticos-propio</link>
        <pubDate>Mon, 25 Feb 2019 18:09:56 GMT</pubDate>
      </item>
<item>
        <guid>58b7b948-64f4-4a0a-b8bf-a32726d51eba</guid>
        <title>Automatización con Shell Scripts</title>
        <description>Aprende a usar Shell Scripts para automatizar tareas, todo con un ejemplo práctico para montar un entorno de trabajo para un proyecto en Node.js</description>
        <link>https://r3.sergiodxa.com/articles/automatizacion-shell-scripts</link>
        <pubDate>Sat, 23 Feb 2019 04:41:48 GMT</pubDate>
      </item>
<item>
        <guid>6ca49089-fb24-4800-8521-7320382d0454</guid>
        <title>Conceptos básicos de JS: Array#push</title>
        <description>Aprende a usar Array#push, como se implementa a mano y casos de uso prácticos de este método de los array en JavaScript.</description>
        <link>https://r3.sergiodxa.com/articles/js-basics/array-prototype-push</link>
        <pubDate>Mon, 11 Feb 2019 15:51:40 GMT</pubDate>
      </item>
<item>
        <guid>9291da82-cf58-4327-b8ac-b8320d3014f8</guid>
        <title>Conceptos básicos de JS: Array#filter</title>
        <description>Aprende a usar Array#filter, como se implementa a mano y casos de uso prácticos de este método de los array en JavaScript.</description>
        <link>https://r3.sergiodxa.com/articles/js-basics/array-prototype-filter</link>
        <pubDate>Fri, 08 Feb 2019 17:36:16 GMT</pubDate>
      </item>
<item>
        <guid>a63bffde-a0a6-4b33-92b4-bc5725a4ec75</guid>
        <title>Conceptos básicos de JS: Array#map</title>
        <description>Aprende a usar Array#map, como se implementa a mano y casos de uso prácticos de este método de los array en JavaScript.</description>
        <link>https://r3.sergiodxa.com/articles/js-basics/array-prototype-map</link>
        <pubDate>Thu, 07 Feb 2019 05:44:51 GMT</pubDate>
      </item>
<item>
        <guid>9b7fe4c8-a642-4ec5-b003-16a5c079ad57</guid>
        <title>Usando Generadores Asíncronos en JavaScript</title>
        <description>Tutorial sobre como se pueden usar Generadores Asíncronos de ECMAScript 2018 para realizar colas o paginaciones de un API fácilmente en JavaScript</description>
        <link>https://r3.sergiodxa.com/articles/generadores-asincronos-js</link>
        <pubDate>Wed, 30 Jan 2019 15:00:00 GMT</pubDate>
      </item>
<item>
        <guid>4f81c6ad-005a-4dc1-bdf4-d2f216d60405</guid>
        <title>Carrusel de elementos dinámicos con React.js</title>
        <description>Tutorial sobre como implementar un carrusel para elementos de diferentes tamaños usando React.js</description>
        <link>https://r3.sergiodxa.com/articles/carrusel-elementos-dinamicos-react</link>
        <pubDate>Tue, 29 Jan 2019 18:44:19 GMT</pubDate>
      </item>
<item>
        <guid>5f09fe41-c392-44ef-8508-13282790d4fb</guid>
        <title>Scalable Real-Time Applications</title>
        <description>Tips and recommendations to build real-time applications using WebSockets</description>
        <link>https://r3.sergiodxa.com/articles/scalable-real-time-applications</link>
        <pubDate>Fri, 11 Jan 2019 05:52:01 GMT</pubDate>
      </item>
<item>
        <guid>1e1c2e65-b637-4552-8b4b-a0dd99c8fe05</guid>
        <title>Aplicaciones Real-Time de Alta Escala</title>
        <description>Consejos y recomendaciones para construir aplicaciones en tiempo real usando WebSockets</description>
        <link>https://r3.sergiodxa.com/articles/aplicaciones-real-time-alta-escala</link>
        <pubDate>Sun, 06 Jan 2019 07:20:33 GMT</pubDate>
      </item>
<item>
        <guid>3cbf5aef-9242-4b93-8852-e9bd9505211a</guid>
        <title>React v16.6: lazy, memo y más</title>
        <description>Aprende a usar los nuevos features de React v16.6, lazy load, memoize, errores, contexto y más</description>
        <link>https://r3.sergiodxa.com/articles/react-v-16-6</link>
        <pubDate>Wed, 24 Oct 2018 17:32:04 GMT</pubDate>
      </item>
<item>
        <guid>3e436945-2751-4b5f-88a9-9a00c5be22f8</guid>
        <title>Introducción a MDX</title>
        <description>MDX es un formato de archivos que permite extender Markdown con código JS y JSX (Componentes de React)</description>
        <link>https://r3.sergiodxa.com/articles/introduccion-a-mdx</link>
        <pubDate>Wed, 09 May 2018 05:03:59 GMT</pubDate>
      </item>
<item>
        <guid>ea453280-9de3-4198-9676-6bb90ab5e593</guid>
        <title>Documentation, Lessons Learned</title>
        <description>After working on the documentation of the API of ZEIT I want to share some insights I learned from it</description>
        <link>https://r3.sergiodxa.com/articles/documentation</link>
        <pubDate>Wed, 17 Jan 2018 21:18:58 GMT</pubDate>
      </item>
<item>
        <guid>17bfb437-2534-4b1f-826b-3ca17614c5a8</guid>
        <title>Documentación, Lecciones Aprendidas</title>
        <description>Después de trabajar en la documentación del API de ZEIT quiero compartir algunas lecciones que aprendí de ello.</description>
        <link>https://r3.sergiodxa.com/articles/documentacion</link>
        <pubDate>Wed, 17 Jan 2018 21:18:58 GMT</pubDate>
      </item>
<item>
        <guid>fb58dec1-fd7b-4437-9a1b-3f112bfd9a80</guid>
        <title>¿Cómo mantenerse actualizado con el ecosistema de JavaScript?</title>
        <description>Cómo mantenerse actualizado es una pregunta común al comenzar, acá hay una lista de maneras útiles de hacerlo y no morir en el proceso.</description>
        <link>https://r3.sergiodxa.com/articles/como-mantenerse-actualizado-con-el-ecosistema-de-javascript</link>
        <pubDate>Fri, 12 Jan 2018 17:53:42 GMT</pubDate>
      </item>
<item>
        <guid>a9bdfdbf-b388-4784-9993-cd41a94a04f7</guid>
        <title>Renderizando Markdown en React.js</title>
        <description>Crea un parser que transforme Markdown a componentes de React.js</description>
        <link>https://r3.sergiodxa.com/articles/markdown-react</link>
        <pubDate>Sat, 06 Jan 2018 05:43:35 GMT</pubDate>
      </item>
<item>
        <guid>f8c4dbe2-40f7-44ac-877b-6e101e2af60d</guid>
        <title>An Accessible Approach to Frontend Testing</title>
        <description>Testing is hard. Testing Frontend is harder. But you should do it anyways.</description>
        <link>https://r3.sergiodxa.com/articles/an-accessible-approach-to-frontend-testing</link>
        <pubDate>Sat, 30 Sep 2017 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>5a359589-c9fb-41a6-baa8-b0b5d8529aac</guid>
        <title>How to keep updated with the JavaScript ecosystem?</title>
        <description>How to keep updated is a common questions when starting, here you can find a list of useful ways to do it and not die in the process.</description>
        <link>https://r3.sergiodxa.com/articles/how-to-keep-updated-with-the-javascript-ecosystem</link>
        <pubDate>Sun, 06 Aug 2017 17:26:03 GMT</pubDate>
      </item>
<item>
        <guid>5393d2b7-3a18-4c28-ad69-6611b83fed77</guid>
        <title>Implementando un Servidor de GraphQL</title>
        <description>Explicación paso a paso de como implementar un servidor GraphQL desde cero en Node.js.</description>
        <link>https://r3.sergiodxa.com/articles/implementando-un-servidor-de-graphql</link>
        <pubDate>Fri, 07 Jul 2017 15:42:42 GMT</pubDate>
      </item>
<item>
        <guid>9a41370a-aba3-47a8-a5c7-66fe52ac2fd7</guid>
        <title>Bye Platzi, hi ▲ZEIT</title>
        <description>Today I leave my job as Frontend Developer at Platzi to start working as Support Engineer at ▲ZEIT.</description>
        <link>https://r3.sergiodxa.com/articles/bye-platzi-hi-zeit</link>
        <pubDate>Fri, 07 Jul 2017 04:50:53 GMT</pubDate>
      </item>
<item>
        <guid>6e6ca866-0336-4d48-8f34-0052c7bb5d7e</guid>
        <title>Ciclo de vida de un componente de React.js</title>
        <description>Repaso por los diferentes métodos del ciclo de vida de un componente de React.js</description>
        <link>https://r3.sergiodxa.com/articles/ciclo-de-vida-de-un-componente-de-reactjs</link>
        <pubDate>Thu, 06 Jul 2017 15:31:07 GMT</pubDate>
      </item>
<item>
        <guid>a95280e2-e0ad-4bb6-9ce6-1fab7f70c761</guid>
        <title>Mezclando flujos síncronos y asíncronos usando promesas en JavaScript</title>
        <description>Manejar flujos de datos síncronos es fácil, con Promises también es fácil hacerlos asíncronos. Ahora veamos como combinarlos.</description>
        <link>https://r3.sergiodxa.com/articles/mezclando-flujos-sincronos-y-asincronos</link>
        <pubDate>Fri, 23 Jun 2017 22:39:48 GMT</pubDate>
      </item>
<item>
        <guid>4a75524b-b17a-4157-b5cb-16538e2e5109</guid>
        <title>Introducción a GraphQL</title>
        <description>En 2015 Facebook anunció GraphQL, una tecnología que empezaron a desarrollar y usar internamente en 2012. ¿Pero qué es GraphQL?</description>
        <link>https://r3.sergiodxa.com/articles/introduccion-a-graphql</link>
        <pubDate>Mon, 29 May 2017 00:42:30 GMT</pubDate>
      </item>
<item>
        <guid>fc7de063-2e99-4b73-b8a1-5306e29e782c</guid>
        <title>Qué son y cómo funcionan las promesas en JavaScript</title>
        <description>Manejar flujos de datos asíncronos es complejo, pero con Promesas esto se vuelve mucho más fácil</description>
        <link>https://r3.sergiodxa.com/articles/que-son-y-como-funcionan-las-promesas-en-javascript</link>
        <pubDate>Mon, 06 Mar 2017 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>1545ec9e-19e5-4002-bf4d-c9091fc18c2d</guid>
        <title>Sobre el ecosistema y la fatiga de JavaScript</title>
        <description>Desde hace ya un tiempo han ido saliendo un montón de artículos sobre JS Fatigue, tantos que hasta hay artículos sobre la fatiga de esta.</description>
        <link>https://r3.sergiodxa.com/articles/sobre-el-ecosistema-y-la-fatiga-de-javascript</link>
        <pubDate>Mon, 10 Oct 2016 14:01:02 GMT</pubDate>
      </item>
<item>
        <guid>beb852ac-86a3-45c3-a8c9-6ea9d55d0a52</guid>
        <title>Combinando React.js y Redux.js</title>
        <description>Redux es especialmente bueno al usarlo con librerías como React ya que facilita usar React solo para la UI y dejar el estado en Redux.</description>
        <link>https://r3.sergiodxa.com/articles/combinando-react-y-redux</link>
        <pubDate>Mon, 28 Mar 2016 07:18:42 GMT</pubDate>
      </item>
<item>
        <guid>06ae95dd-683a-4005-924b-4acff8f6f3f6</guid>
        <title>Introducción a Redux.js</title>
        <description>Redux es una librería para controlar el estado de nuestras WebApps fácilmente, de forma consistente entre cliente y servidor y una gran DX.</description>
        <link>https://r3.sergiodxa.com/articles/introduccion-a-redux</link>
        <pubDate>Wed, 23 Mar 2016 15:52:14 GMT</pubDate>
      </item>
<item>
        <guid>9697bd59-81e6-4b00-a570-56a78f00e9d4</guid>
        <title>Compilando el Frontend con webpack</title>
        <description>  Cuando estamos haciendo desarrollo Frontend es una buena práctica separar nuestro código en distintos módulos, tanto el código de JavaScr…</description>
        <link>https://r3.sergiodxa.com/articles/medium/compilando-frontend-webpack</link>
        <pubDate>Mon, 28 Sep 2015 00:10:28 GMT</pubDate>
      </item>
<item>
        <guid>d2cc2c4c-78ea-4d6a-8d20-b1617476dafc</guid>
        <title>Internacionalización con React.js y FormatJS</title>
        <description>Guía de como usar FormatJS para internacionalizar aplicaciones hechas con React.js y poder pluralizar o formatear fechas y números.</description>
        <link>https://r3.sergiodxa.com/articles/medium/i18n-react-formatjs</link>
        <pubDate>Sun, 27 Sep 2015 03:57:35 GMT</pubDate>
      </item>
<item>
        <guid>a78e9ec6-6d9e-4389-a15b-1487074d4a8a</guid>
        <title>Introducción a ECMAScript 2016/7</title>
        <description>Desde finales del 2014, incluso antes de que se terminara de definir ECMAScript 6 ya se estaba empezando a trabajar en la siguiente versión…</description>
        <link>https://r3.sergiodxa.com/articles/medium/introduccion-a-ecmascript-2016-7</link>
        <pubDate>Fri, 25 Sep 2015 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>b3284bdc-599d-4ac7-86ca-b127632d1bde</guid>
        <title>Mi experiencia como estudiante de los cursos de Platzi</title>
        <description>El nacimiento de Platzi  Hace más de 5 años me enteré que los dueños de Cristalab y Maestros del Web se iban a juntar para crear Mejorando …</description>
        <link>https://r3.sergiodxa.com/articles/medium/mi-experiencia-como-estudiante-de-los-cursos-de-platzi</link>
        <pubDate>Thu, 10 Sep 2015 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>a837d011-8622-4b29-8689-afdb87b21744</guid>
        <title>Lo nuevo en React v0.14</title>
        <description>React v0.14 es la nueva beta de la librería de Facebook que fue liberada recientemente. Esta primera versión llegará con dos grandes cambio…</description>
        <link>https://r3.sergiodxa.com/articles/platzi/react-v014</link>
        <pubDate>Wed, 08 Jul 2015 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>b95201d5-b3f3-412f-ab4e-649919b366d2</guid>
        <title>Usando ECMAScript 6 en tus tareas de Gulp</title>
        <description>Algo muy molesto cuando estás usando ES6 con Babel.js y Gulp.js para automatizar tareas es que el archivo gulpfile.js sigue estando en ES5 …</description>
        <link>https://r3.sergiodxa.com/articles/medium/usando-ecmascript-6-en-tus-tareas-de-gulp</link>
        <pubDate>Tue, 09 Jun 2015 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>9f30c18a-8ef5-454e-b1df-bfb8e0f0348c</guid>
        <title>Usando ECMAScript 6/2015 con Babel</title>
        <description>ECMAScript 2015, comunmente conocido como ECMAScript 6 o ES6, es la nueva versión del lenguaje estandarizado ECMAScript del cual sale JavaS…</description>
        <link>https://r3.sergiodxa.com/articles/medium/usando-ecmascript-6-2015-con-babel</link>
        <pubDate>Tue, 09 Jun 2015 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>0c39c89c-41b4-4fd6-862f-3165495b6c42</guid>
        <title>Buenas prácticas del desarrollo FrontEnd</title>
        <description>En el desarrollo FrontEnd con el tiempo han ido surgiendo lo que se conoce como buenas prácticas, cosas que normalmente hacemos porque mejo…</description>
        <link>https://r3.sergiodxa.com/articles/medium/buenas-practicas-del-desarrollo-frontend</link>
        <pubDate>Mon, 08 Jun 2015 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>45180c4b-bfdc-489b-b5a0-59941e81507f</guid>
        <title>Renderizando React.js en el server con Express.js y react-engine</title>
        <description>React.js cada vez es más popular en el mundo del desarrollo web y una de las razones de esto es que permite crear código isomórfico, esto q…</description>
        <link>https://r3.sergiodxa.com/articles/medium/renderizando-react-js-en-el-server-con-express-js-y-react-engine</link>
        <pubDate>Mon, 01 Jun 2015 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>adc99b09-3754-4cc9-8cec-6379ea393a55</guid>
        <title>ECMAScript 6: nueva sintaxis y características para JavaScript</title>
        <description>title: ''
date: 2015-04-24T00:00:00.000Z
published: true
lang: es
canonical_url: …</description>
        <link>https://r3.sergiodxa.com/articles/platzi/ecmascript-nueva-sintaxis</link>
        <pubDate>Fri, 24 Apr 2015 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>dc4e7bee-bd68-4d31-8bab-e902fd6f83d2</guid>
        <title>Cómo usar la etiqueta template en HTML5</title>
        <description>Hasta hace unos años, cuando un desarrollador quería hacer templates de sus páginas, la opción era usar algún lenguaje en el Backend como P…</description>
        <link>https://r3.sergiodxa.com/articles/cristalab/como-usar-la-etiqueta-template-en-html5</link>
        <pubDate>Sun, 04 Jan 2015 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>991de6c8-5ad5-4af3-802d-671c5a87c23a</guid>
        <title>Automatización de tareas de frontend usando Gulp.js</title>
        <description>Como desarrollador Frontend, hay ciertas tareas que se terminan volviendo repetitivas durante el desarrollo, como compilar el CSS desde un …</description>
        <link>https://r3.sergiodxa.com/articles/cristalab/automatizando-tareas-frontend-gulp</link>
        <pubDate>Mon, 22 Dec 2014 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>602d194e-b226-4058-95ad-c38c63098b36</guid>
        <title>Uso de módulos en JavaScript con ECMAScript 6</title>
        <description>JavaScript no tiene (por ahora) un sistema de módulos propio, aunque eso si, la comunidad fue creando varios para suplir esa necesidad. Act…</description>
        <link>https://r3.sergiodxa.com/articles/cristalab/uso-de-modulos-en-javascript-con-ecmascript-6</link>
        <pubDate>Fri, 07 Nov 2014 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>9a065518-e2c9-43b6-bee1-495e1410731a</guid>
        <title>Escribiendo CSS de la forma correcta</title>
        <description>Como desarrollador FrontEnd me encuentro constantemente utilizando CSS. Este lenguaje para dar estilos a páginas web tiende a empezar siend…</description>
        <link>https://r3.sergiodxa.com/articles/medium/escribiendo-css-de-la-forma-correcta</link>
        <pubDate>Fri, 31 Oct 2014 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>3b259fff-6a34-49f2-9d64-6c3b40e21d64</guid>
        <title>Definiendo conceptos - Closure y Scope en JavaScript</title>
        <description>Qué es el Scope  El scope es el alcance de una variable, puede ser de dos tipos, global y local. Una variable cuyo scope es global se puede…</description>
        <link>https://r3.sergiodxa.com/articles/definiendo-conceptos-closures-y-scope</link>
        <pubDate>Thu, 31 Jul 2014 00:19:09 GMT</pubDate>
      </item>
<item>
        <guid>65e83c2e-4463-4630-8283-425fed52b416</guid>
        <title>Ventajas y desventajas de los pre-procesadores de CSS</title>
        <description>Usar pre-procesadores de CSS de a poco se convierte un estándar en el mundo del desarrollo web front-end, pero primero empecemos hablando s…</description>
        <link>https://r3.sergiodxa.com/articles/medium/ventajas-y-desventajas-de-los-pre-procesadores-de-css</link>
        <pubDate>Tue, 08 Jul 2014 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>3f646c6d-fa21-4e5a-8317-b4c58677edf3</guid>
        <title>¿Qué es Scrum? ¿Y cómo te ayuda trabajar?</title>
        <description>Scrum es una metodología de desarrollo ágil. Scrum propone una forma diferente de organizarse en el desarrollo de un proyecto, tanto en sol…</description>
        <link>https://r3.sergiodxa.com/articles/medium/que-es-scrum</link>
        <pubDate>Sun, 06 Jul 2014 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>2104d5ba-8462-44d6-bc18-30a8a3dfbc63</guid>
        <title>El módulo Flexbox de CSS3</title>
        <description>Flexbox es un módulo de CSS3 que permite crear layouts flexibles de una forma más eficiente controlando la alineación de las cajas, el anch…</description>
        <link>https://r3.sergiodxa.com/articles/cristalab/el-modulo-flexbox-de-css3</link>
        <pubDate>Sun, 15 Dec 2013 00:00:00 GMT</pubDate>
      </item>
<item>
        <guid>26966f1e-faa2-4a9a-8ac7-fc9097c4095b</guid>
        <title>JavaScript orientado a objetos</title>
        <description>La programación orientada a objetos o POO (OOP en inglés Object Oriented Programming) es una forma de realizar aplicaciones. Javascript por…</description>
        <link>https://r3.sergiodxa.com/articles/cristalab/javascript-orientado-a-objetos</link>
        <pubDate>Fri, 23 Aug 2013 00:00:00 GMT</pubDate>
      </item>
  </channel>
</rss>