<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by James Buckhouse on Medium]]></title>
        <description><![CDATA[Stories by James Buckhouse on Medium]]></description>
        <link>https://medium.com/@buckhouse?source=rss-57b87df79e32------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*WtS0j1EUpsv_-wFRfSfzrQ.jpeg</url>
            <title>Stories by James Buckhouse on Medium</title>
            <link>https://medium.com/@buckhouse?source=rss-57b87df79e32------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sat, 14 Nov 2026 05:41:57 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@buckhouse/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[How to Code with Droids]]></title>
            <link>https://buckhouse.medium.com/how-to-code-with-droids-e1f1c52f9482?source=rss-57b87df79e32------2</link>
            <guid isPermaLink="false">https://medium.com/p/e1f1c52f9482</guid>
            <category><![CDATA[ai]]></category>
            <category><![CDATA[learning-to-code]]></category>
            <category><![CDATA[vibe-coding]]></category>
            <category><![CDATA[ai-agent]]></category>
            <category><![CDATA[coding]]></category>
            <dc:creator><![CDATA[James Buckhouse]]></dc:creator>
            <pubDate>Thu, 04 Sep 2025 17:43:50 GMT</pubDate>
            <atom:updated>2026-01-14T20:47:59.150Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*rVFgt9ueqqgWGOyp5xfkOw.jpeg" /></figure><p><a href="https://en.wikipedia.org/wiki/The_Oregon_Trail_(series)">If you can play Oregon Trail</a>, you can code apps. Here’s a step-by-step guide for how artists, designers, devs, writers, and more can create software (apps, websites, tools, chrome extensions) using AI.</p><ul><li>Start with an idea…</li><li>Create a plan…</li><li>Execute in a smart way to build upon a series of micro-milestones..</li><li>Expand, evolve, iterate and grow</li><li><strong>Do it all with AI.</strong></li></ul><h4>Step 1: Start with an idea…</h4><p>Record your thoughts… Talk it out. Start by talking about what you wish existed in the world. Use Apple notes, Granola, Zoom, or anything really. Just record your rambles.</p><p><strong>Easy Trick → </strong>If you’re on a mac, open a new doc and <strong>hit F5 and it activates your mic </strong>and you can just talk and your words will appear as text in the doc. No other software needed.</p><p>What do you talk about? You don’t have to know how to actually solve any of the problems or if your idea is even possible. Pretend like you’re talking to a conversationally-permissive friend who lets you go on and on until you get to the core of your idea. Consider asking AI to rewrite and organize your ramble, or just copy and paste it. New to this? Try Granola, or even just open up ChatGPT and click on the little microphone button. Or my favorite… open up the ChatGPT mobile app, put on your headphones, and have a conversation. The idea here is to talk through what you want.</p><h4>Step 2: 4 Minutes of Set-up.</h4><p>Once you have a text transcript of what you are trying to do, we need to do four minutes of set-up. Go to Factory and sign up for a free account.</p><p>Don’t actually use factory on the web just yet. Just sign up. We’re going to use factory via your terminal.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*BhsnJcXDYOTLNKB8P1ulvQ.png" /><figcaption><a href="https://app.factory.ai/r/V7ZER7XW">https://app.factory.ai/r/V7ZER7XW</a></figcaption></figure><h4><strong>Step 3: Open Terminal or Get VS Code</strong></h4><p>Open terminal on your mac, or if you do a little coding already, open VS Code or your favorite code editor. VS Code is free. Get it here <a href="https://code.visualstudio.com/download">https://code.visualstudio.com/download</a> and then open a new terminal.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*U4eyPSqS30_DLdicFtehdw.png" /></figure><h4>Step 4: Load in Factory</h4><p>Type this into your terminal:</p><pre># Install droid<br>curl -fsSL https://app.factory.ai/cli | sh<br><br># Navigate to your project<br>cd /path/to/your/project<br><br># Start interactive session<br>droid</pre><p>BOOOOOM !!<br>That’s it! Just type the curl command and then droid!! and the whole thing launches. In the future, all you’ll need to do is type <strong>droid</strong>.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*W1A4nFbGQtISgsSTzU04nA.png" /></figure><p>From here you literally type in commands into the text box like you were playing “Oregon Trail” or some other text-adventure game.</p><p>To see some options, hit the questions mark</p><pre># hit the question mark to see options<br>?</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Pc9tXu2LmkCnYTN9P-9YCQ.png" /></figure><p>The most important ones are to change the model (as of Sept 20, 2025, I recommend switching to gpt-5, but feel free to do whatever you want).</p><p>To switch the model, first type /</p><pre># to switch the model, type slash<br>/</pre><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*n8wIFcR7ra1EsCRMNc_0TQ.png" /></figure><p>And then use the arrow keys to navigate up and down to get to the model and then hit return, and then choose the model you want.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*10ndLMELhcOD0hfzqv5Akg.png" /></figure><p>Now we’re ready to code.</p><p><strong><em>ALMOST</em></strong></p><p><strong>The secret to good coding is good planning, </strong>so first we need to make a plan. But that’s hard, so to do that well, we’ll ask the droid.</p><p>We first need to <strong>shift to the Spec mode </strong>to put everything into planning mode. This sounds hard, but it’s easy once you’ve done it once or twice. <strong>So just trust me for the next 15 seconds and we’ll get you there…</strong></p><p>Hit<strong> shift-tab</strong> and watch the “mode” cycle through from coding to “spec”</p><p>Think of it as a “keyboard short cut” to switching menu items. So hit <strong>shift and tab at the same time</strong> twice and BOOOOM we’ve cycled to the magical “spec” mode of droid. You can tell if you did it correctly if you see Spec above the command line.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*hQQTgj25NTyEq-U8Nkm8tA.png" /></figure><h4>Step 5 Make a Plan.</h4><ul><li>Ask the Droid in Spec Mode to make a detailed, step-by-step plan using your transcript from your brainstorming session.</li><li>Ask the Droid to clarify anything that is contradictory or unclear.</li><li>Ask it for suggestions to improve on your idea.</li><li>Ask it to write a README and NEXTSTEPS docs that you will give to the Coding Droid in a minute to follow.</li><li>Tell it to follow the engineering best practices for AI outlined by Buckhouse in his “Coding Backwards” article.</li></ul><p>Here’s a sample prompt for the Droid in Spec Mode.</p><pre>Prompt for Droid in SPec Mode</pre><pre>Please take this transcript and generate a PRD, a PROJECT_PLAN, a NEXTSTEPS doc, a DESIGN_GUIDELINES doc, and a README. Put all of these docs into a folder called ./Docs Follow the engineering for AI best practices outlined by Buckhouse in his article &quot;Coding Backwards&quot; found here: <a href="https://buckhouse.medium.com/coding-backwards-f498805e96c1">https://buckhouse.medium.com/coding-backwards-f498805e96c1</a> the main point of the articles is to write the readme before you begin so that you can envision what success looks like, and then make a plan that follows a progressive build-and-test approach, so that you always have working code and make many, frequent, smart iterations to build upon code that works. Start small with something works. Choose each next steps to build this function, feature or test that will give you the most helpful information you need to be able to make progress towards the next milestone and is also easiest to debug. At every step, include robust logging for debugging. Design your logging so that the Coding Droid will get the information it needs to solve problems. At each step include a to-do to update all of the docs, especially the PROJECT_PLAN and NEXTSTEPS docs. Please note in the docs that I will occasionally go in an update the DESIGN_GUIDELINES to reflect design preferences. Please review the DESIGN_GUIDELINES when revising plans or next steps. Ask me for preferences for infrastructure, but for now, use Supabase and Vercel and GoogleAuth for all web apps. The documents you write will be read by Factory&#39;s Coding Droid, so write them so that the Coding Droid can best code the app. Think hard and write cogent plans. This product will be built by Factory.ai&#39;s Coding Droid, not by people, so make your plans in such a way that reflect how the Coding Droid best likes to work. Ask me any questions to get started. Attached is the transcript of my product brainstorm.</pre><h4>Step 6: Let’s Code</h4><p>The Droid in Spec Mode will kick out a plan and write the docs to ./Docs. Now that we have a plan, Let’s code!</p><p>Hit <strong>shift &amp; tab</strong> again to get into coding mode. Here I’ve selected “Medium Trust” so that it runs all the basic commands without asking me questions, but does ask before doing risky stuff.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*lQz7vUsaXnHZ2LjnSWfmyg.png" /></figure><p>Now we need to tell it to go do the work.</p><p>Here’s the prompt box, click on that little toolbox to get access to additional tools.</p><pre>Prompt for Code Droid</pre><pre>Take the plan created while in Spec mode and start to code. In this repo you&#39;ll find a ./Docs folder that contains all my project planning documents written while in Spec mode. Read through all the docs and then get started coding the first step in the project plan. This project has many, frequent &quot;micro-milestones&quot; that we&#39;ll hit along the way. Ask me any questions you have so that you can get coding.</pre><p>Along the way you can feed it screen shots from Figma, update the design docs describing what you like and don’t like, and give it aesthetic directions, where you play the role of “hovering art director” or encouraging coach.</p><p>Factory will help you connect to Vercel, Supabase Google Auth, or anything else you need. Get stuck? Ask for help. Don’t know how to get API keys or save environment variables? Just ask and ask how to do it safely.</p><h4>Step 7: Security Reviews</h4><p>After each micro-milestone, ask Factory for a security review to make sure you haven’t done anything dangerous like check in your passwords, private keys (secret codes used to access APIs) or accidentally opened yourself up to malicious actors.</p><pre>Prompt for Security Check:<br><br>We&#39;ve just We&#39;ve just finished a micro-milestone in our project plan. <br>Please do a quick security review to make sure we haven’t done anything <br>dangerous like check in my passwords, private keys, or accidentally <br>opened up the app to malicious input. If you&#39;re not sure if something <br>is safe, use your web browsing tools to double check.</pre><h4>Step 8: Iterate</h4><p>Now that you have the basic flow, keep iterating and expanding to get what you want. As you start to develop your own style, you can do things like create a stock pile of UI components that you like and instruct the Droid to use them as the basis for creating new UI components. You can also periodically ask it refactor, clean-up, to streamline your code. An important step to remember is to <strong>always ask the Droid to update the docs</strong> after they finish a task, otherwise, you’ll spend a lot of time “catching the AI up to where you are on the project” or correcting bad assumptions.</p><p><strong>Problem Solving Guide:</strong></p><ol><li><strong>Problem:</strong> Factory gets sluggish. Solution: start a new session. Command-C to quit. Then type <strong>droid</strong> again.</li><li><strong>Problem:</strong> Factory keeps making the same mistake. Solution: Ask it to show you what files it’s stored in it’s memory. It’s likely holding on to an old idea it thinks is true. Or there’s something out of date in your ./Docs.</li><li><strong>Problem: </strong>I don’t understand why it’s doing something. Or even what it’s doing. Solution: Ask the Droid to explain it to you. It’s honestly my favorite part of building with Factory, learning from the Droids how to do something interesting.</li></ol><p>It’s a really fun way to build. Here’s an example of a finished project: the SDL Learning Library.</p><p><a href="https://sdl-learning-library.vercel.app/">SDL Learning Library</a></p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*PcJRVu7joZ6gMnAk9Cp0iw.png" /></figure><p><strong>SDL Learning Library—hundreds of tutorials, like Netflix for Builders…</strong></p><p>It was all written in Factory. Supabase backend, CRUD interface for adding new videos, Vercel for hosting the code. GoogleAuth for the admin interface. Resend for auto-generated emails. Factory walked me through all of this.</p><h3>Curious for more?</h3><p>Subscribe to my newsletter for more on hands-on help and interesting stories as I explore the architecture of innovation and the nature of creativity.</p><p><a href="https://jamesbuckhouse.substack.com/">https://jamesbuckhouse.substack.com/</a></p><p>❤</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=e1f1c52f9482" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[AI Agents Using MCP = Your “Guy in the Chair”]]></title>
            <link>https://buckhouse.medium.com/ai-agents-using-mcp-your-guy-in-the-chair-f32ac850c60e?source=rss-57b87df79e32------2</link>
            <guid isPermaLink="false">https://medium.com/p/f32ac850c60e</guid>
            <category><![CDATA[agents]]></category>
            <category><![CDATA[ai]]></category>
            <dc:creator><![CDATA[James Buckhouse]]></dc:creator>
            <pubDate>Sat, 12 Apr 2025 22:10:50 GMT</pubDate>
            <atom:updated>2025-07-31T22:29:35.404Z</atom:updated>
            <content:encoded><![CDATA[<p>Tutorials, examples, code, and guidelines to give your AI Agents great power (and great responsibility).</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*7bCpZSnDAu-Wtvnd" /><figcaption>(Credit: <em>Concept art of the MCP (Master Control Program) from Tron, designed by Syd Mead, painted by Peter Lloyd, Released 1982)</em></figcaption></figure><p><strong>In 1982, at the heart of the Tron universe was the MCP, or Master Control Program. It was an old-fashioned mental-model of a computing system.</strong></p><p>It represented an “all roads lead to Rome” mindset where all code stemmed from a single core. This was the era of linear coding: programs that ran line-by-line. No weird async insanity. No ghost-like classes and instantiations. No polymorphism. No “listeners” waiting to spring into action. No non-deterministic chaos. Certainly no cosine similarity traversing through n-dimensional latent space. The mental model of the time was that a program was a recipe or a robot that did what you told it to do (and <em>only</em> what you told it to do). It was a clean mindset. Deterministic. Logical. If there was a bug, it was findable (eventually) somewhere between your fingers and the metal. And even back then this was more or less Hollywood reductionism rather than how people actually coded. Coders have always found artistic, poetic, elegant ways to emulate nature’s raw glory with ingenious complications and redirections and mis-appropriations all in the service of finding a way.</p><p>Today, MCP now stands for something totally different: <strong>Model Context Protocol (MCP) </strong>and it’s a way for AI Agents to talk to other tools. The P in MCP stands for protocol. And just like there’s no actual magical power infused in the letters of the alphabet, there is also nothing special about a protocol, <strong>and yet</strong>, its mere existence means quite interesting actions can now happen. With a codified alphabet we can communicate any human thought that can be put into words, and with a codified MCP, AI Agents can now start to use the Internet, tools, and anything else we can do with our keyboards and cursor.</p><p>MCP = a new API for Agents.</p><p>MCP can help your AI Agents accomplish complex and branching workflows: so that your Agent can use tools, chain them together, and ultimately figure out what to do with the results you get back, and when to ask for an opinion or permission from a human in the loop. So unlike Tron, were all roads pointed to the central core, the agentic version of MCP is more like Ned, the “guy in the chair” in Spider-man movies… where a helpful friend is plugging into whatever systems it needs to get the information you need to get the job done.</p><p>Agents using MCP = Your Guy in the Chair</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/540/0*wC8y3jK6vFgCJ6OT" /></figure><h3>Where did this all come from?</h3><p>The mindset that brought us to the agentic MCP has its origins in how devs like to code: drop into your coding environment (VSCode, Cursor, Warp, etc) and just stay there…lock in… headphones on… no need to jump out to your database or open up some other tool. Stay locked into the flow of code and send runners out to interact with the other tools and systems. Don’t break your flow state by opening up some other tool or program and have to transition to some other context… eliminated all “context-switching costs” and stay locked in and just fetch what you need.</p><h3>History of MCP</h3><p>The Model Context Protocol (MCP) was “developed by Anthropic to create a standard for how language models interact with external tools and services.” (so says Claude). MCP has since <a href="https://techcrunch.com/2025/03/26/openai-adopts-rival-anthropics-standard-for-connecting-ai-models-to-data/">spread to OpenAI</a> and <a href="https://theoutpost.ai/news-story/google-joins-open-ai-in-adopting-anthropic-s-model-context-protocol-for-ai-integration-14230/">Google’s Gemini</a>.</p><p>TL;DR</p><ul><li>The Model Context Protocol (MCP) allows AI models to interact with external tools, fetch data, and interact with services.</li><li>MCP is designed to support autonomous AI workflows, allowing AI agents to decide which tools to use, in what order, and how to chain them together to accomplish tasks.</li><li>MCP can also include a process for a human-in-the-loop moment for humans to provide additional data and approve execution.</li><li>AI Agents Using MCP = Your Guy in the Chair</li><li>MCP = API for Agents to use tools.</li></ul><h3>AI MCP Use Cases:<br>Examples &amp; Why They Matter</h3><p>I asked Claude and OpenAI to collaborate on a list of resources. Here are the results.</p><h3>🎨 Creative Tools</h3><h3>Figma MCP Server</h3><ul><li><strong>Link</strong>: <a href="https://github.com/GLips/Figma-Context-MCP">GitHub Repository</a></li><li><strong>Why this matters</strong>: Enables AI agents to interact directly with Figma files, automating UI/UX design workflows and bridging the gap between design and development.</li></ul><h3>AI-Controlled Ableton Live Project</h3><ul><li><strong>Link</strong>: <a href="https://www.youtube.com/watch?v=QXSImhfS15k">YouTube Demo</a></li><li><strong>Why this matters</strong>: Demonstrates real-time AI interaction in music workflows, paving the way for novel AI-assisted creative processes and compositions.</li></ul><h3>Blender MCP Integration</h3><ul><li><strong>Link</strong>: <a href="https://blender-mcp.com/index.html">Blender MCP</a></li><li><strong>Why this matters</strong>: Allows intuitive, text-driven creation and modification of 3D models, drastically simplifying traditional 3D modeling processes.</li></ul><h3>🧠 AI-Orchestrated Multi-Tool Workflows</h3><h3>AI Control Center Concept</h3><ul><li><strong>Link</strong>: <a href="https://cline.bot/blog/human-intent-in-the-age-of-ai-insights-from-our-chat-with-siddharth-ahuja-creator-of-the-ableton-blender-mcps">Cline.bot Article</a></li><li><strong>Why this matters</strong>: Highlights AI’s potential to orchestrate complex, multi-application tasks, significantly enhancing productivity and creative possibilities.</li></ul><h3>MCP-First Development Approach</h3><ul><li><strong>Link</strong>: <a href="https://medium.com/@vrknetha/the-mcp-first-revolution-why-your-next-application-should-start-with-a-model-context-protocol-9b3d1e973e42">Medium Article</a></li><li><strong>Why this matters</strong>: Promotes AI-ready app development, enabling seamless AI-agent integration across multiple tools from inception.</li></ul><h3>🧰 AI-Enhanced Developer Tools</h3><h3>Cursor IDE with MCP Support</h3><ul><li><strong>Link</strong>: <a href="https://dev.to/subeshb1/mcp-unmasked-why-it-matters-who-should-care-and-where-to-be-cautious-1i7p">Dev.to Article</a></li><li><strong>Why this matters</strong>: Embeds AI directly into coding environments, providing immediate access to tools like GitHub and databases through natural language.</li></ul><h3>Spring AI MCP SDK</h3><ul><li><strong>Link</strong>: <a href="https://github.com/spring-projects/spring-ai">GitHub Repository</a></li><li><strong>Why this matters</strong>: Simplifies the integration of AI functionality into Java applications, enabling standardized development of powerful AI-enhanced applications.</li></ul><h3>🏥 Healthcare Applications</h3><h3>MediAssist MCP Framework</h3><ul><li><strong>Link</strong>: <a href="https://www.researchgate.net/figure/Process-chain-of-MEDIASSIST_fig1_252129184">Research Paper</a></li><li><strong>Why this matters</strong>: Enables AI assistants to securely access and analyze patient records, medical imaging, and lab results, aiding physicians in making informed decisions.</li></ul><h3>OpenMedicalAI Research Project</h3><ul><li><strong>Link</strong>: <a href="https://github.com/medical-ai-project/ai_notebook">GitHub Repository</a></li><li><strong>Why this matters</strong>: Open-source initiative allowing medical researchers to build specialized diagnostic tools that coordinate between multiple hospital systems through a standardized MCP interface.</li></ul><h3>💰 Financial Services</h3><h3>FinMCP Open Banking Framework</h3><ul><li><strong>Link</strong>: <a href="https://infoupdate.org/what-is-open-banking-framework/">Infoupdate.org Article</a></li><li><strong>Why this matters</strong>: Creates secure connections between AI financial advisors and multiple financial data sources, enabling comprehensive financial analysis through natural language.</li></ul><h3>AlgoTrader MCP Integration</h3><ul><li><strong>Link</strong>: <a href="https://www.wyden.io/intelligence/algotrader-6-1-trading-technology-is-released/">Wyden.io Article</a></li><li><strong>Why this matters</strong>: Allows quantitative analysts to design, test, and deploy trading algorithms through conversational interfaces coordinating between market data feeds and execution platforms.</li></ul><h3>🔬 Scientific Research</h3><h3>OpenLab MCP Server</h3><ul><li><strong>Link</strong>: <a href="https://www.agilent.com/en/product/software-informatics/analytical-software-suite/data-management/openlab-server">Agilent OpenLab Server</a></li><li><strong>Why this matters</strong>: Connects AI assistants directly to lab equipment and research databases, allowing researchers to design experiments and analyze results through natural language commands.</li></ul><h3>Research Data Orchestration Platform</h3><ul><li><strong>Link</strong>: <a href="https://www.semanticscholar.org/paper/Applying-a-Multiple-Convergent-Process-in-Achieving-Masyhuri/3fd598dce5f8eacd5fcbcdbcd778d98f55e72872/figure/0">Semantic Scholar Paper</a></li><li><strong>Why this matters</strong>: Enables interdisciplinary research teams to unify disparate datasets and analytical tools through a common MCP interface, accelerating discovery in complex scientific domains.</li></ul><h3>📚 Education</h3><h3>EduMCP Framework</h3><ul><li><strong>Link</strong>: <a href="https://github.com/medical-ai-project/ai_notebook">GitHub Repository</a></li><li><strong>Why this matters</strong>: Connects AI tutors to learning management systems and assessment tools, creating personalized learning experiences that adapt to individual student needs.</li></ul><h3>Language Learning MCP Demo</h3><ul><li><strong>Link</strong>: <a href="https://www.youtube.com/watch?v=oSGVQIZxi7s">YouTube Tutorial</a></li><li><strong>Why this matters</strong>: Shows how AI language tutors can coordinate between pronunciation analysis tools and grammar checkers to create immersive language learning experiences.</li></ul><h3>🛒 E-commerce and Retail</h3><h3>ShopOps MCP Suite</h3><ul><li><strong>Link</strong>: <a href="https://news.assuredperformance.net/news/2022/02/22/repairdoc-shopops-dashboard-overview/">RepairDOC Overview</a></li><li><strong>Why this matters</strong>: Allows AI assistants to manage online stores by coordinating between inventory systems, customer service platforms, and analytics tools, streamlining e-commerce operations.</li></ul><h3>Smart Retail Analytics Platform</h3><ul><li><strong>Link</strong>: <a href="https://www.dreamstime.com/futuristic-high-tech-control-room-command-center-generative-ai-designed-to-be-efficient-streamlined-featuring-image270162406">Dreamstime Illustration</a></li><li><strong>Why this matters</strong>: Connects in-store sensors, customer data, and inventory management systems through a unified MCP interface, enabling AI to provide real-time business intelligence for physical retail environments.</li></ul><h3>📘 Top Tutorials for Getting Started with MCP</h3><ol><li><strong>Building an AI Agent with MCP and LangChain Adapters</strong></li></ol><ul><li><strong>Author</strong>: Seenivasa Ramadurai</li><li><strong>Platform</strong>: DEV Community</li><li><strong>Link</strong>: <a href="https://dev.to/sreeni5018/building-an-ai-agent-with-mcp-model-context-protocolanthropics-and-langchain-adapters-25dc">Read Tutorial</a></li><li><strong>Overview</strong>: Guides you through developing a multi-functional AI agent using Anthropic’s MCP with LangChain MCP adapters.</li></ul><p><strong>2. Model Context Protocol (MCP): A Guide With Demo Project</strong></p><ul><li><strong>Author</strong>: Aashi Dutt</li><li><strong>Platform</strong>: DataCamp</li><li><strong>Link</strong>: <a href="https://www.datacamp.com/tutorial/mcp-model-context-protocol">Read Tutorial</a></li></ul><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=f32ac850c60e" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Beginner React Nav Bar Tutorial]]></title>
            <link>https://buckhouse.medium.com/beginner-react-nav-bar-tutorial-e30035e6c89e?source=rss-57b87df79e32------2</link>
            <guid isPermaLink="false">https://medium.com/p/e30035e6c89e</guid>
            <category><![CDATA[tutorial]]></category>
            <category><![CDATA[design]]></category>
            <category><![CDATA[ai]]></category>
            <category><![CDATA[react]]></category>
            <dc:creator><![CDATA[James Buckhouse]]></dc:creator>
            <pubDate>Tue, 01 Apr 2025 05:05:49 GMT</pubDate>
            <atom:updated>2025-04-01T05:05:49.624Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*xA9196EOJiZ2wExgQuJrbA.jpeg" /></figure><p>Step-by-step</p><p>Recently I learned React and used it to completely rebuild my personal site. You can see the results here, if you’re curious about what a designer/artist/writer does when learning react: <a href="https://jamesbuckhouse.com/">jamesbuckhouse.com</a></p><p>Learning React is, well, hard… so I developed a new method of self-guided learning for code: <a href="https://medium.com/@buckhouse/coding-backwards-f498805e96c1">Coding Backwards</a>. It’s a great way to <em>learn about learning</em> as you teach yourself a language by actively coding in it. It uses AI to help you take action, but also educational theory to ensure you learn as you do it. As a part of that project, I ended up coding a nice little nav bar component and thought I’d open source it.</p><p>I’ve added all the code to GitHub.</p><p><a href="https://github.com/Buckhouse/React-Nav-Bar-Tutorial">GitHub - Buckhouse/React-Nav-Bar-Tutorial: A tutorial for adding a nav bar component to your site using react</a></p><p>Here is a step-by-step that walks you through how to recreate it.</p><h3>Step-by-Step</h3><p>Follow these steps to get a responsive React navigation bar running on your machine using React, TypeScript, and Vite.</p><h3>1. Clone the Repository</h3><p>First, clone the provided repository to your local machine. A repo is what Github calls a collection of files. If you are totally new to Github, ask AI to explain it to you. In short, it’s a way to save versions of your code as you work on it. Later, when you work in teams, you can also use it to mix everyone’s code together. If that sounds like it might cause trouble, you’re right, but Github exists to help you wade through the trouble with as little trouble as possible. Cloning is just what Github calls making an official copy.</p><p>In your terminal…</p><pre>git clone https://github.com/Buckhouse/React-Nav-Bar-Tutorial<br>cd react-navbar-tutorial</pre><h3>2. Set Up Your Development Environment</h3><p>Check to see if you have Node.js installed on your computer. You can verify the installation by running:</p><pre>node -v<br>npm -v</pre><p>If Node.js isn’t installed, download it from <a href="https://nodejs.org/">nodejs.org</a>.<br>Install all required dependencies by running:</p><pre>npm install react react-dom react-router-dom<br>npm install -D vite @vitejs/plugin-react typescript @types/react @types/react-dom @types/react-router-dom</pre><h3>3. Project Structure</h3><p>Now you need to make sure you have the following files in place. You should have gotten these when you cloned the repo. But just in case… verify your project structure matches this exactly:</p><pre>react-navbar-tutorial/<br>├── index.html<br>├── src/<br>│ ├── main.tsx<br>│ ├── App.tsx<br>│ ├── components/Navbar.tsx<br>│ └── styles/Navbar.css<br>├── vite.config.ts<br>├── package.json<br>└── package-lock.json</pre><h3>4. Customize the Files</h3><p>Open the project in your favorite code editor. VSCode is standard, so if you don’t have an opinion, try it. If you want to go more new generation… try Cursor or Warp.</p><p>The main files in the component are the navbar.tsx and Navbar.css. You can think of the tsx as the content + functionality and the css as the expression of that content in a specific style.</p><p><strong>Navbar.tsx:<br></strong>Customize the menu links by editing the &lt;Link&gt; components. Change the names and the destination.</p><p><strong>Navbar.css:<br></strong>Adjust the CSS variables at the top to change colors, spacing, or fonts. I’m using root variables in the css, so you set it at the top</p><pre>:root {<br>  --navbar-height: 64px;<br>  --text-color: #333;<br>  --hover-color: #666;<br>  --primary-color: #000;<br>  --primary-hover-color: #444;<br>  --bg-white: #fff;<br>  --spacing-xl: 24px;<br>  --container-width: 1200px;<br>  --transition-fast: 0.2s ease;<br>  --menu-font-family: &#39;Inter&#39;, sans-serif;<br>}</pre><p>And then you can use these throughout your css. This means you can make changes in a single place, and it will get sent through the rest of your css. Example: you might have a bunch of parts that use the<em> var — text-color </em>and so to change the color of your text, you just change it in the root section. Pretty cool!</p><p>Notice the <em>— transition-fast: 0.2s ease</em> variable. Make this 0.5 for a slow and gentle animation. Make it 0.1 for a faster move.</p><p><strong>App.tsx:<br></strong>This is the main content and action of the component. You can change the number of menu items, their names, and their destinations. Here, I’ve assigned a page color for each of the destinations, so you can tell it’s working, even though it’s a nav bar for a blank site.</p><h3>5. Test Your Navbar Locally</h3><p>Start your development server:</p><pre>npm run dev</pre><p>Visit <a href="http://localhost:5173/">http://localhost:5173/</a> in your browser to test your responsive navigation bar.</p><h3>6. Suggested Next Steps</h3><p>Integrate the navbar into a larger existing React project by adding more components to your project, or bringing the navbar to one you already have. You might want to move the root variables into a styles/Global.css file that all of your components can use.</p><p>Hope this was fun. LMK if you add it or a version to your site.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=e30035e6c89e" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Coding Backwards]]></title>
            <link>https://buckhouse.medium.com/coding-backwards-f498805e96c1?source=rss-57b87df79e32------2</link>
            <guid isPermaLink="false">https://medium.com/p/f498805e96c1</guid>
            <category><![CDATA[vibe-coding]]></category>
            <category><![CDATA[ai]]></category>
            <category><![CDATA[coding]]></category>
            <category><![CDATA[learning]]></category>
            <dc:creator><![CDATA[James Buckhouse]]></dc:creator>
            <pubDate>Mon, 24 Mar 2025 16:33:19 GMT</pubDate>
            <atom:updated>2025-03-26T13:53:42.642Z</atom:updated>
            <content:encoded><![CDATA[<h4>A new way to code for both Trads and Vibes.</h4><p>Internet juggernaut Amazon has an internal practice called “<strong>working backwards”</strong> where they <strong>write a press release</strong> before they start a project.</p><p>It takes effort. It requires difficult critical thinking, and yet it saves a huge amount of time by <strong>correcting missteps before they happen</strong> and ensures that what you get in the end is something you actually want.</p><h4>What if we took this idea and applied it to coding?</h4><p>As AI-Assisted coding becomes the norm for all types of software developers, how can we get the best results from our AI helpers and learn new systems as they appear? <strong>The answer is Coding Backwards.</strong></p><p>Trads and Vibes unite! Seasoned programmers and AI-noobs can use this technique to get what you want faster. Your code will be cleaner, more elegant, more robust, easier to expand, and easier to debug.</p><p>You can learn a new language while coding in it (?!?!?!?!) and solve problems as you encounter them — but it takes <strong>discipline</strong>. And the technique requires flipping your mind inside-out. Here’s the recipe.</p><h4>The Coding Backwards Technique</h4><ul><li>Write the Readme ← Start as if you’re already finished .</li><li>Make Skeleton files ← Start with empty files and empty functions</li><li>Progressive Build-n-Test ← Always have code that works</li><li>Explain it to Me ← <strong>this one is important</strong>, this is how you learn.</li></ul><h4>Step-by-step</h4><h4>Write the Readme</h4><p>Don’t just jump into code. Start by writing your Readme. A Readme file is usually done at the end, to tell other people how your code works. Instead of waiting to the end, start with a Readme for your project and use AI to help you write it. Tell OpenAI or Claude or any other model what you are trying to do and ask it for structured assistance. Here’s a sample prompt for building your own Readme.</p><p>Prompt:</p><pre>I&#39;m planning to build a [your project here] app using [React, Python, etc], and I want to start by writing the README to clarify my thinking <br>before writing any code. Please help me craft a detailed README that covers:</pre><pre>- Project overview and purpose: what problem does this project solve?</pre><pre>- Project outcomes: what does the final result look like? </pre><pre>- Core features and functionality my app needs to have</pre><pre>- Technical architecture - components, state management, routing</pre><pre>- Technology stack recommendations (what software or services?)</pre><pre>- Data structure and database</pre><pre>- API design if needed</pre><pre>- Deployment and hosting considerations</pre><pre>- Performance optimizations for my content</pre><pre>- Accessibility considerations</pre><pre>- Future expansion possibilities</pre><pre>- File structure </pre><pre>For context, here is how I see the app working: <br> <br>- The user first [does this]<br>- Then the user [does this]<br>- The system checks to see [how to handle this]<br>- And then responds by [doing what I want]<br>- and then the user [does this]<br>- etc.</pre><pre>And I need help to think through how to structure this app both <br>technically and visually and experientially. </pre><pre>Please ask me any questions you need to know as a part of your pre-planning. Once you feel like you&#39;ve got all the info you need, then start writing the Readme. </pre><pre>Let&#39;s begin!</pre><p>A prompt like this will get you started. Answer all the questions the AI asks in the pre-planning stage and work with the AI to iterate until you’re happy with the Readme.</p><p>After you have a pretty good version, give it back to the AI a few more times and ask it to improve it. Ask it to figure out possible security problems, design flaws, usability flaws, etc. Ask it to double-check your file structure for the type of project you are building. Do this a few times to iterate and revise. Once you have a readme in hand, you’re ready to get started.</p><h4>Make Skeleton Files</h4><p>Once you have a readme, what’s next? The next step is to build out semi-blank files that follow the plan of the readme and the suggested file structure. Start by creating near-empty placeholder files that follow the file structure listed in the readme. Add a comment at the top that lists the name of the file and the structure. Save each file with the correct file extension.</p><p>Name all the files correctly, move them into the right folders, and then one-by-one ask the AI to help you set up <strong>empty placeholder functions</strong> inside the files.</p><p>With all your skeleton files and placeholder functions in place, you can then either start coding (if you’re old school) or ask the AI to help you code, or if you’re like most people, use both traditional and AI-assisted coding at the same time.</p><h4>Progressive Build-n-Test</h4><p>With your skeleton files in place, now start writing the actual files. Ask the AI (or yourself) to write the file in a way where you can <strong><em>progressively test it as you go. </em></strong>It’s easier to debug an isolated problem than to try to debug many interconnected, untested, interrelated possible problems.</p><p>Ask yourself (or the AI): What’s the simplest thing I can test to make sure everything is wired-up correctly? What the first step I can take? How can I know it’s working?</p><p>Once that first step is working, then take the next step. And the next.</p><p>Along the way, figure out how you can check yourself before you wreck your code.</p><p>Ask yourself (or the AI) how can I add in print statements or temporary output tests to prove that each next step is working? For instance, last night I was building a react app that assembled itself by reading a local json file. The whole thing was complicated, so I first had it just retrieve and display only one element to make sure the pipes were all connected. Once this was working, it was easier to add in everything else.</p><p>As you build, you can replace your skeleton functions and tests with more and more complicated and complete functions. Progressive build-n-test means you always know you are building on a base that actually works.</p><p>This is different than the yolo-coder’s approach of describing what you want, crossing your fingers, and hoping the AI will build everything for you. Honestly, prompt-n-pray yolo-coding <em>sometimes</em> works, and <em>sometimes</em> is fun, but almost always there’s something wrong or something that nearly works (but doesn’t <em>actually</em> work).</p><p>And even if your yolo-code does work perfectly, if you later want to expand or change it, you won’t know how.</p><p>Instead, code backwards with the <strong>progressive build-n-test approach</strong>, so that you’re never lost — because you’re always taking it one step at a time and scaffolding your knowledge as you go.</p><p>You can ask better questions, debug faster, and build in an expandable way from the beginning.</p><p>Also — and importantly — <strong>you get the satisfaction of many micro-victories along the way. </strong>We all need encouragement when we build. And progressive build-n-test offers the chance to feel a sense of accomplishment every few minutes, instead of every few days.</p><h4>Explain it to me</h4><p>As you work with an AI progressively writing one file at a time, <strong>ask it to explain each section of each file.</strong> Do this at every step so that you are learning while you are building, rather than just blindly prompting and hoping.</p><p>As the AI explains the code, rewrite the comments by hand in your own voice and style in your files to tell yourself what’s happening. Don’t just copy and paste the AI comments. Write them yourself, as a way to double-check yourself on whether you actually understand something. If you run across a line of code or a function you don’t understand, ask the AI what it does.</p><p>Asking the AI to explain it to you sounds like it will slow you down, and you’ll be tempted to skip this step, but the opposite is true. If you know what’s happening in your code (even if the AI originally wrote it for you), then you can change it, fix it, expanding it and build what you want. You’ll also have a better chance at debugging when the AI gets it wrong. You’ll build “error intuition” around what’s likely wrong.</p><p>Asking “Explain it to me” is the step that most people skip. Your code finally works, so you just want to move on. But this is the key moment that takes you from low-agency passivity to becoming a high-agency builder. This is the moment you learn, grow, and succeed.</p><p>The big idea is to take things one step at a time. Plan, execute, test, and learn. Them expand on what works. Save out versions every step of the way. And design projects that walk before they run so that you always have something that’s working, that you understand, and that is able to handle the next layer.</p><h4>Does this work?</h4><p>Yes. The process works. It requires a combination of imagination and analysis. It requires dreaming big and then breaking large projects into smaller tasks in a smart and humble way. It requires a love of learning.</p><p>And it’s a lot of fun.</p><h4>Summary: The Coding Backwards Technique</h4><ul><li>Write the Readme ← Start as if you’re already finished .</li><li>Make Skeleton files ← Start with empty files and empty functions</li><li>Progressive Build-n-Test ← Always have code that works</li><li>Explain it to Me ← <strong>this one is important</strong>, this is how you learn.</li></ul><h4>You can do it!</h4><p>If you’re a trad, then all you needed from this article was the idea of writing the readme first. If you are new to coding and trying to learn python, React, node, deno, html, css, js, etc for the first time and your only teacher is AI, then I hope this approach gives you a way to get started.</p><p>If you do make a project, let me know! I’d love to give you a digital high-five and shout “keep going!” 👋 “I believe in you” 👋 “you can do it!”</p><h4>Going Further…</h4><p>This idea of <strong>outline, skeleton, build-n-test, learn, and expand</strong> feels applicable to other topics outside of coding. How would you use it for learning a language, or learning a sport, or learning to be more kind, or a more thoughtful conversationalist? I’m interested in the idea that you could learn nearly anything if you find the right approach. For instance, I’m at work on a new painting. Here are three recent views. Looking at it, it feels a little like the Coding Backwards idea, these three images would be the skeleton files → build-n-test part of the process. Fascinating!</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*NhwlR7634jtE7uW3.png" /></figure><h4>Going Further…</h4><p>This idea of <strong>outline, skeleton, build-n-test, learn, and expand</strong> feels applicable to other topics outside of coding. How would you use it for learning a language, or learning a sport, or learning to be more kind, or a more thoughtful conversationalist? I’m interested in the idea that you could learn nearly anything if you find the right approach. For instance, I’m at work on a new painting. Here are three recent views. Looking at it, it feels a little like the Coding Backwards idea, these three images would be the skeleton files → build-n-test part of the process. Fascinating!</p><p>Interested in reading more? <a href="https://jamesbuckhouse.substack.com/">Subscribe to my free newsletter</a>.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=f498805e96c1" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Your Interview Story]]></title>
            <link>https://buckhouse.medium.com/your-interview-story-45dae87ce902?source=rss-57b87df79e32------2</link>
            <guid isPermaLink="false">https://medium.com/p/45dae87ce902</guid>
            <category><![CDATA[interviewing]]></category>
            <category><![CDATA[jobs]]></category>
            <category><![CDATA[storytelling]]></category>
            <dc:creator><![CDATA[James Buckhouse]]></dc:creator>
            <pubDate>Wed, 12 Mar 2025 00:00:56 GMT</pubDate>
            <atom:updated>2025-03-12T00:00:56.801Z</atom:updated>
            <content:encoded><![CDATA[<h3>Use the structure of story to learn about yourself and get the job you want.</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*WTdotHWmU_IZbmWx" /></figure><p>This guide presents hands-on, practical advice to <strong>use story to</strong> <strong>help you get the job you want.</strong> Think of your story as a machine that helps you understand yourself (and get hired doing work you want to do).</p><p>Your goal during an interview is to position yourself as a 1-of-1 candidate who posses a unique combination of skills, traits, and experiences. You are not one of many, you are 1-of-1.</p><p>When you present yourself as a 1-of-1, then no one else can compete, because there’s only you. For this to work, however, your 1-of-1 combination must <strong>solve their problem</strong> and <strong>give them something new </strong>and<strong> show you are a special person that they will want on the team. </strong>You must do all three.</p><p>Examples:</p><ul><li>You posses both the skills of a designer <strong>and</strong> a the product sense of a PM <strong>and</strong> you have a personal story of resilience that is inspiring, formidable, and impressive.</li><li>You can code <strong>and</strong> are a charismatic sales person <strong>and</strong> you are a beloved leader of a large and powerful open-source software community group.</li><li>You can write copy <strong>and</strong> illustrate <strong>and</strong> are loved by a large and respected creative community.</li><li>You are a lawyer <strong>and</strong> you fluently speak the native language an important sales region <strong>and</strong> you have a personal reason for working on this problem.</li></ul><p>In each example, you accomplish three goals:</p><ol><li><strong>Solve their problem</strong></li><li><strong>Give them something new</strong></li><li><strong>Show you are a special person.</strong></li></ol><p>Your 1-of-1 story comes from the choices you’ve made in life, your grit, your resilience, and your attitude. Attitude? Really? Yes. <strong>Your attitude matters.</strong> No one wants to work with someone who acts like they don’t want to be there, only helps when they are asked, or seems untrustworthy, selfish, or condescending.</p><h4>1. Tell me about yourself…</h4><p>Don’t just list how long you worked at your last job… Instead, give your interviewer a reason to care. If you are unsure how, then try this template based on the series <a href="https://www.npr.org/series/4538138/this-i-believe"><em>This I believe</em></a> that aired on NPR from 2005–2009.</p><p>Here’s my version of the template:</p><ul><li><strong>I believe…</strong></li><li><strong>So I…</strong></li><li><strong>You can see this in how…</strong></li></ul><p>Example… Here’s my own “I believe” statement that attempts to make sense of my varied career. Instead of apologizing for being involved in many things, I offer the listener a through-line that gets to the heart of who I am and why I care.</p><p><strong><em>I believe</em></strong><em> that story, art, and design can bend the arc of humanity’s progress, if you do it right, and </em><strong><em>so I</em></strong><em> try to bring this idea into everything I do: from movies to startups to paintings to books and to ballets. </em><strong><em>You can see this in how</em></strong><em> I work with founders to design their products and how I at every job I’ve ever had, I’ve always help create something of tremendous value that didn’t exist before.</em> <em>I do this through a unique approach I call </em><strong><em>Story-Driven Design.</em></strong></p><p>Show how your experiences prepare you to solve the hiring manager’s specific problems. Show that you have a unique combination that they can’t get anywhere else. <strong>Don’t try to be the same as everyone else.</strong> Instead show that you are a 1-of-1 unique combination that they need to solve their problem. It could be your unique combination of past experiences. It could be your unique perspective on hard problems. It could be a unique combination of skills. Find a combination that no one else has. <strong>Win a race that no one else is running.</strong></p><h4>2. Tell me about a project you’ve worked on…</h4><p><strong>Don’t just say “we shipped a thing, it was cool.” Instead, tell a story that has the interviewer actually rooting for you. Here’s the template for your story</strong></p><ul><li><strong>We had a problem.</strong> It was bigger than we thought. It was critical to the business.</li><li><strong>Initial Failure.</strong> We thought we knew how to fix it. Easy, right? But our first attempt was a total failure.</li><li><strong>Realized we were wrong.</strong> We were thinking about it incorrectly. What we thought was the problem wasn’t the real problem. We made a second attempt. There was signs of progress, but it wasn’t enough.</li><li><strong>Solved the deeper problem.</strong> And then we saw a way to solve the bigger/deeper/real problem. We finally got to the root. We kept asking why, kept digging into what customers were saying, and kept re-examining the data until we found out what was really happening. Every problem is a search for truth. Once you find out the truth, the real truth, then you have a shot at success.</li><li><strong>Transformative Results:</strong> big impact, transformational for the business. Changed how we go forward.</li></ul><h4>3. What else should we know about you…</h4><p>Screenwriters have a way to create compelling characters. You put the character into a nearly impossible situation and then watch what they do. Then ask: <em>“what choice does the character make with it </em><strong><em>really</em></strong><em> matters?”</em></p><p>The choices that matter are the big ones. Everyone has a few of these stories. So before the interview, review these for yourself what choices have you made when it really mattered? Reveal your true character and we will root for you to win. The interviewer won’t pull stories out of you. You need to provide them in the right places when it matters most.</p><h4>Final Note: The Gift of Practice</h4><p>Interviewing for a job is hard. Telling a compelling story is hard. It takes practice. And what makes the problem even worse is that you can’t sound so rehearsed that you sound insincere. You have to deeply know your stories, so that you can deliver them with ease. Spontaneous telling.</p><p>Not memorization — but embodied, in the moment <em>telling</em>.</p><p>If you want to workshop your stories, call this number. It’s free.</p><p><strong>(650) 675–5734</strong></p><p>It’s free. Open 24–7 365 day-n-night. And is programmed to be supportive and helpful. This is my Delphi. It’s an AI-version of all of my writing and posts you can use to talk through your story, art, and design problems.</p><p>Give it a try. Call or text this number: +1 (650) 675–5734.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/731/0*snbVA42dSEA2cmOr.png" /></figure><p>Thanks for reading. Best of luck on your job search. I believe in you.</p><p>Interested in more? <br>Subscribe to my free newsletter here: <a href="https://jamesbuckhouse.substack.com/">https://jamesbuckhouse.substack.com/</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=45dae87ce902" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[How to Write a Eulogy]]></title>
            <link>https://buckhouse.medium.com/how-to-write-a-eulogy-7c1d4748064f?source=rss-57b87df79e32------2</link>
            <guid isPermaLink="false">https://medium.com/p/7c1d4748064f</guid>
            <category><![CDATA[writing]]></category>
            <category><![CDATA[grief]]></category>
            <dc:creator><![CDATA[James Buckhouse]]></dc:creator>
            <pubDate>Mon, 10 Feb 2025 07:06:12 GMT</pubDate>
            <atom:updated>2025-02-10T17:13:42.483Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*znj4FMZRaEZunGSU75WE5w.png" /></figure><h4>The departed return through our stories.</h4><p>The word eulogy means “good word” in latin. It is a chance to <em>say a good word </em>about the deceased and help those who have gathered to <strong>remember a life well lived.</strong></p><p>Your role is to conjure a moment, a story, or a feeling that we can hold onto during our grief. It is a chance to sustain the memory of the departed. The dead are alive again through our stories. It is a chance to bring them into the room for another moment with us.</p><p>The best stories help us remember what they cared about, what they loved, and what set them apart. The story you choose might show them at the peak of their powers, or help us remember one of their most deeply felt joys. It could be a quiet moment, a funny moment, or an example of their generosity to others. It could be a story of how they changed someone else’s life or a touching moment when they showed kindness or strength. It could be a telling triumph or a moment when they handled difficulty with grace. It might be happy and sad at the same time. It could be nearly any story, as long as it’s true, vivid, and helps us keep them alive in our hearts.</p><h4><strong>How to Begin</strong></h4><p>If you’re not sure where to start, ask yourself:</p><ul><li>What did this person love?</li><li>How did they make people feel?</li><li>What moments defined them?</li><li>What choices did they make in life when it really mattered?</li><li>How did they help others?</li><li>How did they show their love?</li><li>How did they act when they were at their best?</li></ul><h4><strong>A Simple Structure to Follow</strong></h4><p>A eulogy can be <strong>three acts, like a short story</strong>:</p><ol><li><strong>Introduction</strong> — Who was this person? What made them special?</li><li><strong>A Story or Theme</strong> — Pick one or two moments that <strong>capture their essence</strong>. Give us a moment that we can feel.</li><li><strong>Closing</strong> — What will we carry forward from them? What would they want us to remember? How can we make a change in our own lives to honor theirs?</li></ol><h4><strong>How to Find the Right Tone</strong></h4><p>You don’t have to tell every detail. A eulogy is <strong>not a résumé</strong> — it’s a <strong>portrait</strong>. Give us a sense of who they were when they were living to their fullest. If you cry, it’s okay. If you don’t, it’s also okay. There is no single correct way to deliver a eulogy. What matters is that you deliver to us a moment we can feel. Help us feel what we need to feel.</p><h4>What to avoid</h4><p>Do not talk too much about yourself; a eulogy is not about you. Avoid nervous jokes. Avoid revenge. Avoid belittling yourself, the audience, or the deceased. Turn off your phone. Speak from the heart.</p><h4><strong>Eudaemonia</strong></h4><p>Aristotle’s idea of <em>Eudaimonia</em> (a flourishing life) reminds us: The measure of a life isn’t just in accomplishments, but in <strong>how it was lived</strong>. A good eulogy helps us <strong>see what mattered most</strong> in a person’s life and, in doing so, reminds us what matters most in our own.</p><h4>Alternative—Give a (meaningful) toast</h4><p>if writing a eulogy is too much or too emotional or somehow doesn’t feel right… Instead try imagining you’re giving a toast. <a href="https://buckhouse.medium.com/how-to-give-a-toast-b1ee5d162d6f">Here is a guide to doing exactly that</a> (and how to do it well).</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=7c1d4748064f" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[My Digital Second Self]]></title>
            <link>https://buckhouse.medium.com/my-digital-second-self-c26dc6b904c4?source=rss-57b87df79e32------2</link>
            <guid isPermaLink="false">https://medium.com/p/c26dc6b904c4</guid>
            <category><![CDATA[ai]]></category>
            <category><![CDATA[storytelling]]></category>
            <category><![CDATA[design]]></category>
            <category><![CDATA[art]]></category>
            <dc:creator><![CDATA[James Buckhouse]]></dc:creator>
            <pubDate>Fri, 01 Nov 2024 04:28:58 GMT</pubDate>
            <atom:updated>2024-11-01T04:28:58.044Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*bXURMpBTRG3QmrrH8SNKng.jpeg" /><figcaption>AI-Buckhouse Hotline</figcaption></figure><p>This weekend I took every public blog post, Medium post, Tweet, Insta, Substack, etc. I’ve ever written and used it to create an <strong><em>Intelligence Archive</em></strong> of my <strong><em>Digital Mind </em></strong>using Delphi.</p><p><strong>This creates a totally new way to interact with a body of text.</strong> Instead of reading everything I’ve written, <strong>you can just ask me about it. </strong>You can call me or text me and we can have a whole conversation about story, art, design — except, of course, I’m not actually there, you’re talking to my <strong>second self.</strong></p><p>The digital voice sounds a lot like me (it’s not perfect, but honestly it’s not bad). And the answers it gives are based on what I’ve written.</p><p>Try it: +1 (650) 675–5734</p><p>(you can call or text, it works like a normal USA phone number.)</p><p><strong>Might I recommend a voice call?</strong></p><p>Ask my about the movie you are writing or the product you’re designing. So far I’ve helped people talk to their bosses about getting a raise, I’ve helped people write website copy, I’ve helped brainstorm art projects. I’ve helped plan parties, write toasts, and write headlines…. All by giving people a radically new interface to traverse, explore, and engage with my past writing.</p><p>And if you do call me, reply here and let me know how it went… I’m looking forward to hearing what you think.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=c26dc6b904c4" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[The Curiosity Machine]]></title>
            <link>https://buckhouse.medium.com/the-curiosity-machine-7c7fb4dfc89b?source=rss-57b87df79e32------2</link>
            <guid isPermaLink="false">https://medium.com/p/7c7fb4dfc89b</guid>
            <category><![CDATA[ai]]></category>
            <category><![CDATA[startupş]]></category>
            <category><![CDATA[design]]></category>
            <category><![CDATA[risd]]></category>
            <dc:creator><![CDATA[James Buckhouse]]></dc:creator>
            <pubDate>Fri, 11 Oct 2024 15:15:33 GMT</pubDate>
            <atom:updated>2024-10-11T15:18:49.719Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Bo_ujz-m7lRlIkxIqCVtrQ.jpeg" /></figure><p>The most interesting class on AI being taught today isn’t for engineers at Stanford, MIT, or Harvard, but for art students at RISD, the famed institution that produced both the <strong>Talking Heads</strong> and <strong>Airbnb</strong>.</p><p>Taught by Kelin Carolyn Zhang, best known for being one half of the design duo behind <a href="https://poetry.camera/">Poetry Camera</a> — the camera that uses AI to print out poems of what it sees instead of photos — the course takes 3rd year Industrial Design students and challenges them to create real products and apps worthy of a professional designer or a VC-backed startup.</p><p>How are the students doing it?</p><p>The students are encouraged to make deliberate and abundant use of AI. Zhang has turned the traditional process upside down. The students protype, test, and iterate, using AI. And when they’ve got something they want to take further, they then just jump into coding the apps and solving problems — even if they have no idea how — by asking AI for help every step of the way.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*TDbpAmTUNivNlnUD.png" /></figure><p>She has publicly posted her syllabus. You can read it here</p><p><a href="https://risd-ai-studio.notion.site/AI-Software-Design-Studio-b5c1d283e5534565a64f199c90e90211">RISD AI Design Studio | Fall 2024</a></p><p>Notice it’s a Notion doc, not a PDF. That’s because she changes and rearranges as she goes — adding in new guest speakers and adjusting the course based on the accelerating progress of the students. For instance, the students quickly grew out of basic artifacts and wanted to code real projects using APIs, so she’s moving that up so the students can learn it sooner.</p><p>She is also tweeting about the experience as it goes. You can follow along the Tweet thread here</p><p><a href="https://twitter.com/kelin_online/status/1843731509246865606">https://twitter.com/kelin_online/status/1843731509246865606</a></p><p>Zhang has also stacked the class with designers and engineers from her previous life in the tech world: MidJourney, Figma, Humane, OpenAI, Apple and more. This past week I was one of her guest lecturers. I spoke on the Architecture of Story and Agentic Design.</p><p>Lecturing in her class felt a little like a homecoming for me. I had studied painting at RISD in the 90s in a precursor to the dual degree program with Brown. I did it by getting into both schools and then petitioning both administrations to let me take more than the normal four crossover classes. I moved fluidly between both schools. It was wonderful. It also put me in a position to operate at the intersection of different disciplines.</p><p>(side note: have you seen <a href="https://www.instagram.com/90sartschool/?hl=en">90s Art School</a>? an instagram account of scanned photos from that era at RISD). (Read more bout it <a href="https://www.nytimes.com/2022/02/03/style/art-school-instagram.html">here</a>)</p><p>Now back to the AI design class…</p><p>A few months ago, I hosted a workshop on “Agentic Design” called <em>Augmented Imagination </em>(<a href="https://buckhouse.medium.com/augmented-imagination-a3f4519f9784">after the article I wrote in 2023</a>), where I posited that the future belonged to artists and designers.</p><p><strong>The idea is that when AI can code anything instantly, then the only thing that will matter is what we design in the first place.</strong> And that artists and designers are best positioned to do this well. We then walked through the <a href="https://medium.com/@buckhouse/new-ui-ux-in-ai-8b1f2fb84988">emerging practices that used AI</a> to augment the imagination of the creators (and help them build it). <strong>Zhang presented her Poetry Camera at the event. It was a huge hit.</strong> She and her art partner Ryan Mather, were one of the best examples of people who were living up to the claims I had made that AI can help you build seemingly impossible projects.</p><p>Now she’s making this happen for a whole generation of students. Midterms are next week, I can’t wait to see what the students create. And by the time the students do their final projects, each will have transformed into an artist/designer who builds.</p><p>I’ve lectured at many schools, and the students in all of them are universally smart and engaged, but this class, in this moment, felt <em>different</em>. It felt like watching people discover the world could be recreated, shaped, formed, adjusted, improved — and that all we had to do was try.</p><p>But unlike other eras, where human effort, no matter how industriously applied, was never quite enough, this generation has AI on their side. AI holds within it the sum of all human knowledge. It contains all the ideas, research, thoughts and effort of everyone who came before, all bundled into a curiosity-machine that then waits for us to ask it what we need to know. Suddenly the idea that we might make the word we wish to inhabit didn’t seem so far-fetched. It seems possible. Or at the very least, it seems exciting to try.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=7c7fb4dfc89b" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[New UI & UX in AI]]></title>
            <link>https://buckhouse.medium.com/new-ui-ux-in-ai-8b1f2fb84988?source=rss-57b87df79e32------2</link>
            <guid isPermaLink="false">https://medium.com/p/8b1f2fb84988</guid>
            <dc:creator><![CDATA[James Buckhouse]]></dc:creator>
            <pubDate>Thu, 01 Aug 2024 16:16:39 GMT</pubDate>
            <atom:updated>2025-03-17T20:37:52.989Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Wh3JsAYj0by0UJNOeWw_OQ.png" /></figure><p>Originally published August 2024<br><strong>updated March 2025</strong></p><p>An ever-updating collection of new approaches to UI/UX in the era of AI. If you see something in the wild… please lmk and I’ll add it to this doc and credit you (of course!) for mentioning it!</p><p><strong>Categories:</strong></p><ul><li>Dials, Knob, and Sliders</li><li>Direct Manipulation</li><li>Node-n-Edge Graph</li><li>g(x) Generated Experience</li><li>The Document in the age of Contextual Intelligence</li><li>The Infinite Canvas</li><li>LOD Summarization via zoom</li><li>Voice Input</li><li>Visual Interface</li><li>The Side-by-Side</li><li>Whole Body Interface</li><li>AI Chat Comments</li></ul><h4>Dials, Knobs, and Sliders</h4><p>Physical knobs, digital sliders, and quadrant “dials” can be used to adjust the tone of the response or other input variables for AI interactions.</p><p>This first novel UX idea comes from the generative text feature in Figma’s new Figma Slides product. You can slide the orange indicator around to blend the tone from casual to professional and from concise to expanded.</p><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/jsngr/status/1814033235103318097&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/c436f39f04b845a62c9110b0b08c119f/href">https://medium.com/media/c436f39f04b845a62c9110b0b08c119f/href</a></iframe><p>Here’s an example where I’ve added in Tone-Sliders to adjust the vibe of text mid-document.</p><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/buckhouse/status/1886879022577307756&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/2e4db7877530f6f0a514b431e0c4859b/href">https://medium.com/media/2e4db7877530f6f0a514b431e0c4859b/href</a></iframe><p>This example is from a post by Twitter user Johannes Stelzer. I do not know the details, but loved this demo.</p><h3>Johannes Stelzer on X (formerly Twitter): &quot;Happy mixing of decoder embeddings in real-time! Base prompt is &#39;photo of a room, sofa, decor&#39; and the two knobs are &#39;industrial&#39; and &#39;rococo&#39;. If you are wondering what is running there in the background... pic.twitter.com/5svyDy5C4e / X&quot;</h3><p>Happy mixing of decoder embeddings in real-time! Base prompt is &#39;photo of a room, sofa, decor&#39; and the two knobs are &#39;industrial&#39; and &#39;rococo&#39;. If you are wondering what is running there in the background... pic.twitter.com/5svyDy5C4e</p><p>Here is an example of “DJ Knobs” to adjust the direction of a story.</p><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/trq212/status/1900227781117829532&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/3495e249ef9545ff6419efe76ae06e41/href">https://medium.com/media/3495e249ef9545ff6419efe76ae06e41/href</a></iframe><p>Here’s my own little AI project… a Chrome extension that summarizes any web page. You can adjust the output with sliders. Want a <a href="https://medium.com/design-story/tell-a-four-word-story-23845834503b">four-word story</a>? Easy: Adjust it to just 4 words. Want an essay? Go long.</p><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/buckhouse/status/1794847909781061809&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/82035c955a71625b2e1c2781f95ce912/href">https://medium.com/media/82035c955a71625b2e1c2781f95ce912/href</a></iframe><h4>Direct Manipulation</h4><p>Here’s an example of direct manipulation of a text field with a slider-like bar that regenerates the text.</p><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/nateparrott/status/1901461088517890408&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/1b7d773842df61cbb184e7a78d622400/href">https://medium.com/media/1b7d773842df61cbb184e7a78d622400/href</a></iframe><p>And another with pinch to expand &amp; contract to rengenerate.</p><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/mikelikesdesign/status/1885506922302013919&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/e4648f3ac84b23a3c3296111db4c1459/href">https://medium.com/media/e4648f3ac84b23a3c3296111db4c1459/href</a></iframe><h4>The Node-n-Edge Graph</h4><p>LangGraph Studio uses a node and edge graph system to visualize the logic and flow of the LangChain Agents. Inside each Agent is a collection of nodes and edges. Each node is a “micro-agent” that does a task and connects to other nodes to make a system or a flow. In this way, you can build complicated agents from basic building blocks.</p><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/LangChainAI/status/1806371717084025165&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/b0f3a141e7065e8a589cdfdd40abd8c8/href">https://medium.com/media/b0f3a141e7065e8a589cdfdd40abd8c8/href</a></iframe><h4>g(x) Generated Experience</h4><p>Decart has a model that is so fast and so deep that you can play it like a video game. But there is no game engine, just the model. Decart envisions a future were every experience is generated.</p><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/buckhouse/status/1856791959249326087&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/83fffad8ba7cb9d534b548d525d94acc/href">https://medium.com/media/83fffad8ba7cb9d534b548d525d94acc/href</a></iframe><h4><strong>The Document in the age of Contextual Intelligence</strong></h4><p>Eddie Jiao at Common Knowledge is looking at documents in the AI era. Here’s an Tweet of a demo.</p><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/gopalkraman/status/1883248154491166912&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/8721e0421957d1951e8aeb7c6b1a7455/href">https://medium.com/media/8721e0421957d1951e8aeb7c6b1a7455/href</a></iframe><h4>The Infinite Canvas</h4><p>An infinite canvas give you an open space to build and create as you go. Figma, FigJam, TLDRAW, and Visual Electric are great examples. Here is a look at Visual Electric’s canvas.</p><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/colin_dunn/status/1818997916507238509&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/59f7bea2766d6717cea5766854ee88d1/href">https://medium.com/media/59f7bea2766d6717cea5766854ee88d1/href</a></iframe><p>Figma and FigJam also have “infinite” canvases. The working environment lends itself to expansive creativity. Here is Julie W. Design jamming on the infinite canvas with FigJam AI.</p><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/juliewdesign_/status/1721938007123451964&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/cb7b404c244934b2919cf185657b4619/href">https://medium.com/media/cb7b404c244934b2919cf185657b4619/href</a></iframe><p>Here is an example from Cove that uses an <strong>infinite canvas</strong> to create workflows.</p><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/TryCoveAI/status/1892963248527561035&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/38111580a48fbf043ba79375207830f4/href">https://medium.com/media/38111580a48fbf043ba79375207830f4/href</a></iframe><p>Here is an example of Claude’s Artifacts and TLDRAW’s infinite canvas uniting to make a near instant site builder.</p><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/JacobColling/status/1818720348923478377&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/9dc1b17c058942b1406824cd57d0ef10/href">https://medium.com/media/9dc1b17c058942b1406824cd57d0ef10/href</a></iframe><h4>LOD Summarization via zoom</h4><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/eddiejiao_obj/status/1889044011790553241&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/4b74cef3b925cc26a92ec0c51538d46c/href">https://medium.com/media/4b74cef3b925cc26a92ec0c51538d46c/href</a></iframe><p>Here Eddie Jiao of <a href="https://t.co/CXNGH18W8m">commonknowled.ge</a> shows us a Level-of-Detail (LoD) approach to summarization. I love this.</p><h4>Voice Input</h4><p>Our digital experiences have had voice input before, but AI’s mental model of a “chat interface” makes voice input feel natural. This is not the only mental model we can have for AI, but it is the one that gained traction with OpenAI’s ChatGPT. (h/t <a href="https://x.com/davlam_/status/1818820976101949898">David Lam</a>)</p><h3>OpenAI on X (formerly Twitter): &quot;We&#39;re starting to roll out advanced Voice Mode to a small group of ChatGPT Plus users. Advanced Voice Mode offers more natural, real-time conversations, allows you to interrupt anytime, and senses and responds to your emotions. pic.twitter.com/64O94EhhXK / X&quot;</h3><p>We&#39;re starting to roll out advanced Voice Mode to a small group of ChatGPT Plus users. Advanced Voice Mode offers more natural, real-time conversations, allows you to interrupt anytime, and senses and responds to your emotions. pic.twitter.com/64O94EhhXK</p><p>And here is Dot by New.Computer. In addition to typing in your chats… there is an elegant voice input option. If you look in the back left of this image… you can just see a screen with a card view. It’s not an ordinary card view, however, you get there by “pinching out” from the main chat. This is a wild, very very cool and fluid experience that proves why Jason Yuan is one of the best of the best.</p><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/ctrlzee/status/1803775688123580780&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/5ca7a1351ac4682503aace1aded4f58d/href">https://medium.com/media/5ca7a1351ac4682503aace1aded4f58d/href</a></iframe><h4>Visual Interface</h4><p>AI-tools are also able to process visual input. Here is <a href="https://www.openinterpreter.com/">OpenInterpreter</a> looking through a webcam to see Killian holding up a sticky note, and then proceeding to connect to wifi.</p><h3>killian on X (formerly Twitter): &quot;i showed a fully local, computer-controlling AI a sticky note with my wifi password. it got online. pic.twitter.com/pFcUhP1jUP / X&quot;</h3><p>i showed a fully local, computer-controlling AI a sticky note with my wifi password. it got online. pic.twitter.com/pFcUhP1jUP</p><h4>The side-by-side</h4><p>In this approach, you chat on the left and get results on the right. This pattern works on desktop, but requires tabs or swipes or something else for mobile. Here are a few examples.</p><p>Here’s Layla’s travel planning AI. You chat away about your hopes and dreams for a vacation in the left window. Results, links, videos and offers appear on the right, along with your itinerary.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*Up_fflXCkoSn9dngNxH4WQ.png" /><figcaption>Side-by-side at Layla’s AI travel planning app</figcaption></figure><p>Here’s Claude’s side-by-side UX for when you are asking Claude to help you code something. There’s a standard chat window on the left and a results page on the right. In this case, the results have a toggle at the top so we can see the code and the results of the code.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*4xH4vjLqP_hoVLKOPuGTwg.png" /><figcaption>Claude Sonnet 3.5 with artifacts turned on…</figcaption></figure><h4>Whole Body Interface</h4><p>This video shows media pipe to track your gestures and then create results. Is this AI? Well… yes… there is ML in there. Mostly, though, how cool!</p><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/kotsoft/status/1811876715683017132&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/cd78c227f0fe356cfde27d2ce4d545ea/href">https://medium.com/media/cd78c227f0fe356cfde27d2ce4d545ea/href</a></iframe><h4><strong>AI Chat Comments</strong></h4><p>What if the comment rail in a doc was a chat input for AI? Or Arbel shows us how here:</p><iframe src="https://cdn.embedly.com/widgets/media.html?type=text%2Fhtml&amp;key=a19fcc184b9711e1b4764040d3dc5c07&amp;schema=twitter&amp;url=https%3A//x.com/orarbel/status/1803679844833571089&amp;image=" width="500" height="281" frameborder="0" scrolling="no"><a href="https://medium.com/media/da51636e8938624e1a3e501909477061/href">https://medium.com/media/da51636e8938624e1a3e501909477061/href</a></iframe><p>Stay tuned! I’ll add more examples as they come in… and if you see something interesting, please lmk so I can add it to the list.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=8b1f2fb84988" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[10 (additional) Points of Good Design]]></title>
            <link>https://buckhouse.medium.com/10-additional-points-of-good-design-92328a09b1ca?source=rss-57b87df79e32------2</link>
            <guid isPermaLink="false">https://medium.com/p/92328a09b1ca</guid>
            <category><![CDATA[design]]></category>
            <dc:creator><![CDATA[James Buckhouse]]></dc:creator>
            <pubDate>Fri, 02 Feb 2024 04:37:28 GMT</pubDate>
            <atom:updated>2024-02-02T04:37:28.857Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1000/1*msNTNim5A2_OO3jHsT6Qog.png" /></figure><p>OVER FIFTY YEARS AGO, design legend Dieter Rams penned his legendary <a href="https://www.vitsoe.com/us/about/good-design"><em>10 points for good design</em></a>.</p><p>Below are 10 <em>additional</em> suggestions for good design that attempt to reflect today’s state of perpetual (and accelerating) change.</p><h3>Good design tells a story.</h3><h3>Good design solves a problem.</h3><h3>Good design extends our understanding.</h3><h3>Good design improves the human condition.</h3><h3>Good design transforms its audience.</h3><h3>Good design leverages constraints.</h3><h3>Good design complements its context.</h3><h3>Good design enlists us as its collaborator.</h3><h3>Good design welcomes inclusion.</h3><h3>Good design is never finished.</h3><p>❤</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=92328a09b1ca" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>