惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Stack Overflow Blog
Stack Overflow Blog
L
LangChain Blog
人人都是产品经理
人人都是产品经理
酷 壳 – CoolShell
酷 壳 – CoolShell
T
Tailwind CSS Blog
N
Netflix TechBlog - Medium
Microsoft Security Blog
Microsoft Security Blog
J
Java Code Geeks
博客园 - 【当耐特】
量子位
有赞技术团队
有赞技术团队
Jina AI
Jina AI
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园_首页
C
Check Point Blog
B
Blog RSS Feed
M
MIT News - Artificial intelligence
H
Help Net Security
雷峰网
雷峰网
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
博客园 - 聂微东
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
A
About on SuperTechFans
腾讯CDC

Hacker News - Newest: "AI"

AI can't read an investor deck AI as an attorney? Student uses ChatGPT, Gemini to sue UW over alleged racial discrimination Hacking MCP Servers in AI Systems – The Rug Pull: Tool Changes After Approval GitHub - MeepCastana/KubeezCut: Free Web based video editor Can AI judge journalism? A Thiel-backed startup says yes, even if it risks chilling whistleblowers Coming soon: 10 Things That Matter in AI Right Now DARPA built an AI to fact-check enemy weapons claims What explains heterogeneity in AI adoption? When AI Meets Muscle: Context-Aware Electrical Stimulation Promises a New Way to Guide Human Movements - Department of Computer Science AI Changed How We Build. It Did Not Change What Matters. Linux rules on using AI-generated code - Copilot is OK, but humans must take 'full responsibility for the… Meta spins up AI version of Mark Zuckerberg to engage with employees Code Mode: Let Your AI Write Programs, Not Just Call Tools | TanStack Blog GitHub - Delavalom/graft: Go framework for building AI agents. Type-safe tools, multi-provider (OpenAI, Anthropic, Gemini, Bedrock), zero vendor SDKs. India's TCS tops estimates, says new AI models did not dent services demand Gen Z's fading AI hype Strong feeling: we are in a folded AI reality GitHub - machinarii/total-recall-catalog: A reference catalog of latest knowledge retrieval, memory & RAG systems GitHub - mensfeld/code-on-incus: Give each AI agent its own isolated machine with root, Docker, and systemd. Active defense detects and stops threats automatically.. Quantization, LoRA, and the 8% Problem: Benchmarking Local LLMs for Production AI Iran war: We spoke to the man making Lego-style AI videos that experts say are powerful propaganda Powell, Bessent discussed Anthropic's Mythos AI cyber threat with major U.S. banks GitHub - immartian/bellamem: Persistent belief-graph memory for AI agents. Retrieves decisive context by importance — not recency, not RAG, not /compact. recursive-mode: The Repo-Native Operating System for AI Engineering After the attack on Sam Altman's home, will AI CEO's go on the offensive? The biggest advance in AI since the LLM Opus 4.6 vs GPT 5.4 One Prompt Unity World Generation Test “AI polls” are fake polls Client Challenge Can AI be a 'child of God'? Inside Anthropic's meeting with Christian leaders
Handcrafting a coffee app with love and AI
papermocha · 2026-05-20 · via Hacker News - Newest: "AI"

The app I’m building is Bean, a brewing journal for pour over coffee. My vision of Bean is for it to be your cheerful “Good morning!”. To embody the happy feeling I get each morning when I open my curtains to blue sunny skies or smell freshly ground coffee beans. However, the last two months with Claude have taught me that AI is great at cooking up working code, but terrible at brewing good UX.

Recently, my Instagram has been flooded with videos sponsored by Cursor and Claude about vibe-coding apps. Long gone are the days where app development was gatekept by software engineers. Now, anyone and everyone can take their ideas from a shower thought to reality with a sufficiently tiered AI subscription.

On the flip side, many of my fellow software engineers now complain that the days where “writing code was fun” are also long gone. Companies are pushing engineers to use more and more AI, and we all cynically joke over lunch about how AI is coming for our jobs. I even had an experience at a friend’s party where someone said “I’m sorry, but after months and months of it, I just can’t bear to talk about AI anymore”.

