<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Panu Horsmalahti</title>
    <description>The latest articles on DEV Community by Panu Horsmalahti (@panuhorsmalahti).</description>
    <link>https://dev.to/panuhorsmalahti</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4103717%2Fb96d0f67-5f0d-45c5-b8ba-f60375ac90d8.jpg</url>
      <title>DEV Community: Panu Horsmalahti</title>
      <link>https://dev.to/panuhorsmalahti</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/panuhorsmalahti"/>
    <language>en</language>
    <item>
      <title>Agent user interfaces should be based on DOM, not chat</title>
      <dc:creator>Panu Horsmalahti</dc:creator>
      <pubDate>Fri, 02 Oct 2026 13:20:19 +0000</pubDate>
      <link>https://dev.to/panuhorsmalahti/agent-user-interfaces-should-be-based-on-dom-not-chat-1a3a</link>
      <guid>https://dev.to/panuhorsmalahti/agent-user-interfaces-should-be-based-on-dom-not-chat-1a3a</guid>
      <description>&lt;p&gt;Essentially all interfaces to agents are copies of each other: display some kind of history of chat/text messages. The issue with this is that it's based on "history", even though by default users don't need to scroll up and down the history, but instead want to receive the information and move on. The "chat" concept has been expanded by adding images and other rich media, even small "Apps" to the chat history.&lt;/p&gt;

&lt;p&gt;The natural evolution of this interface is leaving out the history and simply letting the agent control what information should be visualized for the user, and in what form. We can easily use DOM for this simply because agents are really good at using that interface. The agent can invent ad-hoc components required for the visualization. The exact technical solution, however, is not that important.&lt;/p&gt;

&lt;p&gt;I made a prototype for such an interface and it looks like this:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fb0xpmfeg8nj4s3yqozgk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fb0xpmfeg8nj4s3yqozgk.png" alt=" " width="800" height="388"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The user can talk with the agent using voice chat and natural language, and at any given time the agent can choose to show whatever is requested by the user. After the user has seen the information, the screen can be "cleared".&lt;/p&gt;

&lt;p&gt;If we try to look even more to the future, computing will likely evolve into a "one app" concept, where you only have one interface and one app to talk with the agent, and the agent will do whatever is the task. This will of course require us to think through use cases from the "first principles" instead of trying to force existing apps into this agentic UI.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>agents</category>
      <category>llm</category>
      <category>chatgpt</category>
    </item>
    <item>
      <title>Will software ever be free?</title>
      <dc:creator>Panu Horsmalahti</dc:creator>
      <pubDate>Tue, 01 Sep 2026 05:55:43 +0000</pubDate>
      <link>https://dev.to/panuhorsmalahti/will-software-ever-be-free-209a</link>
      <guid>https://dev.to/panuhorsmalahti/will-software-ever-be-free-209a</guid>
      <description>&lt;p&gt;Lets assume that in the near future the following will be true:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Coding agents are better than 99% of software engineers&lt;/li&gt;
&lt;li&gt;Tokens are practically free&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If and when we get there, will software be "solved"? Will code become free to produce at a high quality? My answer is.. not quite, and the reason is data.&lt;/p&gt;

&lt;p&gt;I don't just mean "big data", the data that large companies utilise to steer their services. I also mean "small data". Small data are the large number of small decision one has to make when creating software. This is called the "spec".&lt;/p&gt;

&lt;p&gt;LLMs can of course make these decisions. And once models get better, they ought to get better at it. However, I don't think training data will include all the possible decisions for all software. Some spec will remain essentially proprietary. This means humans will have to make the choices, and this will take time and effort.&lt;/p&gt;

&lt;p&gt;This time and effort will therefore impose a lower bound for the price of software. Companies will of course find the right answers over time, but the price of software will remain non-free.&lt;/p&gt;

</description>
      <category>ai</category>
      <category>llm</category>
      <category>software</category>
    </item>
  </channel>
</rss>
