Form factors for your new AI coworkers — Craig Wattrus, Flatfile
Channel: aiDotEngineer
Published at: 2025-08-22
YouTube video id: CiMVKnX-CNI
Source: https://www.youtube.com/watch?v=CiMVKnX-CNI
I I think we've all noticed tools like V0ero uh getting pretty good at at generative UI and creating um good-looking things as well as clawed code um being able to let us run things more complicated locally and build on those things. Um, so I think the the thing that comes out of this is designers, um, product people and engineers all building together. And I'm really excited about that because I've never loved the the divides um, between these things. Um, so this really lets us get rid of um, in my mind get rid of mock-ups, get rid of the click-through prototypes um, and uh, all the hand ringing about whether uh, the thing that we're building um, is worth the engineering effort. Um, so as we as we go into this, it's time for us to jump in um and feel the material that we're working with and see what emerges. So I'll give you a super quick overview of of Flat Files um AI uh stack. This is not an official diagram, but it's how I see it. Um we migrate data um big if if you needed to move a lot of data between systems um frequently uh you use our developer platform. And since we're a developer platform, LMS are good at writing code. Makes it the perfect place for a lot of AI. Um, at the bottom here, we have our our customers flat file applications that they they deploy to our infrastructure. Um, then there's this like real time context, which is the data and the validation outcomes. So, what are the errors and warnings and things that are in that that data that dirty data um and then our AI agents, the tools they have um and the jobs that they can run um and then what gets shown to users. So I see it as four buckets here. There's more. Um there's invisible, so it's kind of like the ghost in the machine almost called that ghost. Um ambient, so it's kind of happening in the space, but you're not directly working with it. Um inline, so it's actually in your work uh in your workflow. And then conversational, the ones that we're um I guess all arguing about. I think that's what I learned um being here at this conference. Um here's an example of invisible. So when you start uh if you sign up for a flat file, we go in the background, we we take your email address, we find the company you work for, we look it up um and in the background, the AI agents are writing a flat file application. So they're writing code and essentially sending you up a demo that is perfect for your use case. So if you come in from a HR company, you're going to get an HR um demo. Um and while that's running, you don't need to know that AI is working on it. Um so that I'd say is like it's working in the background. Here's something working more ambiently. It's a very initial uh take on this, but you can see there's something an agent analyzing the data in the background. Um this is a tool actually um I lead this team for AI transformation and um you can see the little sparkles pop up on the columns when it finds um opportunities to fix it. So that's ambient. Um this is inline. So you're busy working in the data um and the AI is able you're able to use the AI um directly in line here um to fix the data. These agents are are writing code that then gets run on this data set. So you could have a million rows um and 50 columns or whatever you want and and that code will run really fast um which is pretty cool. And then finally the conversational ones we're all used to. So this is build mode. It's the no code low code um agentic system that writes flat file apps now. So before you would probably have to have had a engineer at the company um building these applications um now it can all be built up. So that's pretty cool. Um and that's that's kind of the the general surfaces I think about. Um, I listened to um Amanda Ascal um from Anthropic talking to Lex Freiedman about um building um Claude's character. And in that moment, I realized I'd been doing something a little silly. I'd been giving engineers feedback on our agents like, "Oh, it shouldn't start saying this and it shouldn't use these words and and why should it do this?" And I realized I was I was doing it like I would do design copy, right? I was I was I'm in my my my normal instinct. And when I heard her talk, I realized I needed to go from controlling um to being a character coach and and and actually building out um the the nature that I wanted. So this is a Vzero. I hope have you most of you used Vzero from Versell before? Um yeah. Um so this is a Vzero I built one of my early ones and it was um I called it a chat tuner. It doesn't look like much but that wasn't the focus. Um, but I could essentially um put our orchestrators, so the system prompt for our AI orchestrator for build mode um in here. And then I can modify it. I can say what is it like if I tell Claude to be more friendly versus more balanced versus more concise? What what does more cautious mean to this model? Um, and the point of me showing this is just to say like the design of the final thing is always a tempting thing to design too. Um but now we can actually go and build tools to help us to design that. Um and this brings me to like uh I have like three themes. Um the first theme which is feeling the material. I'm a woodworker so you'll have to forgive the analogies to physical material but if you're going to uh design something with a physical material, you have to feel it, right? You have to what are the properties of it? Um and you need to understand it. And so I feel like before with design, we were kind of looking at everything through like layers, right? Mockups and prototypes and and kind of trying to see what was going to work and what wasn't. What we need to do now is go feel the material, feel feel how these models work. Um, my new north star is like creating an environment for these LLMs to shine, right? what's what's this form factor that can help them nail their assignment, stay aligned, and grow as the models get better, right? That's that's my new goal. Um, we're basically anything we do with an LLM, I feel like we're putting it in a box. Um, and that you also hear people say that LLMs are like interns, like, oh, it's an intern with a PhD. And so I try think now if you're putting an intern with a PhD in a box, like it better be a good box. Um and so we need to put effort in. Um this was a conversation we were having about what tools does this uh co-worker this new form factor this new model like what tools do we give it when it shows up for work and uh I got fixated on this idea of cursors. I was like oh what happens if it just had a mouse or a trackpad? I'm a trackpad person. Um so um that's probably controversial but uh essentially what happens if we gave the AI um those tools and so I I created this v0ero and moved it into cursor um and I was like well I work in design tools a lot so I don't migrate a lot of data so this is the best place for me to feel this right to feel this material so I created a canvas um and I could give it orders and be like hey and honestly I was I was very enthusiastic about this um for like a few seconds um it felt like I was touching the AGI a little bit. Um, but I also very quickly started feeling like I was putting a Formula 1 driver in a Prius. It just it felt like I was constraining it and controlling it. Um, it could only move one thing at a time. Um but so so learning from that um was uh something like this was just also um a a vzero um that I use clawed code on eventually and this is a new uh product that we're working on which brings like the all the stuff we've learned about u migrating data to consumers to let them work on their data um but you can see the AI is is operating in the space um and it's it's got presence and so it's it's able to read multiple files while writing into another one. Um, it's not like me who can only focus on one thing at a time. Even though I think I can focus on more, um, it's not true. And so this is us moving from determinism to infer and figuring out what this material feels like. And so, um, that's feeling the material, right? working with the model, getting it into your space, understanding how it feels um to work alongside it, what's it capable of, and then the form factors that we're putting on them. Actually, actually, you can now go build it and play with it, um and feel it. Um the next material analogy I have, which is finding the grain. Um once you've got the characteristics of the material, you understand it. Um usually the piece of material that you're building with and you're creating with might have its own characteristics. And so as we're creating these form factors, uh, finding the grain is about feeling it out. Where is it smooth and rough? Um, where is it weak? Where is it strong? Um, and we'll have to remain humble here because, um, things are going to change and are changing so quickly that whatever we we build is going to most likely need to be rebuilt. This was an example of that build mode agent. I asked it to do one thing, which was enable the automat plugin. So this just automatically maps data from the source. um data to the target data and I get a wall of text and it's not bad because this went and and I saved me probably a week of work. Um I didn't have to have a product manager write a PRD, send it to an engineer, get the in the road map, get the engineer to write it, QA. This was all just done, right? All that code was written. Um but the noise gets in the way. And so this was a vzero of of kind of rethinking the tool UX. What could it be like? And so, um, the way I thought about this was if you're designing for a if you're if you're going to a co-orker and you're going to do something complicated for them and you want to communicate, you think, okay, I'm going to choose my words carefully. I'm going to communicate visually. Um, I'm going to stop and check um whether whether it's right. And so, I wanted this to feel similar. And so, you can see here split personal details. It's visually telling you what it's doing. Saying, "Hey, is this right?" Then it's saying, "I'm aligned. I took a snapshot. You can roll back. I'm holding you accountable. You approved this. Um, and then telling you what you can do next. We also wanted to it to be able to express itself. So if something went wrong, kind of shaking its head and a little bit of frustration, which is probably what the user is feeling too um when something goes wrong. Um, and then finally, it can back off uh when it gets something wrong and sort of say, "Okay, I'm handing control back over to you." Um, and that's a lot more inter that feels a lot better and it and it felt like we had found the grain and found the right place to put this this material um with this. And so what's really cool about this one is that as we're implementing it, we've realized that it can um it can fit in other places. So uh not just in conversational flow, it can fit in line. Um and this is going to be in our kind of like inline transform functionality um really soon. So I I think like as we as we find a new technology and work with it, we run the risk of just automating the tedious things. And I was so excited about those previous two talks because there's kind of like some emergence in there, right? Like something interesting that we weren't be able to do before. Um and I'm most excited about those thing like what what emerges from from playing. Um we stopped playing for a few years um when we were kind of got the internet and we were like really excited and CSS3 came out and then like HTML 5 we were playing a lot. Um now I feel like we all playing again and so that's really exciting for me. Um this is an example of me playing. Um I created this uh V0 and I I we've been in search of this characteristic of an agent that is that feels forwardleaning. And what I mean by that is it's an agent that's curious and it's excitable, but it likes getting done. Um, and it's very focused. Um, so not going crazy, right? Like we've all seen the LMS kind of go too far when you give it a task and that doesn't feel good. Um, so here I dropped a JSON file and a CSV file. Um, and the agent decided, um, you know, it'll be good to do is combine those two things because the data look pretty similar. Um, and so here we can see it's it's combined the the file the two files into one. Um, that's a good thing that it did. I didn't have to ask it to do that. Um, it picked up on it. Um, and then after that, it wrote a a report. So, it told us what it was doing. Said, "Hey, I found some duplicates. This is probably what you need to do next." And so, it built up context. Um, and I was actually just trying to play with Claude 4 here and feel the material and kind of see how it would be. Um but I realized um I'd kind of come across this nature that we were after. Um it made some suggestions and generated a slide deck which I I asked it for. Um so within just dropping two files um it's it's done something emergent. Um and now we're baking this into our our new product called obvious um which is coming soon. Another one was we had this idea of giving our agents a knowledge base. So all the customer calls we'd had with them were all recorded and transcribed like most of ours are. Um and we had documentation from the customer and so we put it in to knowledge base and then when we analyzed all of this customer data, we surfaced up um suggestions based off that. I was fully expecting better suggestions. I was fully expecting more suggestions got those. But then here um the the agent decided I can't fix this but I know how to fix it and so I'm going to tell you how to fix it. And so it suggests here that the user actually goes to HR and gets them to generate the missing employee IDs. And what emerged here was something I wasn't expecting. Maybe you look at this and say that makes a lot of obvious sense, but to me I wasn't expecting it to be able to help the human to go and do the job um where it couldn't. Um so that was really exciting. I don't think I would have be able to get to that without um playing and and being curious. Um, and then the last thing I I want to talk a little bit about is eyes on the future. And we all have our eyes on the future because how can you not? There's always something new now um with models. Um, so I I like to think about it as like what's your pelican on a bicycle? Um, and one of my pelican on a bicycles is autocomplete. I'm super excited about. It's probably a bad idea um actually to use an LLM for this, but I'm like I want to make an autocomplete that um is backed by an LLM. And so this one has 100 suggestions for fixing some data. Um and it's kind of like a bake off um between these two things. I'm yet to find um a model that is both very fast and very good at this problem. Um but this is a a a benchmark or something that I've created just for myself to be able to feel the materials um that we're getting. And so I think about that for my design practice now, like what are the things I care about and can I like design into the future and start to think about the form factors I want and then build an application that can actually test that. So yeah, that's uh all I have for you today. I I'm very excited to see all the new form factors um that we build um with our new tools. Thank you. [Applause] [Music]