I myself have found it embarrassingly easy to outsource my coding grunt work to Claude as I develop Bean. Why would I spend time fiddling with CSS when I can just ask Claude to do it for me. In saying that, without human intervention, Claude’s idea of app aesthetics is far from the vision I described. I’ve tirelessly put in hours upon hours of work into researching coffee and tailoring the UX to the point where I believe that Bean is undeniably a handcrafted project.

That brings me to the point of this article:

In this new age where everyone is outsourcing development to AI, how can we still make handcrafted experiences?

Bean was created as an answer to my own pain points while learning to brew pour over coffee at home. Finding it hard to track all the steps and settings, I made a note card that turned into an app idea that turned into an obsession.

Over the last month, Bean has been all I could think about. Every time I passed a bag of coffee beans or a nice color I’d take a photo for color palette reference. Every time I caught up with a friend, I’d ask them if they drank coffee and what their routine was. I even spent many Saturday mornings folding clothes while bingeing videos on pour over coffee.

Bean app's color palette and inspiration

Hours were spent on Bean before AI even came into the picture. And I did it because I wanted it to be more than just a collection of coffee-related functions. The first step I took towards creating Bean was writing a one-pager summarizing the goal of the app, the app’s screens, the vibe and aesthetic I’m aiming for, and aspirational features that may be included later.

This is the introductory paragraph from it:

Bean is a pour-over coffee tracking app focused on specialty coffee, designed to make brews repeatable and intentional. The tagline is: ”Make good coffee, every day.” The app is built to feel ritualistic and deeply tied to the physical sensation of brewing — not just a utility, but something that enhances the ritual itself. It starts with pour-over and will expand to espresso in the future.

It wasn’t until after I had set this vision that I was ready to code. I started by feeding this one-pager into ChatGPT to plan out the app infrastructure and then fed the output into Claude to start building out the frontend.

I was very hands-on in the beginning: designing the database tables and API framework, organizing the component directory structure, and setting up a rudimentary design system for colors and spacing. Slowly but surely I felt my trust in Claude grow until it eventually had free rein over the technical implementation aside from major decisions like package imports.

Despite feeling like I could do a better job of writing the code, I instead decided to focus my time on micromanaging the UX. My reasoning was that the user doesn’t know whether I have beautiful code or not until it breaks, but they will feel the difference of beautiful design.

During one of my Saturday morning YouTube and clothes folding sessions, I learned about the James Hoffmann V60 recipe. This seemingly simple recipe heavily influenced how recipes are added in my app. The beginner recipe I was using previously only incrementally added water, but many other recipes like the James Hoffmann V60 recipe have other actions like waiting and swirling.

In response, I asked Claude to add wait and swirl options to the recipe form page. As expected, Claude diligently obliged by adding additional actions for each. What Claude failed to recognize was that this UX was limiting and could be simplified down to just a single custom actions option.

My in-app James Hoffmann V60 recipe

After each brew session, I had a lot of friction points and new ideas like this that I wanted to quickly iterate on. I was cautious of Claude taking feedback too literally without properly diagnosing the underlying issue, so I worked with Claude to create a skill called /user-feedback. The skill takes raw user feedback notes and infers the underlying need, friction, or broken mental model. It groups issues by root cause, asks follow-up questions, proposes solutions and then prioritizes them.

Tasks generated by my user feedback Claude skill

When I started brewing my pour overs with Bean, the prototype was clunky and missing a lot of features. Far from the frictionless companion I had envisioned. However, with each test brew I used the user feedback to improve it step by step until it reached a point where I’ve started sharing it with friends and it has become much more convenient than brewing without the app.

What this experience has taught me is that AI may have made each iteration easier to implement, but it’s hard for it to know how to improve the UX when it isn’t the one using the app and making the coffee.

In today’s world, we have to shift our vision of code development from app builders to experience architects. AI has lowered the barrier to entry and accelerated development, but it hasn’t replaced the need to curate joyful experiences and create well-tailored products.

That’s why sure, Claude may have written all of my code, but I am the one who handcrafted Bean.

Sign up for updates at: https://www.makecoffee.app/

Let me know if you’d like me to post my user feedback skill and share more about how I use it.

What I’ve done so far:

  • Made the view and edit screens for brews and beans more aesthetic and consistent. They felt bland before.

  • Bought espresso beans instead of filter beans which inspired a future post.

  • Researched into making carousel posts and short videos.

What I’ll do next:

  • Post my first few posts on Instagram.

  • Get the app working on TestFlight.

No posts