In short
Design engineering for software teams—what it is, why design/engineering tension exists, and how engineers can improve design thinking, especially as agents and AI-generated prototypes change workflows.
Guest
Maggie Appleton, cultural anthropology graduate turned illustrator/front-end designer. Worked as illustrator/art director at Egghead (developer education; learned React/JS by illustrating components), then joined Elicit (early AI startup; founding designer; no PM for long periods; shipped weekly features, did end-to-end product design). Currently prototyping at GitHub Next as a “design engineer.”
Key claims
Design engineering is product/software design that deeply engages engineering constraints (data, APIs, architecture) while still shaping interface nouns/verbs and visual behavior. Traditional “pixel mockups” tools (Sketch/Figma) can miss medium constraints like performance. Agents can implement once specs and verification are clear, but humans still need visual/spatial thinking early; agents are weak at spatial design and better at text. Planning UIs for agents should reduce decision fatigue and support diagrams/cards with audit trails.
Notable examples
Prototyping a GUI for agent planning to avoid endless A/B/C “grill me” questions; using pen-and-paper notebooks for visual reasoning; designing agentic tools’ “nouns” (plans, MCP, skills) and verbs (CRUD-like actions, branching/forking).
Written by AI. May contain mistakes. Listen to the episode to check what was said.
Chapters
Tap a time to open that second in VOMaggie Appleton's Journey into Tech
0:41 to 2:12
Maggie shares her unique background and path into design engineering.
“This episode is presented by TurboPuffer, Vector and Full Text Search built on object storage.”
Maggie Appleton's Journey into Tech
2:16 to 4:12
Maggie shares her unique background and path into design engineering.
“No one had quite the introductory story into tech like you.”
Design Engineering and Product Design
4:12 to 8:59
Exploring the nuances of design engineering and its relationship with product design.
“So the options were like, go get a PhD and become a professor.”
The Role of Designers in Tech
8:59 to 14:00
Maggie discusses the similarities between design and engineering processes.
“By the end of it, I was like, step back from startups for a minute.”
The Intersection of Design and Engineering
14:00 to 17:05
Explore how product design in tech merges visual creativity with engineering principles.
“But product design, when we talk about it in tech, is actually software design.”
Tools of the Trade for Designers
17:05 to 19:19
Discover the evolving tools that designers use in a tech-driven environment.
Prototyping Enhanced Decision-Making Interfaces
19:19 to 23:18
Learn about innovative ideas for improving user decision-making through design.
“It's kind of beautiful that that's no longer part of it as much.”
The Importance of Sketching and Physical Interaction
23:18 to 28:00
Understand the significance of sketching and physical mediums in design processes.
“Not necessarily to hunt people down, but to be like, okay, why did we make this decision about the backend?”
The Evolution of Collaborative Design Tools
28:00 to 30:40
Discusses the shift towards digital collaborative design tools and their impact.
“someone else takes and you know they kind of they're forced to take their ideas into 2d space because we don't do 3D.”
Woodworking as a Disengaged Engineer's Journey
30:40 to 32:20
Explores the connection between engineering and hands-on skills through woodworking.
“Well, the little bit of the joke is like, I just feel like at some point, every engineer, you have a choice of things you can get into because you feel like you're like disembodied from the world of working in software.”
Show all 35 chapters
Understanding Design Engineers
32:20 to 35:00
Defines the role of design engineers and their collaboration with traditional engineers.
“And then you went over and you tried to collect names of people who you knew who you felt were kind of doing this design engineering.”
The Tension Between Designers and Engineers
35:00 to 37:00
Examines the historical tension and current tools affecting designer-engineer relationships.
“what have you seen great engineering and design collaboration look like may that be with designers or design engineers?”
Adventures in Figma and Modern Prototyping
37:00 to 40:57
Shares insights on using Figma for design and prototype development in engineering.
“Like explain to me why that error state would occur, you know, and help me build a state machine, right?”
Adventures in Figma and Modern Prototyping
41:02 to 42:00
Shares insights on using Figma for design and prototype development in engineering.
“TurboBuffer's co-founder Simon describes their brand as hardcore and whimsical and their design perfectly reflects this.”
Introduction to TurboPuffer
42:00 to 42:24
Exploration of TurboPuffer's brand identity and customer commitment.
“you'll quickly realize that they create all of these by hand, not with AI.”
Challenges with Git in Development
42:30 to 43:31
Discussion of Git's limitations and the need for faster solutions in development.
“Maggie mentioned that as a design engineer, she's still putting in PRs the same as everyone else.”
Transformations in Design Engineering
43:31 to 43:52
Maggie shares how LLMs have changed her design process and prototyping.
“Have you ever wondered what prompt resulted in this code being generated?”
Transformations in Design Engineering
43:58 to 45:42
Maggie shares how LLMs have changed her design process and prototyping.
“Oh, and did I mention that it works with any agent and is open source?”
Innovative Prototyping with AI
45:42 to 47:29
Insights on using AI for sophisticated design prototyping.
The Role of Feedback in Design
47:29 to 49:28
Maggie discusses the importance of instant feedback in the design process.
“scroll effect down into the proper page um and all of that right i didn't write any code i made a bunch of different jigs and tweaked and adjust exactly how much.”
AI's Impact on Design Quality
49:28 to 54:09
Discussion on the balance between AI-generated designs and the need for human designers.
“It's great to just use a model to be like, sure, make me 20 high fidelity designs.”
Designing with Familiar Interfaces
54:09 to 55:50
The significance of familiar UI elements in user experience.
“But sometimes we have this notion of like the UI of AI will be so wildly different from our current imaginings.”
Creating Dynamic Design Tools
55:50 to 56:00
Exploring the creation of interactive design tools and their benefits.
Exploring Design Tools and Processes
56:00 to 57:20
Learn about the challenges and nuances of using design tools for web layouts.
Understanding Capability Gaslighting
57:20 to 59:17
Discover the concept of capability gaslighting and its implications for AI models.
“Okay, so I think this is similar to like Ethan Mollick has this phrase, the jagged frontier.”
Collaborative Engineering Challenges
59:17 to 1:01:10
Examine the difficulties of aligning teams when using AI agents in development.
“Like us alone with the agent, we can go really fast.”
Innovations in GitHub Next Projects
1:01:10 to 1:04:56
Learn about the ambitious projects at GitHub Next and their evolution.
“You need like a record of like, here's the things we decided, like here's the context we're going to feed to the agent.”
The Future of Design and AI
1:04:56 to 1:10:01
Explore the interplay of design, AI, and human creativity in future projects.
“One of our functions of our team is just to run out ahead of product and say, okay, you guys know what the things you should probably do in the next six months to one year is.”
The Changing Landscape of Interface Design
1:10:01 to 1:13:12
Explore how design aesthetics evolve and how AI influences design choices.
“where like it is all objectively like looks gorgeous because it's been trained.”
Understanding Digital Gardens
1:13:13 to 1:15:08
Learn about the concept of digital gardens and their flexible writing approach.
“It's a blog, but with some extra rules attached.”
Barefoot Developers and Home Cook Software
1:15:09 to 1:18:56
Discover the concepts of barefoot developers and home cook software for personalized solutions.
“I don't think it was that crazy of a prediction, but we were still more in the early days.”
Anthropology Insights for Engineers
1:18:57 to 1:24:00
Gain insights on how anthropological approaches can enhance software design.
“Like building apps without looking at the code.”
Understanding User Interaction and Design
1:24:00 to 1:25:14
Learn about the importance of understanding user context and design elements that influence product selection.
“And she talks about both like living among these people and their experiences, but also the machine designers.”
Book Recommendation: Addiction by Design
1:25:14 to 1:26:36
Explore insights from the book 'Addiction by Design' and its relevance to product design.
“a little bit on like, what are these systems we're building for people?”
The Role of AI in Design
1:26:36 to 1:27:11
Discuss the integration of AI in design processes and its impact on creativity.
“And yet agents are getting better at design.”
Transcript
Automatic transcript. May contain errors.0:00What makes for a great designer or a great design engineer and what can us software engineers learn from them? Maggie Appleton is one of the most thoughtful design engineers I know. She's worked as an illustrator, as a designer at an AI startup, and is currently prototyping at GitHub Next. Today we talk about what is a design engineer and why there's often a tension between engineering and design, the tools she's used before and now, and why pen and pencil is not going away even with agents. Do you still need a designer when AI can generate 20 high fidelity prototypes? And is AI design obvious to spot?
0:33And many more. If you're an engineer wanting to know where design is important and how to get better at design yourself, this episode is for you. This episode is presented by TurboPuffer, Vector and Full Text Search built on object storage. It's fast, cheap and extremely scalable. Today's episode will be about design and design engineering. And so I wanted to share something visually interesting about our season sponsor, Antisys. We already know that Antistesis verifies your system correctness by running your whole system in HOSA simulation and finding bugs. Here's a UI for casualty analysis. You can open a report for a bug and see the probability of a bug occurring throughout the timeline of the simulation.
1:11In this case, we can see that at virtual time 25, something happened that makes this bug close to 100 % to occur. So we can jump to this point in virtual time simulation to read the logs. This kind of bug probability visualization is one that I've never seen before. There's also this neat log explorer. You can filter on error messages and then visualize how common or uncommon the error is over time. For example, here's looking for failing linearization failures, the purple line. And you can understand how rare or common a specific failure was. Again, I've yet to see this kind of error visualization and I really like the innovation on the UI side.
1:48And finally, the simplified multiverse debugger. You can go back in time and replay a debug timeline. And you can inject bash commands at any time without affecting the playback of the bug. How cool is that? For example, we're listing files in the current directory, but as you can imagine, you can go debug the whole environment so much easier. I love how the team at Antisysys are pushing what's possible with both debugging and verifying software. Head to antisysys.com slash pragmatic to learn more. Maggie, welcome to the podcast.
2:17Maggie Appleton:Thanks, I'm thrilled to be here. I've had so many guests on the podcast. No one had quite the introductory story into tech like you. How did you get into tech? And you came from a very different background, right? Yes. Yeah. I mean, I came in because it was where the money was, I guess. I mean, not really. But in the sense that like I in university, I studied cultural anthropology, which is like my one true love. Like I adore cultural anthropology. I totally fell in love with it in university. What is anthropology? Yeah, it's okay. It's the study of human beings, which sounds impossibly broad and like, how could that be a discipline?
2:50Maggie Appleton:But it does it in a particular way where you go and you live with people intensely in this thing called participant observation. Usually it was done kind of when the field was born of different cultures. Of course, it was like anthropologists from the West, primarily going to places like Papua New Guinea or Australia and living among kind of traditional peoples and then realizing how different their cultures were. Not just like, oh, they eat different food, you know, they have different houses, but they have completely be different understandings of like what color is. They don't have completely different understandings of time.
3:17Maggie Appleton:It was it was kind of alongside the birth of psychology, like understanding how flexible is the human mind about constructing understandings of the world. And anthropology is really one of these eye opening subjects when you get into it, because you can kind of get into like medical anthropology or the anthropology of sex and gender. And you just find out how extremely adaptable and fluid human beings are. And I loved it because I grew up as an expat kid overseas. So I think I was exposed early to lots of different cultures. And so it felt very natural to me to realize like, oh, the way things, you know, people do things at home, you know, quote unquote home would be London for me, but I left at age six is completely different to the way they do it elsewhere.
3:52Maggie Appleton:And there's no fixed way for humans to kind of construct a society or live life. And the bounds of what we think is possible is much wider than we originally assume, which is what I loved about it. So I studied it. But of course, come senior year, kind of go, right, what jobs are there available in cultural anthropology? I guess living with natives isn't all that many. It's not very lucrative. So the options were like, go get a PhD and become a professor. Well, the military hires lots of anthropologists to come up with torture techniques for people in different countries. So when presented with these options by our professors, we were like, OK, OK, we'll go think about that.
4:29Maggie Appleton:And I had always loved design growing up. So I had been doing like, you know, I was a kid of the 90s. I grew up on Neopets with HTML and CSS and MySpace. and I learned HTML and CSS probably around 12 or 13 and knew how to do it, but in the way where like, there wasn't that much complexity to it in whatever this was, 1999. Did you have a MySpace? I did. Oh, oh yeah. And you customized it with all the - Yeah, all crazy animations and like the little sparkle trail at the end of your cursor. And like, I think mine was quite goth at the time. Like, but I learned a lot. But of course, at the time, the web was so new.
5:00Maggie Appleton:It wasn't like people thought this was a career or you didn't really think of it that way. But I came out of university with this degree that wasn't necessarily employable. And I just started doing freelance web design work because that was how I knew how to make money. Like throughout school, I was doing IT tech work for the university and just naturally went into this because it was like, well, I need to pay rent somehow. And I gravitated towards illustration originally because I love drawing. So I was originally an illustrator for the first couple of years. And the way that I went more into the tech side, because you can kind of be an illustrator that's like, you know, editorial or you could go into branding or like all kinds of types.
5:32Maggie Appleton:but I started working for a startup I guess I wouldn't call it a startup it was more like a design dev shop in Prague that was making UI UX apps for like SF startups at the time they were doing work for like Tinder and Uber like in the early days like in their beginnings so it was there I got exposed to UI UX design and I was making the illustrations for these apps and doing logos and branding but I like that was my first exposure to like oh there are people who design buttons and sidebars and that's kind of interesting I didn't end up going into that for a while but that was my first introduction to like what is product design in tech as a as a field and eventually i joined this company called egghead which does developer education so they taught javascript sure you've seen them around um and i was their illustrator for four years and then i became an art director and like art directed other people's illustrations for them and that was really where i learned javascript react like that was i think my real front end engineering education was like doing illustrations for them but in doing the illustrations i had to understand the material i was illustrating, which turned out to be like React components and use effect and like JavaScript functions.
6:37Maggie Appleton:And in a weird way, I just ended up moving more into front end engineering and visual design because it just felt like a natural move. You worked at Elicit as well, right? Yeah. Was that before Eckhead? After. That was after. Yeah. So you were at Eckhead as their learned design there. And then Elicit was an AI startup, right? Yeah. Early. Pretty early. Well, okay. Pretty early. I mean, it was like the founders there were really kind of incredible people. And one of them had been studying language models for 10 years. He had like seen the writing on the wall way before anyone else. But like kind of out of MIT, like PhD kind of like, you know, machine learning stuff.
7:14Maggie Appleton:And kind of had this realization of like language models are going to revolutionize science. He was really big on like how could this speed up the scientific process. So Illicit originally was, and it still is actually, I mean, they've expanded. but at its core it is using language models to speed up the scientific literature review process which is usually a very manual slow thing of all these academics reading thousands of papers and extracting data about them into spreadsheets perfect for models like a perfect use case so i joined them i think it was late 2021 early 2022 and you were the only designer there's no product manager you were the founding designer yeah yeah and there were six of us in the beginning when i joined maybe seven i might have been the seventh i forget a very small team and it stayed small most of the time I was there.
7:57Maggie Appleton:And yeah, I was the only designer the whole time. And then we had a PM at some point who left and then we didn't get another one. So it's no PM for quite a while. And it was a really wonderful experience because it was a classic early startup. But like it was like we were family. We would like stay together for weeks at a time during retreats. Like the founders had really strong conviction and they're really smart people. And I trusted them so much. So it was sort of like get on board with the vision kind of deal. And it was there I really learned product design end to end, I'd say, in the terms of we had lots of users because we had a free prototype that was like very very popular so you had all this data you could collect about what people were searching for and clicking on and what worked and what didn't and ab tests and and we just went really fast like we shipped a feature every week for a year so it was like design build like ship it measure design build ship it measure on repeat over and over for like the solid i think i was there a little over two years and i had learned a ton in that time just about the core mechanics of product design in the sense of like really going from what are the user needs, what's their domain, through to doing all the front end engineering and like tying it all together.
8:57Maggie Appleton:So it was a really wonderful experience. I learned a lot. It was intense. By the end of it, I was like, step back from startups for a minute. So you got into design, I guess, kind of more like self-taught, like figuring out there's a need for this. You worked at Eckhead where you learned to design or explain developer concept, educational concept for developers. You worked at an AI startup as a designer. What does a designer do? It's kind of a simple answer. Now that you've actually done several roles, and I get a sense that, of course, there's going to be, it depends. But at startups that you've worked with, that you know, how would you describe?
9:35And of course, many of us developers have worked with designers. Some have not at all.
9:39Maggie Appleton:I mean, I kind of describe it, it's not that different to engineering. It's problem solving. But the materials are different is the way I would describe it. It's like you go through the same process of like you have defining what your problem is. Like, are you sure this is the correct problem? Have you defined it well and scoped it well? You know, researching possible solutions, doing wide exploration. What are all the ways we could solve this? What are the trade-offs of them? You know, prototyping solutions, validating those are the right solutions. Do they work for users? Do they make sense?
10:05Maggie Appleton:I don't think it's that different to engineering in the sense that I do some of both in my job, but it's just the material is different. Instead of working with code, although nowadays with developers, you're working in higher level kind of architecture, data flow. You're not necessarily writing the syntax. but at the time what syntax are you going to use to write this problem and with design the materials are like space size weight color you know things you would see in an interface in terms of the visuals motion you know prominence is this is this big enough are these the right words for the user to understand what this button's going to do like everything from copywriting to visual graphic design but with product design you're also dealing with what we would call nouns and verbs of a product.
10:44Maggie Appleton:So it's easy when your product is like a sneaker store. It's like the nouns are like sneaker, cart, money. If you're designing AWS, the nouns get extremely difficult. And I've primarily worked in what I'd call like power user tools, like scientists, developers, where the nouns are extremely hard because they get very abstract. It's sort of like, what's the right container for a set of data? What's the right container or noun to point you to like, oh, this is your whatever set of data or like this set of data connects to that set of data. or like here's a function that transforms data into another set you need a noun and verbs to give to users so they can understand how to manipulate whatever you're trying to get them to do it's really difficult in dev tools sometimes because there's so much malleability in a way there isn't with stuff what is malleability uh like ability like it could take many different forms and shapes versus if you're designing things for the real world like i have friends who work for like government design there's restrictions there where it's like you're trying to get someone to fill out a form it's an it can be a hard design challenge but it's not complex in the same way versus like at the moment right i'm of course trying to design like agentic tools and it's like what are the nouns of agents like we don't know there's like chat sessions we have these things called plans there's something called an mcp their skills like could we make new primitives that like connect a bunch of sessions all the way to a pr that becomes a new noun that contains it like there's all kinds of boundaries you could draw that would make the user think about your experience differently and then you have to define what verbs can they take on which nouns right can you short edit rename delete this is like classic crud stuff you have to figure out but i don't know can you like fork an agent session what are the implications of that like i think the hard bit of product design is is designing a coherent system that takes all this complexity that could exist especially in something like dev tools and reducing it to the simplest possible form you can which is a very easy to say extremely hard to do every time to like a really canonical set of nouns that the user can go okay i can point at that i understand what that's going to do i can when i click a button i don't get surprised at the outcome this takes time to do this kind of like hard reduce it to its best most elegant form this is so interesting because what you've described of like you know we have a new product that has not existed before like a deaf tool in a digital space which lives in our head or inside of a computer with things that we just invented.
13:03May that be an MCP or an agentic skill. And then thinking of how we find the right word so people can use it and it makes sense. And you're kind of like, I just see that you're kind of drawing up a map in your head, which is not all that different to when you're building a new system as a software engineer. And I remember talking with Ken Beck, who talked about how with Wart Cunningham, they They came up with some of the basics of that might have been domain driven design or it might have been some related concepts. But they had a thesaurus in front of them trying to search for the right words on how to.
13:40Oh, it was the design patterns. Design patterns later came out of it, but they were trying to put a name on these constructs and these things and how. Which feels like a very similar thing to what you're describing.
13:54Maggie Appleton:Yeah, yeah, yeah. That's design. This is where I kind of get into, sure, there's types of design. Like you could be like there's interior design, there's brand design, there's product design. But product design, when we talk about it in tech, is actually software design. And software design is engineering. It's actually the same skill. Like you might be working with slightly different materials in the sense of one of you cares more about the colors and the size and the shadows and like the shape of things and the motion design. But that person also has to understand like what's the shape of the database?
14:20Maggie Appleton:Like what are these APIs? Like what is the data in the right place? Are we passing data through this component in the right way? Like they have to also understand. This is interesting because designers I worked with years back at places like Uber and at Skype. They had their design tools, which was Sketch, later Figma. They typically work with the product folks. They did explorations or UX prototypes. They often sat into user testing. But in the end, they had a design. They had visuals. They had animations. That was their thing. and they handed this over to us engineers together with the PRD or here's the product, here's how it's going to look.
14:58And then we built it and we would build the UI, let's say on mobile, and we would then go maybe sit with them or show them and they would say like, oh, this motion doesn't feel good. But my view of the designer is like, well, it was very visual. And for example, those designers, maybe they didn't need to, but they didn't need to get involved in like how they basically were selling, how the flows, they were very much aware of the flows of the user journey.
15:20Maggie Appleton:Yeah. so like is that type of design how would you characterize as being different or is it just that they that their domain is a little bit different it's more of the business level that the more kind of mobile these were like mobile and web and some of those yeah i think it gets into kind of like how we label different parts of design like the kind of design i'm talking about is obviously biased by my experience which is much more design engineering stuff because it is like when i hear design engineer that's kind of a catchphrase now and what does that mean But I think of it as a designer who really engages in the engineering and understands how the product works.
15:53Maggie Appleton:And it's not required in all domains. Again, if you're doing government forms, I don't think you need to understand the database. But if you're designing for developers or you're designing in a brand new field like AI, where so much of how the product works is determined by what is possible on the back end and the shape of the data, then you do need to engage with it a lot. but if you're working on an app where actually a designer is probably better served by advocating for the user i think that's a kind of more traditional philosophy of product design is like you represent the user and you represent trying to get the best experience possible for the user and that means user interviews caring about flows like does this button feel big enough does it have the right words and then they can spend much more energy there if they don't have to care about the technical back end like maybe it's actually irrelevant when really what you need to care about is like, does this flow make sense to people?
16:42Maggie Appleton:So that's not necessarily a different kind of designer, but it's, if you kind of think of the whole, the stack, right, but expand it all the way out, not just back end and front end, but the interface and users, and then the product in the context of a business and like a product in the context of an economy, like there are people who lean way more on this side. And I'm, I'm a bit more of the straddling of the product design and the engineering, but you can have valid designers all along this. And some people, again, you know just visuals or just animation like there's lots of niches i just like a bit more of the the half engineering half design like slice of it to help understand a bit more of what you do can you talk about the tools that you use like you know as engineers we're kind of using our tools used to be the id and the code editor and you know some of the hardcore people like vim and some of some of those things and these days of course it's changing a bit more but you know those are the tools that you use what are your tools it changes all the time i mean to some degree like some things stay constant like you're and you're use doing similar tasks but of course at the moment i'm trying to try everything because part of my job is like trying to figure out what github should do next that's what our team does that's actually the name right github next hey that's like it was well named um so a lot of the time like we are just you know of course i'm trying out codex and clawed and like dogfooding stuff internally at github i've tried conductor and i mean name any agentic harness like open code uh pi i try them all i do love codex at the moment like i do think like open ai is onto some really good stuff at least in their their design of their like desktop app is is beautiful they've really thought it through so i think they're doing some really good stuff i'd still use paper and pen for like initial brainstorming yeah you you have you have your notebooks here yeah i brought some along because notebooks aren't dead i don't think they're going to be dead forever forever and i still use figma because i know how to use it and I can do some brainstorming in it before I pass it off to an agent.
18:28Maggie Appleton:But to be honest, there's a point where once you figured out what you need to build, which is actually all the work, once you hand it off to an agent, it's not that implementation is solved, but we've reached a point where implementation is like good enough that if I spec it out really well and I list out how the agent should verify for me that it actually did the work, I can hand it to an agent and just like be like, right, let me know when you've got a PR up. You know, I don't really look at code that much anymore. I do look at PR code when I'm reviewing it, but skim, skim, skim, you know, okay, that looks sensible.
19:00Maggie Appleton:Merge. So most of the work I find is everything leading up to telling the agent to implement something. And then the PR review is kind of a separate piece of work. But like the bulk of my tools deal in this first section now versus we used to have the IDE, you know, once it was like, okay, you've decided this is the right thing to design. Now you actually start the work of like implementing it. It's kind of beautiful that that's no longer part of it as much. Open VS Code sometimes, but not really. Yeah, but beforehand you would prototype, right? Like you build prototypes. Yeah, yeah, yeah. As part of the like, what should we build?
19:31Maggie Appleton:I include in this lots of prototyping and I kind of have the privilege of being on a team where we don't have to build like production quality software. We are mostly trying to prototype and validate ideas. So we have a lower quality bar than someone shipping to proper github.com. That's a very high quality bar. Yeah, which makes sense. I mean, that's kind of you get the kind of you get the directional things right. And then once it's great, you might build it or you might decide to build it. Yeah. Yeah. But I definitely I mean, we can hopefully show these later. I do. I do a lot of stuff sketching.
20:00Maggie Appleton:I mean, even just interface design, a lot of what you're doing is just drawing boxes and then being like, does this slide over from the front from the bottom? Like if I click this button. So this is like you kind of drawing up how an interface you think could look like. So I see a mix of UIs, and we'll put these onto the screen, but UIs, description of what they do. Can you just talk to one of these or one that's interesting or memorable? Yeah. Yeah. So this is a new, I should explain the context. I'm prototyping at the moment something where my theory is like one of the bottlenecks with agents is planning is a really bad experience at the moment.
20:40Maggie Appleton:Like at the moment, you have a long chat with an agent. sometimes even in a CLI, which is a pretty primitive interface. And then the agent grills you by asking you a set of like choice A, B or C questions. And it does this like 100 times over if you're using Matt Pecock's grill me skill or whatever you like. He was just on a podcast. Yeah. And by question 20, you're like quite tired and your brain starts shutting down. That was my experience. I went through and I got 36 questions and I was kind of, they were good, but I was starting to get annoyed around like 20 or 25. I'm like, and I had no idea when it was stopped.
21:14Maggie Appleton:Right. It's endless. And like the human brain, you get tired. You can't make this many decisions in this shorter time. And also you don't have enough information about most of those decisions because it's given you a question and three options. And it's told you number A is recommended. Then you just start being like, yep, A, A, enter, A, I agree with you. So this is not an ideal experience. This gets into like agents love to output reams and reams of text. And that's an ideal output for agents, but it is not an ideal input for humans. So we have a mismatch with like, what do humans need to be able to digest large amounts of information and truly understand it and be able to make informed decisions?
21:48Maggie Appleton:That is not the interface for this. So I'm trying to explore how would we make an interface that got us to do better planning and better decision making, but in a way that was easier for us to comprehend. So this is what I'm prototyping at the moment. And part of this is like, OK, it's going to be multiplayer because, of course, everything should be with your team planning together. So several people can do it together. Exactly. But also just like how do you make it so that you have more space for each decision? So I'm trying to prototype like, OK, so first of all, this has to definitely happen in a GUI, not in a CLI.
22:19So these are just like rough ideas of how you can have more space. Exactly.
22:23Maggie Appleton:So I'm thinking of it as like each decision maybe has its own little mini document or card. And depending on the decision, some of them maybe you can just have three multiple choices. That's fine. It's maybe a simple decision, right? A, B or C. But sometimes it'll ask me things like, do you think the borders should be like gray 10%, 12 % or 15 %? And I'm like, well, show me. This is a visual question. Or sometimes it's like, how do you want the architecture to be structured? And I'm like, well, show me an architecture diagram. Show me a data flow diagram. Show me a state machine. Like I'm trying to prototype like decisions that have come with diagrams and prototypes and HTML embedded in them so that depending on what question is being asked, it shows me the correct interface to make that decision.
23:03Maggie Appleton:So what I'm prototyping here is like, okay, you've got a plan that's a big document. You've maybe got these little decision docs embedded within them that you can expand to see more of. And then looking at like, I think each decision should have a human assigned to it who made that decision so that you have an audit trail later. Not necessarily to hunt people down, but to be like, okay, why did we make this decision about the backend? Well, let's go see. Okay, Luke made that decision like six months ago. Let's go open up his decision card and be like, what information did he have available in order to make this decision?
23:30Maggie Appleton:Hopefully this becomes useful later. But here I'm just sketching what are the possible shapes this take? Is this like a stack of cards that expands on the screen? Is this like all one big linear thing? Are we like swiping through stuff like it's Tinder? Like what interfaces are going to be useful for this? So this is what a lot of the sketching is just trying to figure out like possible shapes of things. I have all kinds. Oh, these are like characters because I was trying to make an ESP character. Oh, can you choose a character? Well, this is like, do you know? Oh, this is like my kid scribbling all over my notebook.
23:58Maggie Appleton:This is like, you know, ESP32s. you know steve ruiz has like sold everyone on buying an esp32 it's like this little device with a screen and a very small microchip that has wi-fi and bluetooth and so i was designing this little character who like tells me the weather and like i'm trying to hook it up to my agent so it can be like you have this much capacity left before your reset limit happens so like this is just all kinds of things it's a mix of like like some serious stuff and some fun stuff yeah yeah and i can show like um the whole thing with notebooks and thinking on paper i think all designers do this but coming from illustration the reason I do this is because I started in a world where you have to draw everything to like figure out what you're going to do so when I was an illustrator I had tons of these notebooks where you're figuring out like what's the composition what's the physical shape of things like how are you working out like the shape of the grass in a scene and so I think I started problem solving on paper like very early on in my career like figuring out compositions and layouts was this was it was this in college when was this I think I was working for Egghead when I was doing this.
24:59And you drew all of these?
Read the full transcript
25:00Maggie Appleton:Yeah. Yeah. I trained with, I was in LA for a while, which is a terrible place to live. But with, I trained with like people who are concept artists on films and they have a really beautiful way of working. That's, that's very technical. It's very like constructing things from 3d shapes and like drawing in space. Cause these are really 3d. Yeah. Yeah. And then, and they kind of just teach you how to do like landscapes and layouts. I loved their way of teaching. And it's very, again, it's very technical it's very like engineering you have to understand like with robotics like different types of joints you could like put together a robot in so that you could actually draw a robot that was believable there was a lot of like understanding reality in order to believably draw a reality so i think doing this set me up to when i moved into like ui design to do a lot of this kind of sketching because you know it just comes naturally yeah i mean these are a little bit easier to sketch as well in terms of the user interfaces yeah but then i think it's like that it helps you think on paper that all of this is just sort of like you have an idea in your head and sure I could like go into Claude code and be like hey Claude here's an idea I have it's like a stack of cards and it's an accordion but it's much faster to just get a piece of pen like pen or pencil on the desk next to me and draw that with my hands it's like way few effort so I feel like people online keep being like oh like everyone's just going to prompt everything to create but but you need something that is like quick feedback and very loose in the early stages to figure out the shape of something before you can put into words what you want an agent to do and also it's visual it's not text and is it is it not a bit more satisfying doing it with your hand so much better yeah and then you can look at it it doesn't go away on your screen it can sit on your desk and you can like the next day be like oh yes i remember i was trying to like figure out what shape this this feature should be or like you can draw like data diagrams whatever you want it's it doesn't have to be visual but it's just a way of externalizing thoughts before they're then they're not linguistic i think this is the key thing is like again agents only accept text as inputs okay they can read images like i do take photos and put them in but they're not as good at images they're very bad at special spatial reasoning they're very bad at visual design i mean trying to get them to do design they just make mistakes where like they just don't put spacing around things and things of the wrong size and they make text overlap they can't see right like trying to explain a visual idea in text to an agent is really challenging and doesn't work very well.
27:21Maggie Appleton:So I find I still end up doing a lot of my design without agents upfront, because all it is is thinking through the visual, the visual pieces of it. And then when I'm like, okay, I know this is the shape of the thing I want, then I can tell an agent to do it. But I find it hard to like involve it earlier in a way that I think some people on Twitter are claiming they do, but I'm skeptical. But this is interesting, because even in software design, I'm talking about architecture design some of the i guess most productive sessions i've observed have been in person around the whiteboard yeah where people again we're talking about like components databases networking connections retry logics whatever you know like these things you could describe or you could put it on a computer but when you put it on a board when someone puts it on there and then someone else takes and you know they kind of they're forced to take their ideas into 2d space because we don't do 3D.
28:13I know you can draw like cool three, but we can also just box scenarios. Someone does that and the other people understand and they go in and they add their own thing or they circle or they add new components. And even in digital space, I think Meijer was a good example. They became so popular because they figured out a way to do collaborative whiteboarding. You don't have to be in the same room, but they give you somewhat similar tools. So I wonder if this whole thing of getting your ideas either to a physical medium, which I think for us engineers is the whiteboard, for you is the notebook. Maybe it just helps maybe rethink or solidify.
28:51Or also it does have a forcing function about the verbs, the shapes that you... Yeah, yeah, yeah.
28:58Maggie Appleton:Interesting. And this gets into kind of like the interfaces we have to agents right now are so primitive. I think we know this, right? we're all like a couple years into this entire thing, which is wild. Maybe five years. I forget when GPT-4 came out. Was it three or four years ago? Chat GPT 3.5 came out in three years. It was November or December. November 2022. Yeah, yeah, yeah. This is when I was at Illicit. And then because we were debating doing a chat interface and then they did it. And we were like, oh, they like stole our idea. Not that Illicit is necessarily competing with them. But that is no time at all.
29:30Maggie Appleton:And it's kind of wild we've made it as far as we have. But it's also like I always say software design is an extremely young field. Like what are we, 60 years into it at most? So even that we haven't figured out a lot of things about how to design the best interfaces for people and machines to like communicate with each other. And agents barely at all. I feel like there's this like there's this world that agents live in. There's like weights and models and skills and MCPs. And then you have your human side that is like physicality and texture and light and materials and all these things agents don't understand.
29:58Maggie Appleton:and trying to find like artifacts that allow us to meet in the middle and create stuff together is like the really hard challenge because you've got two totally different types of beings not that agents are conscious beings I'm not in that camp but they're a type of intelligence that like wants to think and act in a certain way that is not the way humans want to think and act and it's hard to like translate between the two I just find myself very frustrated that they can't sort of you know be looking over my shoulder looking at my notebook and be understanding what I'm drawing and like helping me move my ideas along this is like the eventual dream is they understand space and light and shape and lines and and you know but i think we're quite a ways away from that so one thing we've talked about your notebooks and digital tools but one thing that you've you've uh posted about recently is woodworking you said you said you're i'm at the stage of my software design journey well no i'm at that stage of software design where you start taking woodworking courses Can you tell me a little bit about that experience?
30:56Maggie Appleton:Well, the little bit of the joke is like, I just feel like at some point, every engineer, you have a choice of things you can get into because you feel like you're like disembodied from the world of working in software. So you have to pick ceramics, bread baking. You can maybe pick like motorcycle repair or something. But woodworking is a pretty popular one because it's like engineering. There's a lot of like measurement and being precise. So, yeah, I'm learning woodworking because I bought a house here and all the houses in London are very old. So you buy a house that needs a lot of work. That is like always what happens.
31:23Maggie Appleton:Maybe the same in Amsterdam. I think old housing stock. So then you suddenly become like, oh, I need to learn like DIY skills, which I was scared. You know, Claude, ChatGPT, very helpful coaches in this regard, along with YouTube and Instagram. Like you can learn a lot. But I just was like, oh, there's so many things I need solutions to that I need to figure out how to make. I need to like make shelves here. I need to like fix this banister. So I was like, well, I have no DIY skills, no wordworking, but just signed up for a course being like, well, I'll learn. I'm pretty sure I can like, I'm not too old.
31:52Maggie Appleton:I can acquire new skills and I'm sure I'll find lots of parallels to software, but in a more satisfying way where you actually like touch the thing you make. One thing that you've talked about, you've been talking about is the concept of design engineers. For a few years ago, you posted, I'll quote you, I'm having a strong, should I just become a full blown design engineer today? I'm not even sure what it means, but I just want to touch a lots of code and solve tangible problems on screens and make beautiful animated stuff. Yeah. And then you went over and you tried to collect names of people who you knew who you felt were kind of doing this design engineering.
32:27Now, that was a few years ago.
32:28Maggie Appleton:Yeah. What have you figured out about design engineers? If they exist, what they do, what places they work in? Yeah, I think they do exist. I think Twitter might have a different definition or like I think there's a lot of people where not that I should call it X. Sorry, X. Twitter, X, all the same. On X, I feel like a lot of people who get called design engineers or who present themselves as design engineers actually are like very good micro interaction designers, like a little like, here's a cool hover effect on a button and like, here's a cool loading transition state. And those things are definitely cool.
33:04Maggie Appleton:I don't consider that design engineering because you could achieve most of those things by just telling an agent to do those without looking at a single piece of code. To me, that's just like very advanced, sophisticated motion design and visual design. And that's cool, but I don't consider that design engineering because I don't think that's like a full job for you to do that as a career. But design engineering now, like the people who I think of as good design engineers do the kind of thing I was talking about before where you step much more into the engineering side of work. So you're still a designer.
33:35Maggie Appleton:You're still caring about like product nouns and verbs and like the visual design. But then you really work with engineers closely and or are like directly involved in implementing and writing code yourself. and you fully understand, well, you know, not fully, you don't have to be like full, full stack, but like you have a deep understanding of the technical architecture of the product you're building. You really are like, okay, given the shape of the backend data, what is possible in the interface? Like that sort of design work, you know, given what models are capable of and what kind of skill, like custom skills we're building into this product, like how do I explain to users what the capabilities of this product are?
34:13Maggie Appleton:Like truly digging into the technicals and not living in the world of like just user interviews and the market and like what color is the sidebar but caring much more and working much more closely with the engineers and almost always I feel like implementing a lot of it yourself like I've always done my own front end work just because it's easier and then the engineers I work with are usually thrilled because they hate CSS and then they get to go work on like the more interesting difficult stuff I'd say it's like the syncing or like the the like back of the front end work you know like the more logic stuff they really get to engage in that and they don't have to worry about like is this the right border radius on something like I don't think they very rarely care and I do care so it's always worked out well to kind of do that so I just define it as someone who's like deeply into the engineering side of the design what's in your past positions current positions through friends who are also designers what have you seen great engineering and design collaboration look like may that be with designers or design engineers?
35:13Maggie Appleton:I mean, I do find being a design engineer, I've always had amazing collaborations with engineers because, again, you do the bit they didn't ever want to do. And you take away what I assume is most of the tension between designers and engineers that I've never experienced because I've always been a front-end person. But I've heard of people, you know, there being the tension where you have like, someone's made some perfect Figma file and the engineer hasn't implemented it exactly to spec. Yes, I've been there. And obviously there's a tension there because someone made something in a medium. There's a nice gradient and it's mobile and doing gradients would absolutely wreck the scroll performance.
35:49And again, these are like we're talking about years back when this was a thing. And now you're going back like can I use a single color or you try to explain like what you can do with your either performance limitations or think about low end devices on Android or iOS versus Android where a designer might be more into the iOS world. And again, a good designer would not, but there's oftentimes the engineer would come like, all right, we have constraints here for whatever reason.
36:15Maggie Appleton:Yeah, I think this gets into like, I don't want to blame the designers because I think it's a failure of tools. Because the design tools that everyone used to use, Sketch and Figma, these like pixel mock-ups, they have no relationship to the constraints of the medium, which is like whatever you're building for, iOS or desktop or the web. Like you have to understand like the materials you're building with in any design role. Like a table designer would not like be oblivious to like how oak performs in certain contexts, right? Or like how pine dents in a certain way. And in the same way, I think if you're designing for the web and you don't understand like performance or like how is your app like fetching data and what's the loading time?
36:51Maggie Appleton:And what if there's race conditions? Like I think if you're oblivious to that, you'll end up with bad design solutions and then with really bad relationships. Yeah. Yeah. So I'm hoping agents actually help solve this, right? Because really then designers using agents can step more into the engineering side and also use agents as a coach and like a learning tool and say, okay, the engineers come back and told me that we have this like error state I've never heard of in my life. Like explain to me why that error state would occur, you know, and help me build a state machine, right? Like there's like all these new tools available, but those old frictions I have to assume were just like tool-based things.
37:24Maggie Appleton:And I would say designers that are maybe stuck in the past who don't want to let go of like, oh, I make pixel mockups. I don't know if anyone's there anymore, but if they still are, I mean, you're just, yeah, I can't imagine that relationship going well in the future. And then you mentioned Figma. Figma was such a popular tool for a while. That was the interface between engineers and designers. How do you use Figma today or how have you used it in the past? I think I've always used it like not to get to high fidelity mockups at all. I think to get like the rough shape of things past a notebook.
37:57Maggie Appleton:It's like a notebook. You can be like, okay, the shape of it is like this, but it's such a rough sketch. And Figma is useful, I find, for being like, okay, exactly what color is like the right amount of contrast to like draw attention to this element on the page or like exactly what size does this text need to be to like flow well. But then I would never take it to high fidelity because, of course, everything always looks different. I mean, I primarily designed for the web. Everything looks different in the browser, right? Depends on the font rendering and all this kind of stuff and responsiveness and then exactly your breakpoints.
38:24Maggie Appleton:so I would always take it into browsers pretty early on you get like medium fidelity in Figma like the shape of it and then you take it into a prototype and then you can really tweak and refine and of course with agents now it's just like I point an agent at my Figma mock-up and I'm like just get all of that in there and then and then uh make you know what's called a jig which is where you get like little sliders and variables attached to like a jig a jig comes from woodworking or you make like a little device that helps you do one specific job so with design when you're working on a live prototype you say like okay here are the variables i'm not sure about i'm not sure about like my my headline size i'm not sure about these colors give me sliders and color pickers and like all these things or like the animation curve i'm not sure about give me and then i'll and then i'll tweak it live and then when i have the values just right in the live version then we'll commit those to be the actual values much faster it's like build your own figma as needed and inside of GitHub, how do designers work?
39:22How do yourself and other designers work? Because it's a bigger organization, you're building a tool for developers with a bunch of different parts.
39:30Maggie Appleton:I mean, I don't spend that much time with like the GitHub design org proper. I know some people in there, but... Oh, because you're next. So the GitHub next team is a little bit isolated. Like we still have good relationships with the rest of the org, but a little bit by design, we're supposed to be kind of like the R &D team out on the side kind of doing weird stuff and then trying to convince the rest of the org that we're right and they should like pay attention and do our thing, which is a whole different politics thing. So I like kind of see the designers, but I think they have a very different job to me in that they have to like uphold quality standards and they're working on like a big design system and like an old Ruby on Rails app.
40:02Maggie Appleton:Like they've got very different constraints to me. Yeah, and they have like millions or even more, like tens of millions of customers who like does now a different thing. They've been used to certain things or finding certain things or certain patterns. Exactly, exactly. Changing anything on.com is like a whole political thing because customers expect, you know, them to come in and they have critical workflows. You can't move their button. But the team I work on, there's me and one other guy who are both design engineers. So we both like do engineering work, but we are more the design people and everyone else is much more engineer.
40:31Maggie Appleton:And they're all really senior. So it's fun to work with them because like they've seen everything. They like know how to architect an app. But we don't work that differently to engineers, I find. I mean, we're putting in PRs the same as them. We're like working in the same tools and materials. It's much more that thing of like what bits of the app we care about. I, of course, care about the interface part. And then like my engineer partners will, of course, care about like the back end and the data flow and everything. So same tools, but different like considerations, I guess. I wanted to take some time to mention our presenting sponsor, TurboBuffer.
41:01TurboBuffer couldn't be a better sponsor for this episode as they have what I think is one of the most refreshing brands in tech right now. TurboBuffer's co-founder Simon describes their brand as hardcore and whimsical and their design perfectly reflects this. TurboBuffer, the database, is extremely hardcore AI infrastructure. It supports critical search workloads for Entropic, Notion, Bridgewater, Cognition, and many more of the largest and fastest growing AI companies in the world. They take reliability, performance, and scalability very seriously. But TurboBuffer, the team, refuses to be another sterile, boring enterprise tech company.
41:37Just look at their website. It's exactly what you would want the website for a database to look like. It's simple, modest, and transparent. They even put the limits on the homepage. But it also isn't boring. It's nice to look at, it's very well thought out, and their little ASCII diagrams perfectly blend hardcore engineering with whimsical design. Plus, if you've ever tried to generate a good ASCII diagram with AI, you'll quickly realize that they create all of these by hand, not with AI. TurboBuffer's brand is the perfect reflection of who they are, and that's why it works so well. The brand is hardcore and whimsical, and so is the team.
42:13I highly recommend TurboPuffer not only as the extremely scalable search engine for AI, but also as a group of people that will go to exceptional lengths to deliver for their customers. You can check them out at turbopuffer.com slash pragmatic. I also want to mention our season sponsor, Entire. Maggie mentioned that as a design engineer, she's still putting in PRs the same as everyone else. And every one of those PRs is pushed to Git hosting. But there is a problem with Git agents. Git is increasingly becoming a bottleneck for modern, agent-heavy software development. Devs are creating more code with agents, these agents are pushing more code, and many devs are running parallel agents that are pushing even more code.
42:53GitHub is clearly struggling to keep up and has frequent outages. So, what is the solution? Entire was founded by GitHub's last CEO, Thomas Dömke, and he rebuilt Git hosting for the Agenda care from scratch. Entire was built to be very fast and have your repos regionally close to you to reduce latency, allowing for fleets of agents to push in parallel. And Entire's performance is next level. Their repo can handle 418 pushes per second, and that's up to 89 times faster than every other competitor on the market. When GitHub is down, you can still keep working, and you don't need to migrate away from GitHub.
43:27You just sign up to Entire, and the platform mirrors your repo. Oh, and one more thing. Have you ever wondered what prompt resulted in this code being generated? I find that the prompt and conversation with the agents carries more information than the PR itself. Entire captures all the prompt history with your agent right in the repo, easy to check back. And it's got a pretty innovative UI to show all of this. If you're looking for Git hosting that works even when GitHub is down, head to entire.io slash pragmatic, install the CLI, and mirror your repo with a click. I've already done it. Oh, and did I mention that it works with any agent and is open source?
44:02And then with LLM, since they came out, how has your design process changed? You've already mentioned how it's now a lot easier. You can, like, for example, if you either have an interface of design, you can ask Plot or Codex or any other agent to implement it. But what has changed, like, between the notebook, between your mock-ups, between the prototype that gets there? What parts are easier and maybe what parts are trickier?
44:28Maggie Appleton:It's definitely all faster and it definitely all feels a bit easier. I will say, like, I definitely remember not suffering through like making elaborate prototypes in Figma because that was going to be faster than like building more complex things in the web. And then trying to show them to users with these like Figma click through prototypes that obviously like everything is faked. So I remember that on the user thing. And then sometimes you have to like have these weird things that click here. and then yeah so you're like in these user interviews and like the user's trying to click something that you haven't hooked up to like a like a fake new screen and the whole thing just feels a bit insincere and then even when you did make prototypes you you couldn't spend any time making them look nice so then sometimes the users would get like a bit distracted or confused by the fact it looked terrible but yeah but we only we only had a few days and then we've got to move on to the next prototype and now i wouldn't have that problem at all right like now i can build something that really looks quite sophisticated and not with the agents doing it on their own a lot of direction I find to make something that I would think was an acceptable interface but it's so much faster sometimes I have even mocked up quite high fidelity stuff in Figma and then just been like hey agent here's the Figma file you know goal mode you play right take screenshots if it doesn't look like the Figma keep going keep looping until it looks exactly like the Figma and it'll get there and so that was just like I can run that overnight I don't have to do anything in the morning the interface is pretty much there as I specced it out like and to you guys this was grunt work right totally it's totally because you're like this isn't complex this is like okay again we're building another sidebar right let's get the react components and like and you don't really care about the cool quality or tech depth or any of like it's gonna be throw away anyway right like if if it works because of that because then you'll build it and if it doesn't work like create it doesn't matter so prototyping is a whole different game now i feel like you can prototype much more ambitious things and then i do love the whole jig thing it feels like this malleable software thing where like you can make the software whatever you want it to be where i'm not constrained by figma's available tools i can be like okay i'm trying to make like this animated constellation map for something i recently did like what speed are the stars moving at like what zoom level are we at like you did that yeah and like how much what degree is the gradient at on the screen and you just put these all on little sliders and you just tweak it and then you think oh i really want like a slight like green like grain over this tell the agent you know it's like it honestly feels like magic a lot of days it's do you have that oh i might be able to pull it up yeah let's see so this is something i built for the new github next like um website we have a kind of basic one up but i wanted something a bit fancier we want to make it a little bit easier to like publish research frequently so i was playing around with some like you know some jazzy some jazzy home pages um and this whole thing this is like an animated like spinning constellation and these are like some projects that the team's worked on over the years amazing and like this kind of thing to prototype this right of course i started with the sketch and notebook but then made a bunch of jigs where i was like okay what color is the background and like how fast is this map spinning and then there's a bunch of like physics cool physics on the stars that i didn't have to do any physics you know i didn't have to know anything about that um you know how how big are these when you hover over them and then i did this like cool scroll effect down into the proper page um and all of that right i didn't write any code i made a bunch of different jigs and tweaked and adjust exactly how much.
47:43And so these were, just imagine these were like things on the screen, for example the color you could go from like blue, green red, and then you figure out alright, you like this the most, the sizes, all of those, right?
47:53Maggie Appleton:Exactly, I can be like, make me a slider for controlling the animation variables on the constellation experiment. So we'll let that work. But that's the kind of, it's like really simple, if you tell it like make me controls or make me a slider for whatever it is you're trying to do. You just think about like, okay, what are the ways I need to like tweak this to make it work? It's pretty good about just making them. I mean, I have a skill, so it like knows how to like make them so that they look decent, right? And based on your preferences, you know, what you figured out works. Yeah, yeah. But then it's great.
48:28Maggie Appleton:Just hooks it up and then you can just kind of like play with it. And it's a whole different way to design. It's very, you know, Brett Victor, like the live programming stuff. um brett victor was he's he's an engineer also a designer i mean he's off doing some crazy stuff now he did a set of talks between i don't know it was like 2010 2013 one of them's like stop drawing dead fish and it's about how like programming is not a very live medium like you know you code in the editor you do your whole build and then you like look at it in the browser or wherever it is and these two things feel very disconnected and it's very hard to like you're tweaking variables in code and then you have to go see the effect and it's not a direct connection yeah and so his whole thing was like you need to have instant direct feedback at all times to be able to like look at the artifact you're making and directly tweak it and it's like this kind of stuff come to life like now we finally can do it but before you couldn't do that there was like no programming system in existence that could give you like a live preview of every possible variable or or thing like the closest we have is like dev tools in the browser well another topic which is very related to this one while we're waiting for one thing that with ai of course you're saying it's easier to build stuff but with ai it's also easier to design when i was asking people like how they work with designers an engineer replied to something which i hear a lot more which is i'll quote this this person amir as an engineer i asked cloud design to generate 20 high fidelity alternatives and i keep it turning to a line of the perfect design it's very enjoyable and feels much faster than interacting with the design team so it is a thing saying oh i have these tools i don't necessarily need a designer like i can just ask for all these like and in this case it will just give me 20 alternatives i'll choose the perfect one and boom i'm done as someone who is a designer what's your take on on this and by the way this is not the first time i think there's always the thing like do we need designers do it as engineers do we need product managers and of course you know product managers will also ask do we need engineers and so on but what do you think where could this be valid what could people be missing i think in cases where you don't have a designer to hand and you're trying to like validate a product or like prove a hypothesis, but you need an interface for it.
50:33Maggie Appleton:It's great to just use a model to be like, sure, make me 20 high fidelity designs. I'm sure I might look at those designs and be like, wow, like it all depends on taste too, right? Like I might look at them and think, okay, well, these look obviously generated by AI to me. And I don't know that they're going to do the job that they need to do it. Again, it depends on the context. If it's something simple, needs a button and a sidebar, fine. But if it's like, you know, we have some new primitive, we're trying to make, figure out the shape of, that's when you really need a designer to come in and like really it's just someone who's assigned to like think through the problem properly like put in the brain work and be like okay do the experiments like show them to users like figure out what people actually understand and don't and that's really like the labor a designer should come in and do but I think it's completely fine for for developers without access to one to like use models as much as they can but when models do designs for me I of course just look at them and think that is terrible quality that is awful even to the extent of like I think they've been prompted with some what we would call like universal design principles but they sort of don't don't understand nuance and context and then i think they'd like stick to them too strictly so like i find the agents want to put a label on everything in the interface label meaning like a small bit of text like there might be like a little button that's like to close the sidebar and we would usually use an icon button for that because most people are trained that this little button near the sidebar means it'll close it and they'll experiment with it and they'll click it and they'll figure out that is correctly what it does.
51:58Maggie Appleton:But the agent will write close sidebar or close modal in the top right hand of the modal. And you're like, there's now a lot of text on this page. And they'll just like put like four lines of instructional text over a button and just things where you're like, I understand in the model's mind, it's thinking, oh, this is how we like make the interface explainable to the human, you know? But actually it's really bad design. Now, talking about the UX and UI for AI, what do you think UX and good UX and UI looks like? And I know this is a bigger question, but so far, what have you learned of what works and what doesn't?
52:37Maggie Appleton:I think when it comes to this, like, what is the ideal UI of AI, which is like a big question. I don't know that we'll figure out the answer to for a while, but it's something like some things haven't changed. Like in terms of what is good interface design for software, there's still a lot of principles here. Like what formats do we have to show users like data? You know, it's like dashboards and sidebars and documents. Like there's a lot of things that haven't changed. We actually had a good story from this, about this from Elycit, where the app was like helping scientists like extract data from papers.
53:08Maggie Appleton:And they were very used to doing this in Excel spreadsheets. They'd get a big Excel spreadsheet, put the papers in, one on each row, and then they'd extract each piece of data into the cells, right? Pretty standard process. But of course, in the beginning of Elycit, we were like, oh, that's so old school. There must be some like much better interface for like, you know, seeing the data extracted from papers. So we tried all this crazy stuff. There was like infinite canvases with like cards spread everywhere. There was one that's like a bunch of cards that are all like linearly stacked. We were like, maybe it's more like Notion with these like composable documents with rich interfaces.
53:38Maggie Appleton:Like we tried all this stuff. And every user interview I did, users were just like, this is very confusing. Can I just have a table? Like every time. And so after a couple months of this like, oh, what's the new UI of AI? We were like, oh, it's a table. Well, at least in our use case, it turned out the interface people were using was the best because it was the most familiar to them. And it caused the least amount of like cognitive load for them to use the tool. So we were like, right, back to tables. That's fine. Like it was good to go on that journey. But sometimes we have this notion of like the UI of AI will be so wildly different from our current imaginings.
54:15Maggie Appleton:and sometimes it's really not at all. It's like you can do more powerful things. I think there's lots of leverage, but I expect it to all be built with documents and sidebars and cards and tables and like all the classic things we've worked out do work and people know how to use. Yeah, it's interesting. There's a cognitive load in learning any new UI paradigm. It can be confusing if your existing tools don't work like that because again, people will still use operating systems and Google Sheets or Excel or Office documents, et cetera. And even if like a small subset of people are like, I don't know, familiar with this new UI stuff, you remember like probably like parents or grandparents teaching them how to use the phones, the interfaces.
54:56And once they learned it, they're good. But then do you really want to do that again?
55:00Maggie Appleton:Yeah, no. It's interesting. Yeah, so it will probably be something similar. Yeah, it's kind of like how we started with chatbots, right? It's like chatbots were not the final form. Like if we could look at codecs, like there's a lot going on here. There's sure there's a chat window here. but there's all kinds of things going on with git work trees over here and then we've got this whole interface and like i can do like annotations and debug in this like there's a lot of extra stuff where you take the familiar primitive and you expand outwards from it and we did similar things like there was still a table but then we baked a lot of stuff into the table and around it but you start with with familiar primitives so here i can like we have our jig ready well yeah let's expand this so here's a jig this is using um dial kit um this is built with this i can change the speed of the animation to see like oh is that too fast like is that too slow um the intensity is like the how much gravity is being applied to the stars here wow uh how much variation is there in the stars this is sizing and scrolls this is like when i scroll down to have this zoom out like what's the resting height uh i think this is of the and this is here like the resting height of this resting logo size let's see what this this is like i have some glass effects on the surface that it's like oh it's on the um on the top top thing like that how much is that glass effect like let's see that's too bright then you can't read the words all the way down here you can barely tell it's glass so there's some sort of like happy middle ground you want to figure out like how much contrast between the background so this is where you weren't kidding that this is like your own almost personal figma if you will or like design tool yeah and then because it's really difficult to mock up static versions of this in figma which i have done yeah like i was for a minute we were thinking maybe like a gray background trying to figure out how much like grain and stuff maybe like a wavy one yeah and then i'm trying to figure out here like okay is it like halfway off the screen maybe there's like a slice out of it here so you can play around with like layouts and ideas but you can't get a sense until it's live in the browser you know of how this is going to feel and like how much scroll you need to do here um like and then like the themes and the colors and textures and everything so i i work with this a lot now whenever i'm designing something visual it's so much easier to have live variables which again it would not have been possible before you could have built this by hand i guess in the olden days just would have been practical just coding the thing itself was slow enough one interesting thing you talked about is capability gaslighting.
57:23What is capability gaslighting?
57:25Maggie Appleton:Okay, so I think this is similar to like Ethan Mollick has this phrase, the jagged frontier. It's pretty much that, but I came up with capabilities gaslighting before I read his work. But so that people are familiar with the concept, it's that models are really, really good at some things and really bad at others. And it's really hard to predict when you give it a certain task, which of those is going to fall into. And then capabilities gaslighting was the feeling I got early on from using them where like they They convince you they're so capable because they'll really impress you on one task.
57:53Maggie Appleton:And then you try them on something else and like they fail and you kind of feel like I feel like you kind of gaslit me, like imagining that you're this extremely intelligent agent or model. And then you like fall on your face. And then sometimes I feel like they fail, but I haven't totally noticed how badly they failed because I still have this belief that like, oh, but you're a frontier model like Opus could never really get this wrong. It totally does all the time. So it's such an inconsistent experience. And it's like it's so different to working with a human. Like if you find a human who you feel is like really an expert in a topic and you work with them, it's very unusual for them to be inconsistent in their performance, right?
58:27Maggie Appleton:Like it's very rare for them to suddenly forget all of their like expert knowledge on a topic. And if they did, you would be very like, are you having like a mental breakdown? Like this is very weird behavior. But this is how models like behave every day. Like one day they will actually perform really well on a task and they could fail at that same task the next day because you prompted differently or they had different context available or like random whatever it is. like stochastic outputs they just didn't do as well so i think it's hard to work with them because you never quite know what you're going to get yeah it's uh i guess we just need to keep this in mind right because yeah and this is ongoing like of course we always say and we have seen that the models improve but you want to be skeptical yeah yeah of course there's some baseline with frontier models like they're not going to perform below a certain bit but you know of course the models are changing all the time and people complain about this that you upgrade to a new model in it and it changes what it's good at or it changes like it doesn't perform to your expectations of certain things it's like it's hard to predict you did a talk titled one developer two dozen agents zero alignment why we need collaborative engineering can you talk about just this observation like one developer two dozen two dozen agents zero alignment yeah so this is like a problem that the github next team has been focused on trying to find various ways to solve I think for well over a year now, is this acknowledgement that we are now working with these agents locally on machines and it speeds up each individual person.
59:50Maggie Appleton:Like us alone with the agent, we can go really fast. The software is always built on a team, right? You're always trying to align with like the product managers and the designers and the other engineers, like what decisions you're all making. And we don't actually have good tools in place to do that. It's sort of like we have Slack. People might have something like Linear or GitHub issues where they're like doing issues, but there's tons of pre-planning work before you write an issue because usually when you write an issue you're like ready to hand it off to an agent but before that point you have to have agreed upon your approach and like should we build this feature is this feature the right shape does it have the right interface like do we have some sort of database migration we have to do there's all this like upfront work and not many good tools do that work in is how we felt especially not ones with agents involved in them so the biggest gap seems to be like we have agentic coding tools but none of them are real-time multiplayer all your sessions are private and shared to you, often locally on your machine, so you couldn't possibly share it with someone.
1:00:42Maggie Appleton:This is starting to change now. We have seen some products come out that are trying to do live multiplayer agent work, like Buzz from Jack Dorsey and Ace, the prototype that we made at GitHub Next was in this direction, was like shared compute, shared sandboxes in a Slack-like interface, so you're coding and talking at the same time. So people, I think, are beginning to realize this is the next big thing we need to push on to improve in our agentic coding tools, but it's still totally unsolved like even once you have a slack interface and there's an agent in there you still need tools to agree on things this is where i'm kind of pushing on like maybe decisions need to become sort of first class primitive like when an agent presents a decision to a human you first need to have the decision be like large enough on screen to give you the information about it but then also you probably need someone else in your team to come like help you make that decision or at least like give input on it and then someone has to be responsible for having had made that decision.
1:01:34Maggie Appleton:You need like a record of like, here's the things we decided, like here's the context we're going to feed to the agent. You know, there's some moment where we've written like a clear set of issues or specs that we're going to hand off to be implemented. And then some verification check on the other side. But you all need to be so aligned up to the point of implementation, because in the old world, implementation took so long, you could like adjust along the way. But now, because there's a sort of hard handover point to an agent, you need to all be aligned up front in a way that we're not at the moment like even our team we feel this all the time it's like we're all individually running on our machines and it's hard to stay like aligned on what we're doing and you mentioned github next and the prototyping that you're doing can you talk a little bit about the types of projects you've built that you're experimented some learnings that you've had maybe give us a direction of like things you're you're now excited about exploring yeah yeah so um i joined the team like a little less than a year ago, but most of the time we were working on this prototype ACE, which is like Slack plus cloud compute, like sandboxes and micro VMs and a bunch of other stuff in there.
1:02:37Maggie Appleton:Like you can like open PRs and review your code and that kind of stuff. So it was a kind of an all-in-one multiplayer workspace. And it was a really like useful prototype, but it turned out to be extremely ambitious for our small team. We had like three or four people working on it at a time. And we wanted at some point to take it to like a real product, but it just turned out that was like not feasible with the number of people we had. But we're trying to take bits of it and ship it to the rest of GitHub. Like sandboxes have now gone out to be part of the GitHub desktop app. That's being used in other ways.
1:03:07Maggie Appleton:And I think it's also made leadership take the multiplayer thing more seriously and try and find other ways we might ship that to the product. And this is a really promising direction. I mean, we already have a deep dive out by the time this podcast is out about Ramp, who have built just this inside and they made it collaborative. It's forced collaborative. You cannot make anything private. Oh, yeah, we took that. They have multiple interfaces. They have this running. It's called Inspect, and it runs in Slack. There's a Chrome plugin as well. There's a web interface. And they did find that in the Slack channels with product manager designers.
1:03:40They can talk. The agent inspect gets all this input. And then all the sessions, anyone can join a session, and anyone can prompt and change the direction, which actually was a really concerning point. they weren't sure if they want this because people previously, but they were like, well, it's just civilized things. So it turned out to not be an issue. But because of this, it spreads better. And it has all this feedback loops. And the reason it works really well for them is it's integrated this agent to all of their internal systems. And their cloud machines are like a full blown developer machine, which is a lot of work.
1:04:14Like cloud development environment, which is all this to say, like doing this for one company specifically for them, it's possible doing it as a generic solution. probably more difficult. I'm sure it will come or I'm sure there'll be attempts. But, you know, this is the difference between like scratching your own itch and doing something that works for everyone or so many people.
1:04:35Maggie Appleton:I mean, Slack, right? They launched their whole like developer experience IDE thing, which like they might be able to make this experience happen or like Buzz from Jack Dorsey is kind of going in this direction too. Like there's clearly lots of people realizing this is a problem. And you're also experimenting in this direction, clearly. Yes, yeah, yeah, yeah. So one of the things like When we tried to build this whole thing, it was too ambitious to do it with all the micro VMs. But now we're kind of scaling back and thinking, okay, what bits of this can we prototype in ways that would help GitHub leadership have a bit more direction of where they should run next?
1:05:04Maggie Appleton:One of our functions of our team is just to run out ahead of product and say, okay, you guys know what the things you should probably do in the next six months to one year is. We are much more like, what is a big, crazy swing GitHub could make? Or what's more risky? Or what's the far future? and so that's why we're trying to prototype okay people are now on this multiplayer like sessions thing what comes after that so now we're interested in like how do you make proactive agents that aren't annoying is one of the things we're trying to explore yeah because proactive agents you think we have this dream of like okay assume assume intelligence is like free or so cheap that like it doesn't matter right that's an that's a fun assumption to make if you could have a hundred background agents running what would be the least overwhelming least annoying way to consume any of their outputs is like an open research question we're trying to figure out.
1:05:49Maggie Appleton:How would you have agents working in a document with humans where it's not, again, overwhelming or annoying for them to be making changes or doing helpful background work in a way that doesn't feel like invasive or interruptive? So we try and take these kind of design questions and figure out prototypes that could solve them in the hopes that like, you know, if one day GitHub wanted to build something in this direction, we can then be like, hey, here's all the research we did. A question I wanted to ask you is, it's coming from a developer angle, Well, it's what happens when in your experience, observations, when we start to give more and more decisions to the agent.
1:06:24And I'm going to quote a developer, Jorge Manrubia, who wrote an article called Oh My Craft. He wrote, the need to intervene on the small stuff is decaying quickly as models improve. And when models are capable enough to handle those details themselves, spending too much time on these details starts to feel like a poor use of human attention. and he writes about how he's not opening it he really opens his code editor anymore he it's been months he wrote a single line itself but the thing is he used to live inside and see all the details and there is a sense that craft has to do with being there with the details and of course you're you're coming from a design perspective but what have you observed of your own craft changing decaying or you know what you're seeing that you you think this is there's a danger as there's this temptation as you know we talked about like just good good good make this decision we just did this with the slider which didn't matter
1:07:20Maggie Appleton:but it can matter or does it matter? I mean it's hard because I'm not like I would say like a true engineer in the sense of like I don't necessarily care about clean code that much right? But you care about great design but I do care about design but the thing is they can't they definitely can't do design to my standards yet or I have to still be really involved to get the design to look and feel the way I would make it. So I'm annoyed almost that I'm always in there being like, no, that is a terrible transition. Here's how we should do it, you know, like this. So you're into details. You're not letting go of those details.
1:07:54Maggie Appleton:Yeah, because I wish I could. I wish, I mean, I've written... Do you? Design. Well, I don't know. I want to push you on this. Yeah. I keep thinking this, like if tomorrow, I keep trying to write design skills that tell the agents exactly my design preferences, which won't be universal. I have preferences about how much padding I like between a border and an element, right? And that's not everyone's preference and it's not right for every product. But for me, I'm like, there are set rules. Is this much padding? Is this kind of border shadow? Like, it's pretty standard. And I've tried to write these rules, but then they don't universally apply them properly and it doesn't work.
1:08:27Maggie Appleton:And so I always end up in there changing specific values that you would think by this point in time would have been automated away the way that we all talk about that agents are like taking over software. You would think this would be like so trivial. to like for them to implement like a certain kind of whatever it is opacity level on a border. So I kind of think like if I woke up tomorrow and they just the skill just worked or like the agents just had enough context and they just designed exactly to my specs. I wonder if I would be like, oh, all the fun bit is gone. Like, is it satisfying to have like a gorgeous inner face appear in front of me?
1:08:58Maggie Appleton:But I didn't I didn't do anything to make it. I'm not sure. I almost I also think about this with like interior design stuff. Have you been on Pinterest any time in the last like two years? I'm familiar with it. And, you know, my wife is... And when we're decorating a new house, like I remember collecting these things. We work with an interior designer and my wife collected a lot of things, but I also was there and you have these kind of like, we're kind of thinking like this, but not quite. But like when you mix this, trying to explain, you know, like we didn't have the tools beyond like we just take screenshots.
1:09:32So yes. Yes, yeah. Familiar in open print just, I guess.
1:09:34Maggie Appleton:You know, you know, you know, yes. is a lot of it is AI now. If you get on there. Oh, really? There's gorgeous rooms. If you search for certain things, but you look and you can kind of start to see like, oh, that's for sure AI. That's for sure AI. Which is definitely problematic when they're images of a physical space because then you go like, well, the light might not be accurate or this is all just fake. And they look beautiful, but you kind of think like, well, someone didn't make that room and that's not a real room that exists. So it's almost irrelevant to my interior design. And I kind of wonder if it's like this with interfaces where like it is all objectively like looks gorgeous because it's been trained.
1:10:06Maggie Appleton:It's like very much like everything that was on the web that we've, you know, clicked thumbs up on. But with interfaces, if they all become extremely slick, like think you take, you know, what's popular right now, the linear and the Vercel aesthetic, right? Like very minimalist, very clean, very white, a little bit of rounded corners. If all the agents can implement that, no problem, just like dead on. People will start to design in different ways because that will become a tell that you've just used an agent to do the design. And if you want to look like you're going to stand out, you need to have some human do something new and different.
1:10:33Maggie Appleton:I think it gets into like design, although it has universal basics, like is the text big enough to read? Do you have enough space around things? A lot of it is fashion. Like it's in fashion right now to look a little bit like linear. It's not in fashion to look a bit like MySpace, but it was a while ago. And there'll be in 10 years in the future, if you look like linear, you're very out of date. You look like some old crafty piece of software and there'll be some new aesthetic that comes up. So it's like the models can't necessarily understand that design is like within a cultural context and that cultural context is always changing and it signals different things to people.
1:11:07Maggie Appleton:And if people read it as like, oh, they didn't care about this site because it's just like the bland basic code. Like Claude has a specific design language. It's very like noticeable, right? Cream background, like slightly red text, like this eyebrow text on things like you look at it and you're like, yeah, Claude generated that. No human was involved in this. Like, I don't know if I'm going to bother looking at it. So it gets into this like the aesthetic style you pick communicates to the person viewing the product or page and things that clearly were made by agents. I think we might start to reject out of hand.
1:11:37Maybe I have this thing where when it's text, when it's written text, I can immediately tell if it's AI written. But I can never tell if it's because I write a lot. I also read a lot. I read a lot of, you know, like fiction. And so it just feels off immediately. And it doesn't it's not just just Claude. It's just the repetitiveness, the adjectives. But I can never tell for sure. Like, am I the one who notices because you said like, oh, you see, it's Claude. And I'm not sure if I looked at a Web page that I would see that it's Claude because you're you're so into this the same way I'm so into words or or nonfiction writing.
1:12:15Maggie Appleton:Yeah. So I do wonder if if maybe we're having to as an expert, you can always tell. but the experts are always a small percentage of population. We don't know, but I do agree with you that it is predictable in ways that humans are luckily not, I guess. Yeah, like I definitely noticed the writing one too, because I'm the same, I'm a writer, I love writing. And the minute I hit any sentence that is like remotely like, yeah, just like close tab, nevermind. And then even like going back and reading, you know, nonfiction books that like were really like not written a long time ago. You could go back and read a book written 50 years ago.
1:12:49Maggie Appleton:And just the opening is so refreshing. You're like, oh, these are such novel words. Like there's none of this like if this, then that, or it's not X, it's Y. There's not a single bit of it to be seen. You just like breathe in like original human writing. And it's so refreshing that you go, yeah, I can't stand to read anything that's agent contrived. Speaking of original writing and human writing, you've talked about concept of the digital garden. What is a digital garden? It's a blog, but with some extra rules attached. So it's a blog where every piece you put up does not have to be finished. as long as you clearly signal to the audience it's not.
1:13:23Maggie Appleton:So it's a blog that you grow over time. So you can put a piece up that's half done and then update it later. You just have like an update of that date. And I usually will, I communicate it with three different stages my posts go through. So I have seedlings, budding and evergreen, like very in the gardening metaphor. So I can put up something that is like a half finished thought and mark it as a seedling and then like come back to it later and finish it up or fix it. Writing in this way has made me, allowed me to publish much more than I ever would have otherwise. Like I have perfectionistic tendencies.
1:13:54Maggie Appleton:This was very much a counter to that where of course I want some of my stuff to be my best work, my most polished, but it's completely unrealistic. I would never put anything up if that were the case. So working in this way really freed me. I mean, I started my garden in like 2020, I think. So it's not been that long, but I've written a fair amount, more than most people have blog posts on their website because some of them are frankly like three paragraphs long or they have some of them I have big long essays that have taken me a long time to write but halfway through the essay you'll hit something that says draft in progress and everything below that point is pretty rough one of these I started three years ago every time I have like some free time I go back to it I like finish one more paragraph I like move the little draft notification down it like allows me to work in public which I also think helps like people kind of get to see behind the garage door a little bit because often the notes below the draft point are like bullet points or like oh I should say something about x in here I'll just kind of put it on the website as long as it's marked appropriately I think it's fine it's like this like contract between you and the reader as long as you're communicating to them that these are like rough notes I haven't finished that's okay as long as you're not saying like this is my best finished work that I feel like people read it in the right spirit somewhat related to this again just going away from from from ai you also talked about barefoot developers and home cook software yeah what what are there who are developers so this was i'm not sure i remember what year this is it might be 2024 which feels like an eternity ago it was not that long ago this was at the local first conference in berlin in 2024 i did this talk yeah um home cook software and barefoot developers home cook software is a phrase that comes from robin sloan which is software that you make for you and your family and the way you would make a home coach meal yeah so it's about this app that he built for his family where they send each other little like video notes and it's like it's not on anyone else's server he doesn't have to pay for it it's not managed by some big company and this is the way more software should be there's lots of little pieces of software we can build for ourselves that benefit our lives and our families and it doesn't have to be like 2.99 on the app store or sell my data in exchange for this software and i made this um this case at this conference that i expect to see an explosion of this with language models and okay the writing was already on the wall.
1:16:08Maggie Appleton:I don't think it was that crazy of a prediction, but we were still more in the early days. We didn't have agents yet. But now, of course, it's like totally happened. There's like personal software everywhere. Everyone's building their own recipe manager and their own household app, their own gym app. And like there's all these great use cases that people can just make the software to be what they want without having to download a bog standard version of it. But I extended this concept by saying, OK, home cook software is for you and your family. But there's another concept that I call Barefoot Developers that comes from in maoist china they had this thing called barefoot doctors where they took peasants from rural villages and trained them up with basic medical training like giving vaccinations you know administering antibiotics and then distributed them out to the villages so that you would improve health care for everyone and it was a wildly successful program like across the board improved health as you would expect people who can't get to a hospital and i think we need the same concept for developers because so far developers are extremely expensive as a profession and like extremely skilled but there's lots of people with lots of needs who would maybe need little software built for like their allotment garden or their like street but they have some problem they need solved and like google sheets doesn't really cut it like it can't really just do like a google doc they want something like maybe managing a schedule or like managing inventory and like either they would have to all like raise money together and like fund it and pay some piece of software that doesn't quite fit their needs but does an okay job or maybe trades their data for this or if they had someone who was let's say at this barefoot developer type who's like kind of power user, someone who might use Notion and Airtable in an old world, now can just use an agent or language model and build them the software they need for like not many tokens, like pretty cheap.
1:17:43Maggie Appleton:They don't have to read the code as long as it works, like as long as they verify it's fine. I mean, what reminds me a little bit of the webmasters. Yeah, webmasters. So back, it was a long time ago, but in the 90s, maybe mid 90s, late 90s, the webmasters were just power user administrators who would administer, for example, a school's Yeah. Windows installations and they were not the highest paid. I'm not sure how they got trained, but at some point, every school had a webmaster. Sometimes they were a volunteer. Sometimes they were they were paid. Companies had their webmasters and they would often operate the web pages, which was, again, more involved, way more involved than later.
1:18:22Of course, that's why there was a role. And then like patch things. And it was all kind of, you know, they were they might forget to patch stuff or they might not know. And there were like forums, webmaster forums where they helped each other. And it was kind of like, because what you talk about, the China example, that was, of course, a government program with the goal. But this was just a grassroots movement.
1:18:41Maggie Appleton:Yeah. Yeah. And I think that needs to happen again. Like we definitely have these people to some degree. Like there's like a techie person in each community who kind of people go to for help. But I think these people need more like support and tools. And I mean that in the sense of building like libraries or frameworks for them. Because I think there's a whole bunch of people now coming in as Vibe coders or whatever, right? Like building apps without looking at the code. But you know they're hitting terrible security foundations and they're probably handling the data wrong. They're going to lose their database at some point.
1:19:09Maggie Appleton:They don't have good foundations to build on because they're just telling the agent, hey, make me an iOS app that does X. But they don't really understand engineering. I would advocate for something that is, I think it should be local first because as a philosophy it matches up with the need. It's like data should be local. You could just sync it between machines. You don't really need a database in the cloud. There's no point to that. A little bit of data sovereignty. They own the data. no one else can buy it or trade it or get access to it. I just feel there should be much stronger like local first frameworks that give you these good solid principles in place, good security, good data persistence, make it easy for these barefoot developers to build, like maybe some good interface primitives on top.
1:19:47Maggie Appleton:It's maybe something like the next version of Airtable would be this is what I would hope. What advice would you have for engineers to learn from designers when they have access to working with a designer? work learn from also collaborate better with yeah i think it's in the same way that i'm advocating that designers aren't shouldn't be afraid to get involved in engineering now vice versa right like in the same way that a designer can sit down with codex or claude or co-pilot and be like hey explain the back end to me like just not the details the shape of it i think in the same way a developer can sit down with an agent and be like okay i need to design a sidebar like what are the principles of good sidebars okay i have my blog like teach me about typography like you now have like a very patient tutor who's just going to sit there and be like okay this is where when you would vary line height here's exactly how many characters you should fit on a line like they can just teach you and you know as long as you're willing to learn and you want to expand into the design skills i think before it was very hard to learn these things you had to be on a design team especially product design stuff where it's like how do you interview users how do you do like a usability test like not generally available information really except for some books but now you sit down with an agent you're like hey here's the data I got.
1:20:59Maggie Appleton:Give me some ideas for possible interfaces that would represent it. Well, they're decent at that conceptual stuff, even if they don't always get the interface right. Going back to your anthropology roots, what are things that us engineers, people building software could take inspiration or learn from anthropology, like methods, approaches, things that have really served you well? Yeah. Yeah. Because I feel like I look at everything a little bit through the lens of anthropology or I try to it's like a like a you know pair of glasses you can kind of put on in the same way you can be like I'm gonna look like look at this like an engineer but if I look at things like an anthropologist you think about like what are the unspoken cultural rules going on in this interaction or this context or this problem and especially in the context of software like sure maybe you're building a database but you're building it for users in a cultural context right like they have assumptions about how they decide something is trustworthy they have assumptions about how they decide that something is worth their time or like or like how a flow should go and this is and it's all culturally contained like it depends also on like the international how international your audience is and who you're designing for but like there are cultures where like time flows from from right to left right or from up to down but we assume in the west you know time flows left right um but that's not universal everywhere i think just like reading a little bit of cultural anthropology and understanding how varied people's worldviews can be like like some cultures see not see different colors but categorize colors differently in a way that makes them see them differently like they might see blue and green is actually one unified color and if you're designing an interface like not that that necessarily directly applies but i think it's understanding there's a broad range of ways humans can interpret something and you know if you're if you're building tools for humans there might be some way you could like teach them to see the world differently through the thing you're building as well like change their perspective on like how they how they interpret reality and then in anthropology you said that you know anthropologists would one thing that would they would do they would the traditional anthropologists live with natives and and be embedded in them is that something that maybe now that ai is you know like it's making code a bit easier as engineers i think it's pretty clear that an engineer becomes more valuable the more they take on the other parts of the business the more empathy the understanding could it could it be just an idea when you have the opportunity to embed yourself with customers yeah yeah become a customer yourself i mean this used to be the thing right like the amazon had their customer obsession which also starts with understanding the customer but i guess this might be very natural as someone who's an anthropologist which is like all right go talk to people go and try to be one of them whoever you're building with there is a good point that like engineers are about to have more free time in a certain way i know there's an infinite number of engineering problems to solve and then it's like maybe we solve them better you know by having with that extra time but a big part of this is yeah you could expand into more of the design side and past the interface is is really like the user research side and that is like go fully understand the domain you're designing or building for and like what real world context are people using it in like when are they pulling out your app like in a factory are they on a in a tube like like i don't know a little bit of like understanding context of use is a big thing that user researchers do and then understanding the moment when someone reaches for your product versus like reaching for a different product like one day they decide you're the right solution that definitely gets into the user research side but that's a great thing for engineers to expand into if that like appeals and as closing what books would you recommend ones that you enjoyed reading and why one of my favorites that i give to most people is called addiction by design so it's about people addicted to gambling machines in Las Vegas, but it's an anthropologist doing it.
1:24:38Maggie Appleton:And she talks about both like living among these people and their experiences, but also the machine designers. Like how do you design a machine that is so addictive that someone sits at it for 12 hours straight? It's like a really fascinating thing. And how are like gambling casinos designed to have no windows? So there's like no time around you as you like sit at this machine. It's by Natasha Dauschal. And I read it in university and I love it. It's a total mix of like like cultural anthropology, participant observation, and also machine design and engineering. And like, how do you design addictive systems?
1:25:13Maggie Appleton:Which, of course, you read it and then you think about phones and Instagram and you reflect a little bit on like, what are these systems we're building for people? Maggie, thanks so much. This was very interesting. Yeah, thanks for having me. Really fun. This was a very visual episode, so I hope you were able to watch it over video, especially the parts where Maggie showed her sketches in the notebook. And this was one of the most interesting parts of this episode for me. Even as Maggie spends her days prototyping the future of Agentec tools, she starts her design process with pen and paper. Her reasoning is that agents cannot see, but us humans can.
1:25:46And I have to wonder, is it only true for visual stuff? I mean, when I think back to my most productive brainstorming sessions with engineers, it was usually in front of a whiteboard drawing stuff where we drew out our ideas about the system and the components. Another extremely cool trick from Maggie is how she uses AI to generate prototypes with sliders to change parameters and change the design. She calls it a build-your-own Figma, and we did a live demo with the Constellation animation that she played around with. This was so darn cool. You get Figma-like tools dynamically built for you. It's also pretty incredible that we can do this with agents in a matter of minutes.
1:26:23Just wow. Finally, I appreciated how Maggie was honest about how she feels about the design craft. It's cool that agents make her work faster, but she said she's not sure she'd love if an agent just spit out a perfect design. And yet agents are getting better at design. It feels to me that this is kind of how I feel about code. It's great that the agent can generate good code, but it was something I liked being good at and I was good at it. Now, I don't write the code, but it does feel more transaction-wise. I feel a bit less connected to the code and the creation of the code itself. For design, agents are not there yet, but I didn't sense that Maggie wants to let go of that designer in her.
1:27:01I wonder if one thing to learn from her for us devs is that we should also have a notebook to make sketches of ideas, not just UIs, but architectures and systems. I don't know, but I might give it a go. At least it will make me feel less that I'm dependent on agents and I'll have some AI-free space, if you will. Thanks for listening and let me know how you like this less conventional episode. Thanks and I'll see you in the next one.
From the publisher
Brought to You By:
• turbopuffer – a vector and full-text search engine built on object storage. It’s fast, cheap, and extremely scalable.
• O'Reilly Early Release: Scaling AI Adoption in Engineering – a free book on how to adopt and scale AI in a pragmatic way inside of engineering orgs. Complimentary, thanks to Antithesis.
• Entire – every agent prompt, tool call, stored in your repo, and mirrored.
—
What can everyone else learn from designers and design engineers? As it turns out, there’s plenty, as I discovered when one of the best design engineers in the industry, Maggie Appleton, came onto the Pragmatic Engineer Podcast. She’s a staff research engineer at GitHub Next, where she builds prototypes to explore how software engineers might collaborate with AI in new ways. Maggie is at the intersection of design, anthropology, and web development, and was the first designer hired by AI startup Elicit, and Lead Design engineer at AI startup, Normally.
Today’s episode is more visual than usual because Maggie brought her notebook along, so there are peeks inside its pages of prototypes and more:
We got into designers’ work and how their design processes are adapting to and changing with AI. We explore why Maggie starts projects with pens and notebooks, what distinguishes design engineers from other designers, and why understanding engineering constraints leads to better collaboration with engineers.
We also discuss how Maggie uses jigs to gain more control over AI agents, why human judgment and style still matter when models can generate designs, and how inconsistent AI capabilities can mislead us.
Timestamps
00:00 Intro
03:24 From anthropology to tech
10:18 What does a designer do?
18:23 How Maggie works
24:55 The case for planning with physical tools
31:53 Why Maggie is learning woodworking
33:13 Design engineers and engineering constraints
38:49 How Maggie uses Figma
40:30 Design at GitHub Next
45:12 How has AI changed design
50:37 When models design and why humans are still needed
53:30 UX and UI
58:29 Capability gaslighting
1:00:33 One Developer, Two Dozen Agents, Zero Alignment
1:07:21 Craft and AI tells
1:14:17 Visual gardens, home-cooked software, and barefoot developers
1:21:02 Advice for engineers and lessons from anthropology
1:25:34 Book recommendation
—
The Pragmatic Engineer deepdives relevant for this episode:
• Design-first software engineering: Craft, with Balint Orosz
• Are AI agents actually slowing us down?
• Vibe Coding as a software engineer
• From Chrome DevTools to AI Engineering, with Addy Osmani
—
Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com.
Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe




