<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title>Joseph Ali - Today I learned / Notes</title>
  <link href="https://josephali.dev/atom.xml" rel="self" type="application/atom+xml" />
  <link href="https://josephali.dev/tils" rel="alternate" type="text/html" />
  <id>https://josephali.dev/tils</id>
  <updated>2026-08-23T00:00:00Z</updated>
  <author>
    <name>Joseph Ali</name>
    <uri>https://josephali.dev</uri>
  </author>
  <entry>
    <title>Understanding AWS SQS Visibility Timeout</title>
    <link href="https://josephali.dev/tils/aws/understanding-aws-sqs-visibility-timeout" rel="alternate" type="text/html" />
    <id>https://josephali.dev/tils/aws/understanding-aws-sqs-visibility-timeout</id>
    <updated>2026-08-23T00:00:00Z</updated>
    <published>2026-08-23T00:00:00Z</published>
    <summary>Understanding AWS SQS Visibility Timeout SQS is a useful building block for distributed systems because it decouples producers from consumers. Let&apos;s take a simple example of one producer sending a message to the queue and one consumer consuming the message. The message stays i...</summary>
    <author>
      <name>Joseph Ali</name>
      <uri>https://josephali.dev</uri>
    </author>
  </entry>
  <entry>
    <title>Trigger a GitHub Pages Rebuild from Another Repository</title>
    <link href="https://josephali.dev/tils/github-actions/trigger-github-pages-rebuild" rel="alternate" type="text/html" />
    <id>https://josephali.dev/tils/github-actions/trigger-github-pages-rebuild</id>
    <updated>2026-07-26T00:00:00Z</updated>
    <published>2026-07-26T00:00:00Z</published>
    <summary>Trigger a GitHub Pages Rebuild from Another Repository My personal website, josephali.dev, is hosted on Github pages, with it&apos;s source code stored in the dig/josephali.dev repository. Whenever I push a change to the main branch, a Github actions workflow builds the Next.js app...</summary>
    <author>
      <name>Joseph Ali</name>
      <uri>https://josephali.dev</uri>
    </author>
  </entry>
  <entry>
    <title>How Rueidis Optimizes Lua Script Evaluations in Go</title>
    <link href="https://josephali.dev/tils/go/how-rueidis-optimizes-lua-scripts-evaluations-in-go" rel="alternate" type="text/html" />
    <id>https://josephali.dev/tils/go/how-rueidis-optimizes-lua-scripts-evaluations-in-go</id>
    <updated>2026-07-15T00:00:00Z</updated>
    <published>2026-07-15T00:00:00Z</published>
    <summary>How Rueidis Optimizes Lua Script Evaluations in Go I recently needed to perform multiple Redis operations atomically for a hot endpoint. This endpoint receives thousands of requests concurrently all trying to achieve the same thing: decrement one value, increment another and e...</summary>
    <author>
      <name>Joseph Ali</name>
      <uri>https://josephali.dev</uri>
    </author>
  </entry>
</feed>
