<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <id>https://codefoster.com/</id>
    <title>codefoster</title>
    <updated>2026-06-17T00:00:00.000Z</updated>
    <generator>https://github.com/jpmonette/feed</generator>
    <author>
        <name>Jeremy Foster</name>
        <uri>https://codefoster.com/</uri>
    </author>
    <link rel="alternate" href="https://codefoster.com/"/>
    <link rel="self" href="https://codefoster.com/atom.xml"/>
    <rights>All rights reserved, Jeremy Foster</rights>
    <entry>
        <title type="html"><![CDATA[Intelligent Fusion]]></title>
        <id>https://codefoster.com/subsystem-agents/</id>
        <link href="https://codefoster.com/subsystem-agents/"/>
        <updated>2026-06-17T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[I recently gave an AI agent direct, write-level access to the PostgreSQL database that DaVinci Resolve runs on. And honestly? That's the least interesting part of the story. The interesting part is the architecture I stumbled into along the way — a repeatable pattern for letting AI work across all t]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[Azure Options for Stream Processing]]></title>
        <id>https://codefoster.com/stream-processing/</id>
        <link href="https://codefoster.com/stream-processing/"/>
        <updated>2019-08-28T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Overview If you're not already familiar with the concept of data streaming and the resources available in Azure on the topic, then please visit my article Data Streaming at Scale in Azure and review that first.]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[Data Streaming at Scale in Azure]]></title>
        <id>https://codefoster.com/streaming/</id>
        <link href="https://codefoster.com/streaming/"/>
        <updated>2019-08-28T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[Overview Many modern enterprise applications start with data generated by real world events like human interactions or regular sensor readings, and it's often the modern developer's job to design a system that will capture that data, move it quickly through some data pipeline, and then turn it into ]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[Fetch Azure FTP Credentials from the CLI]]></title>
        <id>https://codefoster.com/azure-ftp-credentials/</id>
        <link href="https://codefoster.com/azure-ftp-credentials/"/>
        <updated>2019-06-24T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[This is one of those posts I'm writing for future me (hi, future me!).]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[Semantic Selections and Why They Matter]]></title>
        <id>https://codefoster.com/semantic-selections/</id>
        <link href="https://codefoster.com/semantic-selections/"/>
        <updated>2019-06-24T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[I'm a big fan of at least two things in life: writing code and being productive. On matters involving both I get downright giddy, and one such matter is semantic selection. VS Code calls them smart selections, but whatever.]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[Beautiful Cascading Node Config]]></title>
        <id>https://codefoster.com/nodeconfig/</id>
        <link href="https://codefoster.com/nodeconfig/"/>
        <updated>2018-05-17T12:00:00.000Z</updated>
        <summary type="html"><![CDATA[FYI, this is a repost. I lost this post's source markdown and just recreated it for posterity.]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[TypeScript for Documentation]]></title>
        <id>https://codefoster.com/typescript-docs/</id>
        <link href="https://codefoster.com/typescript-docs/"/>
        <updated>2018-04-13T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[TypeScript is wonderful for a variety of reasons and there's one I want to hightlight right now.]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[A Simple Brain]]></title>
        <id>https://codefoster.com/simple-brain/</id>
        <link href="https://codefoster.com/simple-brain/"/>
        <updated>2018-03-26T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[I'm not (yet) an expert in machine learning, but like so many I recognize that it's an incredibly integral part of our future.]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[Zoom in Windows]]></title>
        <id>https://codefoster.com/zoom/</id>
        <link href="https://codefoster.com/zoom/"/>
        <updated>2018-03-26T00:00:00.000Z</updated>
        <summary type="html"><![CDATA[I do a lot of presentations. The only thing I like more than writing code is talking about writing code.]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[Level Up Your JavaScript Game! - Other ES6 Language Features]]></title>
        <id>https://codefoster.com/levelup-es6/</id>
        <link href="https://codefoster.com/levelup-es6/"/>
        <updated>2018-02-21T09:31:08.000Z</updated>
        <summary type="html"><![CDATA[See Level Up Your JavaScript Game! for related content.]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[Level Up Your JavaScript Game! - ES6 Modules]]></title>
        <id>https://codefoster.com/levelup-modules/</id>
        <link href="https://codefoster.com/levelup-modules/"/>
        <updated>2018-02-21T09:31:03.000Z</updated>
        <summary type="html"><![CDATA[This post is not yet finished <!-- remove before publishing --]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[Level Up Your JavaScript Game! - Regular Expressions]]></title>
        <id>https://codefoster.com/levelup-regex/</id>
        <link href="https://codefoster.com/levelup-regex/"/>
        <updated>2018-02-21T09:30:55.000Z</updated>
        <summary type="html"><![CDATA[See Level Up Your JavaScript Game! for related content.]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[Level Up Your JavaScript Game! - Arrays]]></title>
        <id>https://codefoster.com/levelup-arrays/</id>
        <link href="https://codefoster.com/levelup-arrays/"/>
        <updated>2018-02-21T09:30:47.000Z</updated>
        <summary type="html"><![CDATA[See Level Up Your JavaScript Game! for related content.]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[Level Up Your JavaScript Game! - Asynchrony]]></title>
        <id>https://codefoster.com/levelup-async/</id>
        <link href="https://codefoster.com/levelup-async/"/>
        <updated>2018-02-21T09:30:26.000Z</updated>
        <summary type="html"><![CDATA[See Level Up Your JavaScript Game! for related content.]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[Level Up Your JavaScript Game!]]></title>
        <id>https://codefoster.com/levelup/</id>
        <link href="https://codefoster.com/levelup/"/>
        <updated>2018-02-21T09:14:17.000Z</updated>
        <summary type="html"><![CDATA[A fellow developer recently expressed a sentiment I've heard and felt many times myself.]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[You Already Have That Linux Command in Windows]]></title>
        <id>https://codefoster.com/git-linux-command/</id>
        <link href="https://codefoster.com/git-linux-command/"/>
        <updated>2017-12-06T19:33:55.000Z</updated>
        <summary type="html"><![CDATA[I do a lot of work with Windows as well as with Linux, and I have a little trick that I've shared 100 times and finally decided to drop into a blog post for posterity.]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[The World's Quickest API]]></title>
        <id>https://codefoster.com/jsonapi/</id>
        <link href="https://codefoster.com/jsonapi/"/>
        <updated>2017-11-10T15:38:55.000Z</updated>
        <summary type="html"><![CDATA[Sometimes you just need a quick API. Am I right?]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[NPM Link]]></title>
        <id>https://codefoster.com/npmlink/</id>
        <link href="https://codefoster.com/npmlink/"/>
        <updated>2017-11-02T19:19:08.000Z</updated>
        <summary type="html"><![CDATA[My buddy Jason Young (@ytechie) asked a question the other day that reminded me of a Node trick I learned sometime ago and remember getting pretty excited about.]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[Growth Mindset]]></title>
        <id>https://codefoster.com/growthmindset/</id>
        <link href="https://codefoster.com/growthmindset/"/>
        <updated>2017-10-25T12:29:59.000Z</updated>
        <summary type="html"><![CDATA[If you're tuned in to technical topics, then you've likely heard my CEO Satya Nadella use the phrase Growth Mindset a few times.]]></summary>
    </entry>
    <entry>
        <title type="html"><![CDATA[Highlighting the Beauty of Rx]]></title>
        <id>https://codefoster.com/beautyofrx/</id>
        <link href="https://codefoster.com/beautyofrx/"/>
        <updated>2017-10-13T17:13:54.000Z</updated>
        <summary type="html"><![CDATA[Some time ago, myself and a small team of guys dedicated one evening a week to working on an app.]]></summary>
    </entry>
</feed>