<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xml:base="https://yeldar.org/" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>Yeldar Kudaibergen – directflow</title>
  <link>https://yeldar.org/tags/directflow/</link>
  <atom:link href="https://yeldar.org/tags/directflow/feed.xml" rel="self" type="application/rss+xml"/>
  <description>Posts tagged "directflow" from Yeldar Kudaibergen</description>
  <language>en</language>
    <item>
      <title>DirectFlow App – follow podcasts directly</title>
      <link>https://yeldar.org/blog/df/</link>
      <description>&lt;p&gt;I’ve been experimenting with a small project called &lt;a href=&quot;https://directflow.app/&quot;&gt;DirectFlow&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Right now it looks like a simple podcast app, but the original idea behind it was actually much broader. At first, DirectFlow was an experiment around the idea that people should be able to &lt;em&gt;follow websites directly&lt;/em&gt;, without depending so heavily on platforms, directories, or centralized systems in between.&lt;/p&gt;
&lt;p&gt;The idea was simple: paste almost any website URL into a form, and the application would try to discover machine-readable flows directly from the website itself. RSS feeds, Atom feeds, JSON feeds, and other things websites already expose in their HTML metadata.&lt;/p&gt;
&lt;p&gt;But while building it, I realized something important: most people do not naturally think in terms of “following websites directly.” It is still not a familiar user experience outside of a few technical communities.&lt;/p&gt;
&lt;p&gt;Podcasting, however, immediately stood out as a place where this problem is very real.&lt;/p&gt;
&lt;p&gt;Subscribing to podcasts today is still strangely complicated compared to the rest of the modern internet. Usually you need to search inside a specific app, rely on podcast directories, or manually deal with RSS feeds that normal users were never supposed to think about in the first place.&lt;/p&gt;
&lt;p&gt;At the same time, the underlying infrastructure already exists and already works surprisingly well. Most podcast websites already expose feeds automatically. RSS already works. Open podcasting already works. The problem is mostly the user experience around it.&lt;/p&gt;
&lt;p&gt;So I decided to intentionally narrow DirectFlow down to podcasts for now.&lt;/p&gt;
&lt;p&gt;Today the idea is intentionally simple: you paste a podcast website URL into DirectFlow, scan a QR code, or share a link into the app — and DirectFlow automatically discovers the podcast feed and subscribes you to it.&lt;/p&gt;
&lt;p&gt;No searching through directories.&lt;/p&gt;
&lt;p&gt;No explaining RSS.&lt;/p&gt;
&lt;p&gt;No copying feed URLs manually.&lt;/p&gt;
&lt;p&gt;No platform lock-in.&lt;/p&gt;
&lt;p&gt;Just follow the podcast directly from its website.&lt;/p&gt;
&lt;p&gt;The current version is still very experimental, but it already supports both audio and video podcasts. If a feed contains playable audio or video enclosures, DirectFlow can detect them and play episodes directly inside the app.&lt;/p&gt;
&lt;p&gt;At some point I also realized that my own definition of podcasting had become much simpler than many industry discussions around it. To me, a podcast is basically just an open feed with playable enclosures. That’s it. If a feed contains playable audio or video files, applications should be able to discover it, subscribe to it, and play it.&lt;/p&gt;
&lt;p&gt;I also started using the word “flow” instead of only “feed,” because it feels broader and more correct for what I’m experimenting with. A feed is a technical format. A flow is more like a relationship between a website and an application.&lt;/p&gt;
&lt;p&gt;Some of these ideas later evolved into another small project called &lt;a href=&quot;https://qrx.dev/&quot;&gt;QRX&lt;/a&gt;, which experiments with discovering machine-readable flows from normal URLs and QR codes. I &lt;a href=&quot;https://yeldar.org/blog/qrx/&quot;&gt;wrote&lt;/a&gt; a bit more about that separately already.&lt;/p&gt;
&lt;p&gt;Right now DirectFlow is mostly a place where I experiment with podcast UX ideas in public. Maybe some of these ideas eventually become part of a bigger standalone application. Maybe some of them simply help existing podcast apps become better.&lt;/p&gt;
&lt;p&gt;Either way, I think podcast subscriptions should feel much more natural than they do today.&lt;/p&gt;
&lt;p&gt;I’ve been working with podcasts for many years now, both technically and creatively, and one thing I’ve seen again and again is how much friction still exists around subscriptions.&lt;/p&gt;
&lt;p&gt;I’ve had to explain RSS feeds to listeners countless times. I’ve had to explain how podcast apps work, how to copy a feed URL, where to paste it, why some apps behave differently, why searching sometimes fails, why a podcast appears on one platform but not another, and so on.&lt;/p&gt;
&lt;p&gt;And every extra step loses people.&lt;/p&gt;
&lt;p&gt;You can literally watch listeners disappear during the subscription process. Someone gets interested in a podcast, but before they actually subscribe, they already have to understand too many things that normal users should never have to think about. RSS feeds, directories, platform differences, search indexing, manual imports — all of this still leaks into the user experience.&lt;/p&gt;
&lt;p&gt;That’s one of the main reasons I started building DirectFlow.&lt;/p&gt;
&lt;p&gt;And honestly, I think I may have finally found a very simple solution to this problem.&lt;/p&gt;
&lt;p&gt;Imagine if podcast apps like Pocket Casts, Apple Podcasts, Fountain, Overcast, or others simply added a QR scanner inside the app itself. A person scans a QR code from a podcast website, poster, video, or screen — and the app immediately discovers the podcast feed and subscribes them natively.&lt;/p&gt;
&lt;p&gt;Or imagine someone simply pasting a podcast website URL into a podcast app, and the app instantly showing the podcast page and follow button automatically, without requiring the user to understand RSS at all. That changes the entire subscription experience.&lt;/p&gt;
&lt;p&gt;The really interesting part is that subscriptions would finally happen directly through the podcast’s actual open feed itself, instead of depending entirely on platform-specific IDs, internal databases, or centralized discovery systems.&lt;/p&gt;
&lt;p&gt;The infrastructure already exists. Most podcast websites already expose their feeds publicly. Applications simply need to discover and use them more naturally. I think it will be very interesting to watch how podcast subscriptions evolve from here.&lt;/p&gt;
&lt;p&gt;Podcasting has been a huge part of my life for a long time. I’ve created podcasts myself, worked with podcasters, built podcast-related tools, explained podcast infrastructure to companies and creators, and spent years thinking about how open podcasting actually works underneath the surface.&lt;/p&gt;
&lt;p&gt;I’m even writing a book about podcasting right now because I think there are still many things about this medium that people outside the industry do not fully see yet.&lt;/p&gt;
&lt;p&gt;That’s also why DirectFlow is not just a random experiment for me. It comes from years of seeing the same UX problems repeat over and over again, and finally trying to build a simpler approach around the infrastructure podcasting already has.&lt;/p&gt;
</description>
      <pubDate>Thu, 14 May 2026 17:00:00 PDT</pubDate>
      <dc:creator>Yeldar Kudaibergen</dc:creator>
      <guid>https://yeldar.org/blog/df/</guid>
    </item>
    <item>
      <title>QRX means Quick response experience</title>
      <link>https://yeldar.org/blog/qrx/</link>
      <description>&lt;p&gt;Right now I’m working on the idea that people should be able to follow sources directly, without platforms or intermediaries in between. And this is already possible. You can already subscribe to podcasts through &lt;a href=&quot;https://directflow.app/&quot;&gt;DirectFlow&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Originally, I built DirectFlow so that a person could paste almost any website URL into a form, and DirectFlow would immediately discover the main flow of that site and subscribe to it. I started using the word “flow” because it felt broader than just “feed.” A feed is more of a technical format. A flow can also represent other machine-readable relationships.&lt;/p&gt;
