<?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: Kevin Hudson</title>
    <description>The latest articles on DEV Community by Kevin Hudson (@kevinbuildsapps).</description>
    <link>https://dev.to/kevinbuildsapps</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%2F4016945%2F2835cbe2-28d2-46e5-8e84-2cef6754c9a7.jpg</url>
      <title>DEV Community: Kevin Hudson</title>
      <link>https://dev.to/kevinbuildsapps</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/kevinbuildsapps"/>
    <language>en</language>
    <item>
      <title>Capture Fast, Commit Carefully: A UX Lesson From Building an iPhone App</title>
      <dc:creator>Kevin Hudson</dc:creator>
      <pubDate>Mon, 06 Jul 2026 04:43:37 +0000</pubDate>
      <link>https://dev.to/kevinbuildsapps/capture-fast-commit-carefully-a-ux-lesson-from-building-an-iphone-app-30o3</link>
      <guid>https://dev.to/kevinbuildsapps/capture-fast-commit-carefully-a-ux-lesson-from-building-an-iphone-app-30o3</guid>
      <description>&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%2Ft352v1uj2dmlpu4nv513.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%2Ft352v1uj2dmlpu4nv513.png" alt="Doneward review social card showing iPhone screenshots and a summary of the voice-to-action app." width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Most productivity apps assume the user has already done some organizing.&lt;/p&gt;

&lt;p&gt;They ask for a title.&lt;/p&gt;

&lt;p&gt;They ask for a date.&lt;/p&gt;

&lt;p&gt;They ask for a destination.&lt;/p&gt;

&lt;p&gt;That works when the user already knows what the thing is. A task goes in a task app. A note goes in a notes app. A meeting goes in a calendar.&lt;/p&gt;

&lt;p&gt;But a lot of useful thoughts arrive before they are that clean.&lt;/p&gt;

&lt;p&gt;That was the product problem I kept running into while building Doneward, an iPhone app for turning spoken thoughts into next steps.&lt;/p&gt;

&lt;p&gt;The important UX lesson was simple:&lt;/p&gt;

&lt;p&gt;Capture should be fast.&lt;/p&gt;

&lt;p&gt;Commit should be careful.&lt;/p&gt;

&lt;p&gt;Those two moments should not always be the same moment.&lt;/p&gt;

&lt;h2&gt;
  
  
  Fast Capture Is Not the Whole Feature
&lt;/h2&gt;

&lt;p&gt;Voice input makes capture feel easy.&lt;/p&gt;

&lt;p&gt;That is useful, but it can hide a design trap. If the app is fast at hearing the user, it is tempting to make it fast at acting too.&lt;/p&gt;

&lt;p&gt;That sounds great in a demo.&lt;/p&gt;

&lt;p&gt;It can feel less great in daily use.&lt;/p&gt;

&lt;p&gt;When a product creates a reminder, calendar event, note, checklist, or draft, it is no longer just storing text. It is changing the user's day. That is a different level of trust.&lt;/p&gt;

&lt;p&gt;The user might be speaking while walking, driving, cleaning up the kitchen, or trying to leave the house. The first version of the thought may be rough. It may contain more than one thing. It may include a detail that matters, plus a half-formed action, plus something that should only stay as reference.&lt;/p&gt;

&lt;p&gt;If the app acts too early, the user has to clean up after it.&lt;/p&gt;

&lt;p&gt;That is not helpful automation. That is just moving the work around.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Better Boundary
&lt;/h2&gt;

&lt;p&gt;The boundary I kept coming back to was this:&lt;/p&gt;

&lt;p&gt;Let the first step be loose.&lt;/p&gt;

&lt;p&gt;Let the final step be reviewed.&lt;/p&gt;

&lt;p&gt;That one boundary changed how I thought about the product.&lt;/p&gt;

&lt;p&gt;The recording experience should not ask the user to decide the perfect structure first. The user should be able to say the thing naturally.&lt;/p&gt;

&lt;p&gt;The review experience should slow down just enough to show what the app found and what it thinks can happen next.&lt;/p&gt;

&lt;p&gt;That gives the user a chance to say yes, ignore something, or keep a piece as reference.&lt;/p&gt;

