Skip to content

Journal: April 2025

Journal for April 2025

Monthly retrospective

Trying various ways to reduce the bottleneck in the AI-human interaction loop.

While thinking about Common Misconceptions about Agile Design, I had a small realization(?) and wrote up some thoughts on software engineering in the AI era.

Journal

2025-04-25

Thought about software engineering in the AI era.

2025-04-24

Wrote up Common Misconceptions about Agile Design.


Praising a technology as amazingly good for every X except your own specialty Y, as a way of protecting Y from replacement while showing that you’re not closed-minded about new technology.

Looking back, I’ve often seen this pattern. I should watch for it in myself too.

2025-04-21

There are many free LLMs, but I’ve been too lazy to use them, so I made RSS feeds through which AI gives me something to think about every day. One offers philosophical questions, the other business ideas. I should keep adjusting the prompts to get better writing.

Next, I should make something that filters or summarizes noisy RSS feeds. Finding ways to reduce what I need to read seems important.

One attempt to reduce the bottleneck in the AI-human interaction loop.

2025-04-20

Canceled my paid ChatGPT and Claude subscriptions and subscribed to Google One AI Premium to try Gemini Advanced and Notebook LM Plus.

Also testing Open WebUI. I like that it connects to Ollama to mix in local models, offers hundreds of models through OpenRouter, and quickly incorporates various new experiments.

Related records for reference:

  • Subscribed to ChatGPT for about two years and two months, starting February 11, 2023.
  • Subscribed to Claude for about one year and one month, starting March 7, 2024.
  • Used GitHub Copilot from July 15, 2021, then switched to Cursor on September 8, 2024.

2025-04-18

Listened to the Is human data enough? conversation. Since it introduced Welcome to the Era of Experience, I read that article too.

2025-04-17

Made a Hammerspoon script. Select any text and ask it to translate (ko, en), shorten (summarize), expand (expand), correct (proofread), explain (explain), and so on. Commands can be connected like Unix pipelines. For example, summarize ko summarizes, then translates into Korean.

See Hammerspoon LLM script for the explanation and code.

2025-04-16

🎗️ The eleventh anniversary of the Sewol ferry disaster.


Anthropic’s “Model Behavior Architect” job posting is interesting.

  • Python and TDD
  • Data science and data engineering
  • Prompt engineering and metaprompts (prompts that make prompts)
  • Preference for backgrounds in ethics, moral philosophy, and moral psychology

2025-04-15

OpenAI released more new models (4.1, 4.1-mini, 4.1-nano). Version 4.1 after 4.5…

Anyway, it’s striking that cached input for the 4.1 series costs half as much relative to the standard rate as for the 4o series (1/2 → 1/4). 4.1-mini performs almost like 4o (on benchmarks) at a quarter of the price. Combined, the cost has dropped to about one-eighth. On cost alone, there is less and less reason to use local models. Open-weight models remain important for security and other reasons, of course.

A prompt engineering guide for the 4.1 series was also released.


Bought a 15-inch MacBook Air.

2025-04-14

Yesterday I participated as an interviewee in user research on generative AI usage. The interviewer asked many good questions that helped me reflect on my behavior. My favorite was “What do you do while generative AI is generating a response?”

There is a lot of waiting, especially in agentic coding, but I had never consciously considered what I do while waiting or what would benefit me.

Looking back:

  • When ChatGPT first appeared, I was too fascinated to feel I was waiting. It also streams generated tokens one by one, and since generation is usually faster than I can read, there was effectively no waiting time.
  • When reasoning models first appeared, watching the reasoning was fascinating enough that I didn’t feel I was waiting. After about three days, the novelty wore off and I began to feel the wait. Deep research tools are similar, as is agentic coding.

So what do I do while waiting?

  • A few times I’ve planned around the waits: start Deep research, shower, send the generated report to Notebook LM, then dry my hair while it generates a podcast. But I’m not that meticulous about everything, so I only did it a few times.
  • While an agent works during agentic coding, I get distracted by Twitter and other things. Considering the cost of switching contexts, I’m not sure this helps.

What would be beneficial to do while waiting? I don’t have an answer, but…

  • If I must wait, I should consider something I can do while preserving context.
  • The need to wait arises because the length of time an agent can work alone is awkward. If it were very short (under 30 seconds?), it probably wouldn’t feel like waiting; if very long (over 30 minutes?), I’d properly switch to another task. Right now it’s awkwardly in between (about one to five minutes?). See the paper on the maximum time agents can work alone: Measuring AI Ability to Complete Long Tasks.

2025-04-12

To try agentic coding more seriously, I registered three(?) custom agents in Cursor.

  • Planning agent — Planner: When I, the developer, give rough instructions, it makes a detailed, concrete plan. The plan includes a TODO list; I ask that each item be small enough to cover with one or two unit tests. I have it save the plan in PLAN.md.
  • Implementation agent — Coder: Refers to PLAN.md and implements one TODO item at a time using test-driven development. I tried having it refactor too, but it often failed to follow through, so I split refactoring into a separate agent.
  • Refactoring agent — Designer: Uses git diff to inspect the changed code, then refactors it.

My finger joints are less tired and my brain hurts less. It’s also nice to do something else while it works. But whether less mental strain is good in the long term needs thought (Values in the process). I should choose mentally demanding “other things.”

See Agentic coding experiment 1 for details.

2025-04-06

Found two pieces I wrote in 2021 and moved them into the wiki:


Publishing my personal wiki on the web created an unexpected problem. Images I’d captured from books I bought and organized for my own use became public, infringing copyright. For now, I hurriedly changed things to prevent search bots from indexing anything except articles for which I explicitly allow indexing.

2025-04-04

Yoon Suk Yeol has finally been removed from office unanimously.

2025-04-02

Tried Replit for about two hours. It differs from Cursor in managing the agent’s execution environment well with nix and letting the agent work alone longer. Both matter, but the biggest difference is UX. It hides the file tree and code editor somewhat and puts the chat and preview front and center, making it approachable for nondevelopers.

The design for encouraging payment is interesting too. First it shows you something built and working, but deploying it costs money. You can connect the generated code to git or download a zip, but deployment is likely a major hurdle for nondevelopers vibe coding with prompts, so it seems a decent strategy.

Created
Updated

Machine-translated from the Korean original.

2026 © ak | markdown | 한국어