&lt;p&gt;At some point I started thinking: what if a user simply scanned a website QR code, and DirectFlow instantly subscribed them to it? After all, DirectFlow already discovers the main flow of a website just from its URL. The system does not really care how that URL arrives - whether it was pasted into a form, shared from another app, typed manually, or... scanned from a QR code. That was the moment everything clicked.&lt;/p&gt;
&lt;p&gt;I realized I had accidentally solved one of the fundamental UX problems of podcasting: subscription. Suddenly, subscribing to a podcast could become as natural and lightweight as following someone on social media for the first time.&lt;/p&gt;
&lt;p&gt;Then I started looking around to see who else was thinking about QR codes this way. There were hints of similar ideas, but almost all of them had the same limitation: a QR code always triggered one fixed interpretation or one predefined action.&lt;/p&gt;
&lt;p&gt;In my case, the QR code itself stayed completely unchanged, but what applications could discover from it was no longer limited. If a website exposes machine-readable flows in its HTML head or HTTP headers, then different applications can discover completely different things from the exact same URL.&lt;/p&gt;
&lt;p&gt;For example, &lt;em&gt;https://example.com&lt;/em&gt; may expose a podcast RSS feed in its head metadata. If a podcast player scans that website QR code, it can automatically discover the feed and immediately offer the user a native “Follow podcast” experience. This scenario already works in DirectFlow using the &lt;a href=&quot;https://www.npmjs.com/package/@qrxcode/js&quot;&gt;QRX JavaScript SDK&lt;/a&gt;. That was the moment &lt;a href=&quot;https://qrx.dev/&quot;&gt;QRX&lt;/a&gt; became a separate project outside of DirectFlow.&lt;/p&gt;
&lt;p&gt;About the name. At first, the working name was QR-UX, because this idea is really about changing the user experience around QR codes without changing the QR code itself or the existing web infrastructure behind it. The QR code, the URL, and the website all stay the same. What changes is the experience applications can provide after scanning. Later the name became QRX. And eventually I realized it could naturally stand for &lt;em&gt;Quick Response Experience&lt;/em&gt;, because that is exactly what this approach changes: the experience of interacting with QR codes and URLs.&lt;/p&gt;
&lt;p&gt;I’ll continue writing about QRX here. Over the last week I’ve accumulated quite a lot of thoughts, observations, and already a bit of real implementation experience.&lt;/p&gt;
</description>
      <pubDate>Thu, 14 May 2026 17:00:00 PDT</pubDate>
      <dc:creator>Yeldar Kudaibergen</dc:creator>
      <guid>https://yeldar.org/blog/qrx/</guid>
    </item>
    <item>
      <title>Learn programming through undestanding</title>
      <link>https://yeldar.org/blog/lptu/</link>
      <description>&lt;p&gt;Sometimes I think about writing a blog post and then suddenly it feels like: “this is so banal”, “who would even care about this, let alone find it useful.” But still, let me try to explain what I’m experiencing right now in my programming journey.&lt;/p&gt;