&lt;p&gt;It is less magical than letting the app send everything off on its own, but it feels more trustworthy.&lt;/p&gt;

&lt;h2&gt;
  
  
  Review Is a Product Feature
&lt;/h2&gt;

&lt;p&gt;A review step can sound boring.&lt;/p&gt;

&lt;p&gt;It is not.&lt;/p&gt;

&lt;p&gt;For apps that touch real user systems, review is part of the value.&lt;/p&gt;

&lt;p&gt;If a photo editor makes a bad suggestion, you undo it. If a writing tool drafts a sentence you do not like, you delete it. If a productivity app puts the wrong thing on your calendar, the mistake follows you around.&lt;/p&gt;

&lt;p&gt;That is why I think review belongs close to the action.&lt;/p&gt;

&lt;p&gt;Not as a giant confirmation wall.&lt;/p&gt;

&lt;p&gt;Not as a warning dialog that makes the app feel nervous.&lt;/p&gt;

&lt;p&gt;Just enough of a pause for the user to understand what is about to happen.&lt;/p&gt;

&lt;p&gt;The product should say, "Here is what I found. What do you want to do with it?"&lt;/p&gt;

&lt;p&gt;That tone matters.&lt;/p&gt;

&lt;p&gt;It keeps the app useful without making it feel like it is taking over.&lt;/p&gt;

&lt;h2&gt;
  
  
  What This Changed
&lt;/h2&gt;

&lt;p&gt;This design choice affected more than one screen.&lt;/p&gt;

&lt;p&gt;It shaped the way I thought about examples, onboarding, empty states, and marketing copy.&lt;/p&gt;

&lt;p&gt;I stopped trying to explain the app as if it was a magic command system.&lt;/p&gt;

&lt;p&gt;That was the wrong frame.&lt;/p&gt;

&lt;p&gt;The better frame was a little more ordinary:&lt;/p&gt;

&lt;p&gt;People remember useful things at inconvenient times.&lt;/p&gt;

&lt;p&gt;Speaking is often faster than typing.&lt;/p&gt;

&lt;p&gt;The app can help sort the thought.&lt;/p&gt;

&lt;p&gt;The user still gets to decide what happens.&lt;/p&gt;

&lt;p&gt;That is a calmer product promise, but I trust it more.&lt;/p&gt;

&lt;p&gt;It also keeps the app from becoming too broad. Once you say "the app can do anything from your voice," the product surface gets blurry very quickly. Once you say "the app helps you capture messy thoughts and review the next steps," the edge is easier to understand.&lt;/p&gt;

&lt;p&gt;Clear edges are underrated.&lt;/p&gt;

&lt;h2&gt;
  
  
  A Lesson I Will Reuse
&lt;/h2&gt;

&lt;p&gt;The biggest takeaway for me is that speed is not always the highest form of convenience.&lt;/p&gt;

&lt;p&gt;Sometimes convenience is being able to move quickly at the beginning, then slow down at the exact point where a mistake would matter.&lt;/p&gt;

&lt;p&gt;That applies beyond voice apps.&lt;/p&gt;

&lt;p&gt;It applies to anything that turns rough user input into structured output. It could be scheduling, writing, project planning, personal finance, customer support, or any product where the user starts with a messy intention and expects the software to help shape it.&lt;/p&gt;

&lt;p&gt;The useful question is not only:&lt;/p&gt;

&lt;p&gt;How do we reduce friction?&lt;/p&gt;

&lt;p&gt;It is also:&lt;/p&gt;

&lt;p&gt;Where should friction stay because it protects trust?&lt;/p&gt;

&lt;p&gt;That question made Doneward better.&lt;/p&gt;

&lt;p&gt;I wrote a separate walkthrough with screenshots here:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://doneward.app/blog/doneward-review/" rel="noopener noreferrer"&gt;https://doneward.app/blog/doneward-review/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;That post shows the actual Doneward flow and where it helps compared with using Siri, Reminders, Calendar, Notes, or Voice Memos by themselves.&lt;/p&gt;

</description>
      <category>productivity</category>
      <category>ios</category>
      <category>indiehackers</category>
      <category>ux</category>
    </item>
  </channel>
</rss>
