<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Development on Shin Li</title><link>https://shin13.github.io/categories/development/</link><description>Recent content in Development on Shin Li</description><generator>Hugo</generator><language>en-US</language><copyright>Shin Li</copyright><lastBuildDate>Tue, 12 May 2026 06:53:59 +0800</lastBuildDate><atom:link href="https://shin13.github.io/categories/development/index.xml" rel="self" type="application/rss+xml"/><item><title>[Dev] Following a Goal with Codex (/goal)</title><link>https://shin13.github.io/notes/following-a-goal-with-codex/</link><pubDate>Tue, 12 May 2026 06:00:00 +0800</pubDate><guid>https://shin13.github.io/notes/following-a-goal-with-codex/</guid><description>&lt;p&gt;I have been looking for a clean way to explain what &lt;code&gt;/goal&lt;/code&gt; really does in Codex.&lt;/p&gt;
&lt;p&gt;The most useful mental model I found is simple: &lt;code&gt;/goal&lt;/code&gt; is not a prettier prompt. It is a working contract for long-running agent work. You are telling the agent what success looks like, what the boundary is, and how to know when to stop.&lt;/p&gt;
&lt;p&gt;That framing matters because the feature is built for work that outlives one turn. If the objective is durable enough, the agent can keep making progress, validate its own steps, and come back to you with a result instead of a half-finished thought.&lt;/p&gt;</description></item><item><title>[Dev] Learning from Matt Pocock’s Agent Skills</title><link>https://shin13.github.io/notes/learning-from-matt-pocock-agent-skills/</link><pubDate>Thu, 07 May 2026 08:53:00 +0800</pubDate><guid>https://shin13.github.io/notes/learning-from-matt-pocock-agent-skills/</guid><description>&lt;p&gt;I recently read Matt Pocock’s article, &lt;a href="https://www.aihero.dev/5-agent-skills-i-use-every-day"&gt;“5 Agent Skills I Use Every Day”&lt;/a&gt;. It resonated with my experience using coding agents such as Claude Sonnet and Claude Opus.&lt;/p&gt;
&lt;p&gt;The article gave me a clearer language for something I have been feeling: good agent work depends on good engineering process. We need better questions, written context, small slices, tests, and codebases that agents can understand.&lt;/p&gt;</description></item><item><title>[Dev] Trying Reflex (Python) for Web Apps</title><link>https://shin13.github.io/notes/trying-reflex-python-for-web-apps/</link><pubDate>Wed, 06 May 2026 03:10:00 +0800</pubDate><guid>https://shin13.github.io/notes/trying-reflex-python-for-web-apps/</guid><description>&lt;p&gt;I’ve been using Streamlit for quick internal tools and dashboards, but a colleague introduced me to Reflex, so I’m trying it out as another way to build Python web apps.&lt;/p&gt;
&lt;p&gt;What caught my attention is that Reflex is a full-stack Python framework for building web apps with UI, state, backend logic, data models, and deployment in one codebase. This is especially suitable for Python backend developers who seek to build more scalable and production-ready web apps.&lt;/p&gt;</description></item></channel></rss>