&lt;p&gt;It’s strange. I realized that even though I already built ProxyFeed (backend in TS), it feels like I’ve never actually programmed before. It turned out that, in my current understanding, programming is when you write code yourself and run the program to see whether it works or not. And a person becomes a programmer exactly at that moment. A professional programmer becomes one when somebody pays them for it — usually money, by agreement.&lt;/p&gt;
&lt;p&gt;So yeah, I came up with something again. And I’m 100% going to build it. It’s one of those “projects” that simply deserves to exist, and &lt;a href=&quot;https://yeldar.org/blog/ai-study-buddy/&quot;&gt;my buddy&lt;/a&gt; confirmed it too. The funniest and most dramatic part is that I literally cannot not build it. So yes, in a more or less sane state of mind, I’m voluntarily getting myself into this story. Let’s see what happens.&lt;/p&gt;
&lt;p&gt;Even though I had never written a single line of Go in my life, I decided that Go would become the main backend language for &lt;a href=&quot;https://directflow.app/&quot;&gt;DirectFlow&lt;/a&gt;. I looked at the situation from many different angles and it seems that, at this moment, Go is the most suitable language for me. I even realized why. It’s strange to understand the difference between TypeScript and Go not only through syntax, but through the character, logic, explanations, and style of the language itself.&lt;/p&gt;
&lt;p&gt;I was immediately surprised that &lt;code&gt;:=&lt;/code&gt; in Go means both creating and assigning a value. Previously, I had creation and assignment both through &lt;code&gt;=&lt;/code&gt;, meaning one action represented two completely different things. Anyway, I liked Go because it feels like the language is built similarly to how I am as a person. I don’t fully understand it yet myself, but I like that it works.&lt;/p&gt;
&lt;p&gt;My next realization is that we learn programming by doing it. By writing code, creating programs, and running them. Previously, it felt to me like first you learn, and &lt;em&gt;only&lt;/em&gt; then you program. As if you cannot program until you’ve learned how. Sounds logical, right?&lt;/p&gt;
&lt;p&gt;But here’s what I discovered: computers do not grow naturally like trees. Humans created computers, languages, and embedded their logic into them. Our job is simply to &lt;em&gt;understand&lt;/em&gt; how things work — not memorize syntax. Then write code. Realize why it&#39;s wrong I mean error. Again and again. That’s it.&lt;/p&gt;
&lt;p&gt;But here’s what I discovered: computers do not grow naturally like trees. Humans created computers, programming languages, and embedded their logic into them. Our job is simply to understand how things work, not memorize syntax. Then write code. See why it’s wrong, fix the error, understand it. Then write code again. Again and again. That’s what a developer’s job is, right? And apparently, this is how a person becomes a programmer. You simply write code, understand it, and when you run the program — you are a programmer.&lt;/p&gt;
&lt;p&gt;I partially understand that the “writing code” part may sound old-fashioned now, especially when it feels like AI writes code for everyone. But this is my current understanding, and I’m sure it will evolve further. And I will definitely keep writing about it here.&lt;/p&gt;
&lt;p&gt;Follow my blog directly on DirectFlow: &lt;a href=&quot;https://directflow.app/follow?url=https://yeldar.org&quot;&gt;https://directflow.app/follow?url=https://yeldar.org&lt;/a&gt;&lt;/p&gt;
</description>
      <pubDate>Sat, 09 May 2026 17:00:00 PDT</pubDate>
      <dc:creator>Yeldar Kudaibergen</dc:creator>
      <guid>https://yeldar.org/blog/lptu/</guid>
    </item>
</channel>
</rss>