<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet type="text/xsl" href="atom.xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://fynes-forge.github.io/blog</id>
    <title>The Forge Blog</title>
    <updated>2026-04-08T00:00:00.000Z</updated>
    <generator>https://github.com/jpmonette/feed</generator>
    <link rel="alternate" href="https://fynes-forge.github.io/blog"/>
    <subtitle>Thoughts on data engineering, software, and the occasional rabbit hole.</subtitle>
    <icon>https://fynes-forge.github.io/img/forge-mark.svg</icon>
    <rights>Copyright © 2026 Fynes Forge</rights>
    <entry>
        <title type="html"><![CDATA[ETL vs ELT: Knowing Which One to Reach For]]></title>
        <id>https://fynes-forge.github.io/blog/etl-vs-elt</id>
        <link href="https://fynes-forge.github.io/blog/etl-vs-elt"/>
        <updated>2026-04-08T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[ETL and ELT are two of those terms that get used interchangeably in job descriptions and architecture documents, as if the letter order doesn't matter. It does. They represent genuinely different approaches to moving and transforming data, and picking the wrong one for your situation creates problems that compound over time.]]></summary>
        <author>
            <name>Tom Fynes</name>
            <uri>https://github.com/fynes-forge</uri>
        </author>
        <category label="Data Engineering" term="Data Engineering"/>
        <category label="sql" term="sql"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Why I Created a GitHub Organisation (And Why You Probably Should Too)]]></title>
        <id>https://fynes-forge.github.io/blog/why-i-created-fynes-forge</id>
        <link href="https://fynes-forge.github.io/blog/why-i-created-fynes-forge"/>
        <updated>2026-03-26T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[I've had a personal GitHub account for years. It does what it needs to do — it holds my repos, tracks my contributions, and occasionally embarrasses me with commits from 2018 that I'd rather not think about.]]></summary>
        <author>
            <name>Tom Fynes</name>
            <uri>https://github.com/fynes-forge</uri>
        </author>
        <category label="misc" term="misc"/>
        <category label="github" term="github"/>
        <category label="Open Source" term="Open Source"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[AI Agents: The Good, the Frustrating, and the Genuinely Useful]]></title>
        <id>https://fynes-forge.github.io/blog/ai-agents-pros-and-cons</id>
        <link href="https://fynes-forge.github.io/blog/ai-agents-pros-and-cons"/>
        <updated>2026-03-19T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Full transparency upfront: this post was written by a GitHub Copilot agent on my behalf. I gave it the brief, it wrote the words. My thoughts, its keyboard. Make of that what you will.]]></summary>
        <author>
            <name>Tom Fynes</name>
            <uri>https://github.com/fynes-forge</uri>
        </author>
        <author>
            <name>GitHub Copilot</name>
            <uri>https://github.com/features/copilot</uri>
        </author>
        <category label="misc" term="misc"/>
        <category label="Web Dev" term="Web Dev"/>
        <category label="AI" term="AI"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How I Used an AI Agent to Modernize My Portfolio]]></title>
        <id>https://fynes-forge.github.io/blog/ai-agent-portfolio-modernization</id>
        <link href="https://fynes-forge.github.io/blog/ai-agent-portfolio-modernization"/>
        <updated>2026-03-15T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[I recently handed the keys of my portfolio site over to a GitHub Copilot coding agent and asked it to modernize the whole thing — version upgrades, UI polish, dependency management, the lot. Here's what that actually looked like in practice.]]></summary>
        <author>
            <name>Tom Fynes</name>
            <uri>https://github.com/fynes-forge</uri>
        </author>
        <category label="misc" term="misc"/>
        <category label="Web Dev" term="Web Dev"/>
        <category label="AI" term="AI"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Dimensional Modeling 101 - Design Better Data Warehouses]]></title>
        <id>https://fynes-forge.github.io/blog/dimensional-modeling-basics</id>
        <link href="https://fynes-forge.github.io/blog/dimensional-modeling-basics"/>
        <updated>2025-09-24T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[If you're building a data warehouse, dimensional modeling is your best friend. It makes data easier to query, understand, and analyze. Let's break down this powerful technique!]]></summary>
        <author>
            <name>Tom Fynes</name>
            <uri>https://github.com/fynes-forge</uri>
        </author>
        <category label="Data Modeling" term="Data Modeling"/>
        <category label="sql" term="sql"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Data Quality Validation - Ensuring Your Data is Trustworthy]]></title>
        <id>https://fynes-forge.github.io/blog/data-quality-validation</id>
        <link href="https://fynes-forge.github.io/blog/data-quality-validation"/>
        <updated>2025-09-02T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Bad data leads to bad decisions. As data engineers, one of our most important jobs is ensuring data quality. Let's explore how to validate and maintain high-quality data!]]></summary>
        <author>
            <name>Tom Fynes</name>
            <uri>https://github.com/fynes-forge</uri>
        </author>
        <category label="Data Engineering" term="Data Engineering"/>
        <category label="Python" term="Python"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Getting Started with Apache Airflow - Orchestrate Your Data Pipelines]]></title>
        <id>https://fynes-forge.github.io/blog/apache-airflow-getting-started</id>
        <link href="https://fynes-forge.github.io/blog/apache-airflow-getting-started"/>
        <updated>2025-08-19T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Apache Airflow has become the go-to tool for orchestrating data workflows. If you've ever needed to run tasks in a specific order, on a schedule, with dependencies - Airflow is your friend!]]></summary>
        <author>
            <name>Tom Fynes</name>
            <uri>https://github.com/fynes-forge</uri>
        </author>
        <category label="Data Engineering" term="Data Engineering"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[How to Choose the Right Database for Your Data Project]]></title>
        <id>https://fynes-forge.github.io/blog/choosing-the-right-database</id>
        <link href="https://fynes-forge.github.io/blog/choosing-the-right-database"/>
        <updated>2025-07-09T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Choosing a database feels a bit like choosing a car - there's no single "best" option, only the best option for your specific needs. Let's navigate this together!]]></summary>
        <author>
            <name>Tom Fynes</name>
            <uri>https://github.com/fynes-forge</uri>
        </author>
        <category label="Database" term="Database"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Introduction to Data Pipelines - Your First Step in Data Engineering]]></title>
        <id>https://fynes-forge.github.io/blog/introduction-to-data-pipelines</id>
        <link href="https://fynes-forge.github.io/blog/introduction-to-data-pipelines"/>
        <updated>2025-06-25T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Hey there! If you're stepping into the world of data engineering, you've probably heard the term "data pipeline" thrown around quite a bit. Let's break down what they are and why they're so important.]]></summary>
        <author>
            <name>Tom Fynes</name>
            <uri>https://github.com/fynes-forge</uri>
        </author>
        <category label="Data Engineering" term="Data Engineering"/>
        <category label="Python" term="Python"/>
    </entry>
    <entry>
        <title type="html"><![CDATA[Welcome]]></title>
        <id>https://fynes-forge.github.io/blog/welcome</id>
        <link href="https://fynes-forge.github.io/blog/welcome"/>
        <updated>2024-09-26T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Welcome to my new blog]]></summary>
        <category label="misc" term="misc"/>
    </entry>
</feed>