Daily Reading List – June 26, 2025 (#576)

Another wild day. I’m doing some research into what other people think modern, AI-driven coding looks like. May turn my findings into a blog post. Either way, a new work style is forming. [blog] Choosing the Right Deployment Path for Your Google ADK Agents. Fantastic post from Ayo that explores three agent hosts with different value propositions. You’ll likely debate their three types of platforms, regardless of which cloud you use. ...

June 26, 2025

Database Indexing Demystified: Index Types and Use-Cases

When query performance degrades, most engineers tend to reach for the application code first to identify issues.  However, the root cause can also reside closer to the data at the storage level, and indexing could be the difference between a targeted lookup and a blind table scan that negatively impacts performance. With the right index in place, a query that once sifted through millions of rows can return results in milliseconds. ...

June 26, 2025

Dew Drop – June 26, 2025 (#4447)

Top Links Better Models, Smarter Defaults: Claude Sonnet 4, GPT-4.1, and More Control in Visual Studio (Rhea Patel) Intro To Uno Platform – Full Cross-Platform C# Development (Tim Corey) Dev Proxy v0.29 with refactored architecture, MCP server, and exposed LM prompts (Waldek Mastykarz & Garry Trinder) Gemini CLI: your open-source AI agent (Ryan J. Salva) TrailBlazor Spotlight: Syncfusion Provides Valuable .NET Insights for Developers (Meena Alagiah) From pair to peer programmer: Our vision for agentic workflows in GitHub Copilot (Tim Rogers) ...

June 26, 2025

Orange Me2eets: We made an end-to-end encrypted video calling app and it was easy

Developing a new video conferencing application often begins with a peer-to-peer setup using WebRTC, facilitating direct data exchange between clients. While effective for small demonstrations, this method encounters scalability hurdles with increased participants. The data transmission load for each client escalates significantly in proportion to the number of users, as each client is required to send data to every other client except themselves (n-1). In the scaling of video conferencing applications, Selective Forwarding Units (SFUs) are essential. Essentially a media stream routing hub, an SFU receives media and data flows from participants and intelligently determines which streams to forward. By strategically distributing media based on network conditions and participant needs, this mechanism minimizes bandwidth usage and greatly enhances scalability. Nearly every video conferencing application today uses SFUs. ...

June 26, 2025

Rider 2025.2 EAP 7: Low-Level Exception Suppression and Other Updates for Debugging Games

Rider 2025.2 is shaping up to be an exciting release for game developers, no matter which engine you work with. Over the last few EAP builds, we’ve been rolling out targeted improvements to make debugging smoother, faster, and more reliable, whether you’re building with Unreal Engine, Unity, Godot, or custom C++ frameworks. In the latest EAP 7 build, we’ve added low-level exception suppression to give you more control when dealing with manual breakpoints and assertions commonly found in game projects. But that’s just one piece of the puzzle. Let’s take a look at how Rider 2025.2 is evolving into a more powerful, engine-agnostic debugger for your games. ...

June 26, 2025

Russian Internet users are unable to access the open Internet

Since June 9, 2025, Internet users located in Russia and connecting to web services protected by Cloudflare have been throttled by Russian Internet Service Providers (ISPs). As the throttling is being applied by local ISPs, the action is outside of Cloudflare’s control and we are unable, at this time, to restore reliable, high performance access to Cloudflare products and protected websites for Russian users in a lawful manner. Internal data analysis suggests that the throttling allows Internet users to load only the first 16 KB of any web asset, rendering most web navigation impossible. ...

June 26, 2025

Simpler XAML in .NET MAUI 10

Building UI in .NET MAUI with XAML continues to be the most popular approach. It’s easy to see the nesting structure of your UI, works for most use cases with hot reload, and it supports powerful state flow with data binding. One of the downsides is how verbose it can become. Every page requires you to declare the namespaces for any types used, provide prefixes for them, and of course use them. You’re likely a better developer than I am, but I very often use a different prefix for the same namespace in different files making quite a mess. ...

June 26, 2025

The Gemini CLI might change how I work. Here are four prompts that prove it.

Yesterday morning, we took the wraps off one of the most interesting Google releases of 2025. The Gemini CLI is here, giving you nearly unlimited access to Gemini from directly within the terminal. This is a new space, but there are other great solutions already out there. Why is this different? Yes, it’s good at multi-step reasoning, code generation, and creative tasks. Build apps, fix code, parse images, build slides, analyze content, or whatever. But what’s truly unique is that It’s fully open source, no cost to use, usable anywhere, and super extensible. Use Gemini 2.5 Pro’s massive context window (1m tokens), multimodality, and strong reasoning ability to do some amazing stuff. ...

June 26, 2025

Building agents with OpenAI and Cloudflare’s Agents SDK

<div> <h2>What even <i>is</i> an Agents SDK?</h2> <a href="#what-even-is-an-agents-sdk"> </a> </div> <p>The AI landscape is evolving at an incredible pace, and with it, the tools and platforms available to developers are becoming more powerful and interconnected than ever. Here at Cloudflare, we're genuinely passionate about empowering you to build the next generation of applications, and that absolutely includes intelligent agents that can reason, act, and interact with the world.</p><p>When we talk about "<b>Agents SDKs</b>", it can sometimes feel a bit… fuzzy. Some SDKs (software development kits) <b>described as 'agent' SDKs</b> are really about providing frameworks for tool calling and interacting with models. They're fantastic for defining an agent's "brain" – its intelligence, its ability to reason, and how it uses external tools. Here’s the thing: all these agents need a place to actually run. Then there's what we offer at Cloudflare: <a href="https://developers.cloudflare.com/agents/"><u>an SDK purpose-built to provide a seamless execution layer for agents</u></a>. While orchestration frameworks define how agents think, our SDK focuses on where they run, abstracting away infrastructure to enable persistent, scalable execution across our global network.</p><p>Think of it as the ultimate shell, the place where any agent, defined by any agent SDK (like the powerful new OpenAI Agents SDK), can truly live, persist, and run at global scale.</p><p>We’ve chosen OpenAI’s Agents SDK for this example, but the infrastructure is not specific to it. The execution layer is designed to integrate with any agent runtime.</p><p>That’s what this post is about: what we built, what we learned, and the design patterns that emerged from fusing these two pieces together.</p> <div> <h2>Why use two SDKs?</h2> <a href="#why-use-two-sdks"> </a> </div> <p><a href="https://openai.github.io/openai-agents-js/"><u>OpenAI’s Agents SDK</u></a> gives you the <i>agent</i>: a reasoning loop, tool definitions, and memory abstraction. But it assumes you bring your own runtime and state.</p><p><a href="https://developers.cloudflare.com/agents/"><u>Cloudflare’s Agents SDK</u></a> gives you the <i>environment</i>: a persistent object on our network with identity, state, and built-in concurrency control. But it doesn’t tell you how your agent should behave.</p><p>By combining them, we get a clear split:</p><ul><li><p><b>OpenAI</b>: cognition, planning, tool orchestration</p></li><li><p><b>Cloudflare</b>: location, identity, memory, execution</p></li></ul><p>This separation of concerns let us stay focused on logic, not glue code.</p> <div> <h2>What you can build with persistent agents</h2> <a href="#what-you-can-build-with-persistent-agents"> </a> </div> <p>Cloudflare <a href="https://developers.cloudflare.com/durable-objects/"><u>Durable Objects</u></a> let agents go beyond simple, stateless functions. They can persist memory, coordinate across workflows, and respond in real time. Combined with the OpenAI Agents SDK, this enables systems that reason, remember, and adapt over time.</p><p>Here are three architectural patterns that show how agents can be composed, guided, and connected:</p><p><b>Multi-agent systems: </b>Divide responsibilities across specialized agents that collaborate on tasks.</p><p><b>Human-in-the-loop: </b>Let agents plan independently but wait for human input at key decision points.</p><p><b>Addressable agents: </b>Make agents reachable through real-world interfaces like phone calls or WebSockets.</p> <div> <h3>Multi-agent systems </h3> <a href="#multi-agent-systems"> </a> </div> <p>Multi-agent systems let you break down a task into specialized agents that handle distinct responsibilities. In the example below, a triage agent routes questions to either a history or math tutor based on the query. Each agent has its own memory, logic, and instructions. With Cloudflare <a href="https://developers.cloudflare.com/durable-objects/"><u>Durable Objects</u></a>, these agents persist across sessions and can coordinate responses, making it easy to build systems that feel modular but work together intelligently.</p> <pre><code>export class MyAgent extends Agent { async onRequest() { const historyTutorAgent = new Agent({ instructions: “You provide assistance with historical queries. Explain important events and context clearly.”, name: “History Tutor”, }); ...

June 25, 2025

Daily Reading List – June 25, 2025 (#575)

We’ve been building up to today’s launch of the Gemini CLI. There were some inevitable hiccups on launch day, but it’s fun to be part of teams that make things people like using. Give it a try! [blog] Gemini CLI: your open-source AI agent. This is a huge deal. Open source, free to use, lightweight, and super extensible. This is another reason I think software engineering is changing forever. Press coverage here, here, here, and here. ...

June 25, 2025