The Question: Design System Collaborative Learning

Episode 069 Deep Dive: Rebuilding a Design System Mid-Flight with Ben Callahan & Shimaa Hassan

Introduction
In episode 069 of *The Question*, host Ben Callahan (founder of Sparkbox and the Redwoods Design System Community) sits down with co-host Shimaa Hassan to tackle one of the most universal challenges in the space: rebuilding a design system while the products it supports are still in production.

Ben surveyed 1,061 design system practitioners and received 53 responses across four questions: a 0–5 range question asking how often respondents think about throwing their system away and starting over, plus three open-text questions — (1) what's the one decision you'd make differently on day one, (2) how do you keep product teams confident in a system being rebuilt underneath them, and (3) share a story about rebuilding mid-flight. Key themes include token architecture, composability, governance, and the honest reality of how rarely formal migration mandates get enforced.

---

Show Notes

- 00:02 — Welcome and intro
- 00:27 — Shimaa's background: from Alexandria, Egypt to design systems at Square and Remote
- 02:28 — Shimaa's current challenge: rebuilding at Remote while the product ships continuously
- 04:46 — Survey methodology and overview of the four questions
- 05:43 — Question 1 results: roughly 50/50 split; Ben's sentiment analysis of the extremes
- 08:48 — Question 2 highlights: token architecture, simplicity, composability, governance, leading with documentation
- 10:09 — Erin on a cross-platform parity audit (iOS, Android, web) and handling breaking changes
- 11:36 — Shimaa on balancing live product state with new system decisions
- 12:37 — Guy on semantic versioning: one major release per year, advance communication, and a CLI tool that automated 70% of breaking change migrations
- 14:34 — Taylor on SLAs, defining "breaking change" for your system vs. the org, mono repo vs. component-level versioning
- 17:45 — Maintaining parallel systems: running old and new simultaneously
- 18:53 — Peter references Kim Williams' Clarity talk on managing system transitions
- 22:36 — How do you get teams to actually switch? Selling the value of migration
- 26:26 — Shimaa's pro tip: run the codebase locally; use AI to audit token usage and map point-A-to-point-B
- 29:16 — Guy on mandates that exist on paper but aren't enforced; lower org maturity can work in your favor
- 31:41 — Taylor on the system as a place of stability; introducing an "additive threshold" for governance
- 36:50 — Shimaa on triage logs tagged "approved / will not do / future"
- 38:19 — Peter on adaptable (not rigid) infrastructure; wanting early involvement with consuming teams
- 42:07 — Taylor's feature status Airtable for centralizing and communicating request progress
- 45:46 — Shimaa introduces Norma Labs: a space for ideas not yet mature enough for the core system
- 47:06 — Aaron on component-level versioning with 20 components needing updates simultaneously
- 48:30 — Tallulah and Liz on capacity constraints; offering support windows to encourage faster migration
- 50:45 — Liz on her IBM experience building testing infrastructure to keep React and Angular in parity
- 52:31 — Peter's closing mantra: "Don't show me different, show me better"
- 53:01 — Shimaa's closing reflection; Ben's announcements

---

Resources Mentioned
- Kim Williams' Clarity Conference talk on transitioning between design systems (https://designsystems.media/video/kim-williams-start-with-your-brand-purpose/)

---

Where to Find the Hosts
Ben Callahan—Founder of Sparkbox and the Redwoods Design System Community. Individual and team coaching for design system programs. https://bencallahan.com

Shimaa Hassan—Senior Product Designer at Remote, specializing in design systems. https://www.linkedin.com/in/shimaahassan/

---

Get the Raw Data
Access the complete survey data from Episode 069 to conduct your own analysis: https://bit.ly/46s0G9w

---

Review the FigJam Notes
Dig into the collaborative notes we took as a community during the deep dive: https://bit.ly/4aNvT8j

---

Join the Conversation
The Question explores design systems topics through community research and deep-dive discussions. Participate in future episodes and contribute to the next survey: https://bit.ly/answerTheQuestion

What is The Question: Design System Collaborative Learning?

The Question is a collaborative learning podcast about Design Systems. Smart people like you sign up, answer a few niche questions about design systems for each episode, and then we all get together to unpack the data we've gathered. Each week, I'll invite a new co-host to help facilitate the conversation. After the deep dive, the co-host and I record a recap of what we learned. That means, for each episode, you can listen to the recap and the full deep dive!

If you're a design system practitioner, subscribe today (https://bencallahan.com/the-question) to receive an invitation to each episode. This only works if the community joins in!

Stay in learning mode ❤️

Ben Callahan (00:02)
Hi everyone, I'm your host Ben Callahan, founder of Sparkbox and Redwoods Design System Community. I want to welcome you to episode 069 of The Question, where my co-host Shimaa Hassan and I facilitate a deep dive on the topic of rebuilding a design system mid-flight. If you have a moment, please get subscribed to the show out at bencallahan.com/thequestion Let's get into it.

ep069 screen raw (00:27)
Shimaa, will you tell us a little bit about your background? I want to know like what got you into design systems? gosh. ⁓

Ben Callahan (00:27)
Shimaa, will you tell us a little bit about your background? I want to know like what got you into design systems? gosh. ⁓

ep069 screen raw (00:34)
I've been a designer for like 16 years. I'm originally from Egypt, Alexandria, a city on the Mediterranean. I grew up there and I graduated from agriculture university, something completely different. I wasn't really good at school, so I just jumped in and whatever. And then I always had a love for, you know, design and making things with hand and craft. just like the road took me into

Ben Callahan (00:34)
I've been a designer for like 16 years. I'm originally from Egypt, Alexandria, a city on the Mediterranean. I grew up there and I graduated from agriculture university, something completely different. I wasn't really good at school, so I just jumped in and whatever. And then I always had a love for, you know, design and making things with hand and craft. just like the road took me into

graphic design for a couple years. And then I taught myself HTML and CSS. I was interested in interaction design and how people can interact with your work. ⁓ So I kind of moved into product design. Back in the days, it used to be called web design. And you slice your designs in Photoshop and you know the spiel in our generation. And six years in, I met my husband. I moved to Canada.

ep069 screen raw (01:03)
graphic design for a couple years. And then I taught myself HTML and CSS. I was interested in interaction design and how people can interact with your work. ⁓ So I kind of moved into product design. Back in the days, it used to be called web design. And you slice your designs in Photoshop and you know the spiel in our generation. six years in, I met my husband, I moved to Canada.

And when I came to Canada here in Toronto, I was like, I'll probably have to start from scratch. Like, I don't know how things work in, you know, on the other side of the earth. And it turns out, you know, design is universal. It was the exact same thing. And I joined the startup after startup and I was the sole designer building teams and scaling up companies. And then I was like, I need to work with, you know, different industry and different. ⁓

Ben Callahan (01:31)
And when I came to Canada here in Toronto, I was like, I'll probably have to start from scratch. Like, I don't know how things work in, you know, on the other side of the earth. And it turns out, you know, design is universal. It was the exact same thing. And I joined the startup after startup and I was the sole designer building teams and scaling up companies. And then I was like, I need to work with, you know, different industry and different. ⁓

ep069 screen raw (01:58)
different, like bigger team and have a design manager, you know, very different from like the startup world. So I joined the square and I joined, I stayed there for four and a half years and that's when I fell in love with design system. I initially was a product designer, like I always do. And then there was a need to build a component library on the econ team that I was in. And I just jumped in and I, you know, I started going and I built one. I was like, this is amazing. I want to this for full time.

Ben Callahan (01:58)
different, like bigger team and have a design manager, you know, very different from like the startup world. So I joined the square and I joined, I stayed there for four and a half years and that's when I fell in love with design system. I initially was a product designer, like I always do. And then there was a need to build a component library on the econ team that I was in. And I just jumped in and I, you know, I started going and I built one. I was like, this is amazing. I want to this for full time.

ep069 screen raw (02:28)
So I moved internally to their design system team and I stayed there for two and a half years and it was amazing. And then now I'm with Remote. It's a HR company. It's very, very different from Square and the business. And here I am back and doing a design system from scratch. And that's the topic for today. And everyone is shipping features. Nothing is stopping. You know, the company is moving.

Ben Callahan (02:28)
So I moved internally to their design system team and I stayed there for two and a half years and it was amazing. And then now I'm with Remote. It's HR company. It's very, very different from Square and the business. And here I am back and doing a design system from scratch. And that's the topic for today. And everyone is shipping features. Nothing is stopping. You know, the company is moving.

ep069 screen raw (02:58)
And but we need to kind of rebuild the design system from scratch. So how do we do that? That's why we're here today. So yeah. OK, I want to make sure I heard you right. Did you say you agriculture? Yes. OK, what are years of that? What was your plan? Like what were you going to do? So where I grew up, you need to have a university degree. ⁓ Otherwise, you're not.

Ben Callahan (02:58)
And but we need to kind of rebuild the design system from scratch. So how do we do that? That's why we're here today. So yeah. OK. I want to make sure I heard you right. Did you say you studied agriculture? Yes. OK. Four years of that. What was your plan? Like, what were you going to do? So where I grew up, ⁓ you need to have a university degree. Otherwise, you're not.

educated whatsoever, not going to even have any jobs. So this is what my high school grades got me. I got accepted into this. I'm like, OK, sure, let's do it. And I was just going to school for four years, but doing my own thing later on. you know, amazing. You got to do what you got to do, right? Yeah. I just went with the flow.

ep069 screen raw (03:25)
educated whatsoever, not going to even have any jobs. So this is what my high school grades got me. I got accepted into this. I'm like, OK, sure, let's do it. And I was just going to school for four years, but doing my own thing later on. you know, amazing. You got to do what you got to do, right? Yeah. I just went with the flow.

I love that. I love that. There's a scrappiness to folks in our space. think that you're kind of, you know, modeling with that. So I appreciate you sharing all this. It's really cool to hear how folks come to the space. ⁓ So afterwards, I want to talk to you a little about your time at Square, too. I know some folks who've worked over there. So I'd love to hear if you have if there's any overlap. That's it's really cool. ⁓ OK, so this week after we spoke.

Ben Callahan (03:51)
I love that. I love that. There's a scrappiness to folks in our space. think that you're kind of, you know, modeling with that. So I appreciate you sharing all this. It's really cool to hear how folks come to the space. ⁓ So afterwards, I want to talk to you a little about your time at Square, too. I know some folks who've worked over there. So I'd love to hear if you have if there's any overlap. That's it's really cool. ⁓ OK, so this week after we spoke.

ep069 screen raw (04:16)
to Ashima just kind of making a plan, we kind of, you had a lot of ideas for questions that we could ask. And so we kind of went through a half a dozen and we settled on this idea of rebuilding a system while it's sort of in mid flight. And ⁓ I think this is something a lot of folks in the space are, it's a constant thing. Systems are never done, we know this. And so how do we do this? How do we, if we think of the system as the foundation of our products,

Ben Callahan (04:16)
to Ashima just kind of making a plan, we kind of, you had a lot of ideas for questions that we could ask. And so we kind of went through a half a dozen and we settled on this idea of rebuilding a system while it's sort of in mid flight. And ⁓ I think this is something a lot of folks in the space are, it's a constant thing. Systems are never done, we know this. And so how do we do this? How do we, if we think of the system as the foundation of our products,

ep069 screen raw (04:46)
How do we replace the foundation of a bunch of products that are in, like you mentioned, in production that are constantly being iterated on themselves? And so it's a complex topic. We asked four questions. The first was a range question. We said, how many times a month do you think about throwing your design system away and starting over? So that was kind of a fun question, but it actually gave us a nice way to kind of quantify or compare the other answers, which was really interesting. So I'll show you that here in a moment.

Ben Callahan (04:46)
How do we replace the foundation of a bunch of products that are in, like you mentioned, in production that are constantly being iterated on themselves? And so it's a complex topic. We asked four questions. The first was a range question. We said, how many times a month do you think about throwing your design system away and starting over? So that was kind of a fun question. But it actually gave us a nice way to kind of quantify or compare the other answers, which was really interesting. So I'll show you that here in a moment.

ep069 screen raw (05:14)
And then we asked three open text questions. One was, you chose to start over, what's the one decision you'd make differently on day one? How do you keep product teams confident in a system that's actively being rebuilt underneath them? And then we just invited folks to tell us a story about rebuilding a system mid-flight. So we sent this to 1,061 design system practitioners. We got 53 responses. And you can, as always, click here to go see the raw data yourself.

Ben Callahan (05:14)
And then we asked three open text questions. One was, you chose to start over, what's the one decision you'd make differently on day one? How do you keep product teams confident in a system that's actively being rebuilt underneath them? And then we just invited folks to tell us a story about rebuilding a system mid-flight. So we sent this to 1,061 design system practitioners. We got 53 responses. And you can, as always, click here to go see the raw data yourself.

ep069 screen raw (05:43)
If you do your own analysis, please report back. I would love to hear what you see in the data. ⁓ Okay, just a quick reminder too, that the data we gather is never statistically significant. We're not trying to sort of prove some factual connection here. We're just looking for interesting ideas to spur our conversation on today. And so in that first question we asked, we gave you a range of zero to five. How often do you think about throwing your system away starting over? And we kind of saw like a...

Ben Callahan (05:43)
If you do your own analysis, please report back. I would love to hear what you see in the data. ⁓ Okay, just a quick reminder too, that the data we gather is never statistically significant. We're not trying to sort of prove some factual connection here. We're just looking for interesting ideas to spur our conversation on today. And so in that first question we asked, we gave you a range of zero to five. How often do you think about throwing your system away starting over? And we kind of saw like a...

ep069 screen raw (06:11)
fairly standard deviation across these, right? Like we saw the bell curve starting to emerge. I would imagine if we ran this with a lot of folks, you know, for a longer time, we would just see that pattern show up. But Shimaa, when we first opened this up, you were like, that is not what I expected. Tell me what you were looking for in this data.

Ben Callahan (06:11)
fairly standard deviation across these, right? Like we saw the bell curve starting to emerge. I would imagine if we ran this with a lot of folks, you know, for a longer time, we would just see that pattern show up. But Shimaa, when we first opened this up, you were like, that is not what I expected. Tell me what you were looking for in this data.

ep069 screen raw (06:30)
So yeah, I was surprised because I thought everyone wants to throw it out and start over. Like, you know, there was new features every day. There was new ways to architect the system. You know, there was things that we learn about every day from, you know, folks that share their experience online. I, you know, like, yeah, like in the comments here every once an hour. Yeah, I wanted to do that.

Ben Callahan (06:30)
So yeah, I was surprised because I thought everyone wants to throw it out and start over. Like, you know, there was new features every day. There was new ways to architect the system. You know, there was things that we learn about every day from, you know, folks that share their experience online. I, you know, like, yeah, like in the comments here every once an hour. Yeah, I wanted to do that.

ep069 screen raw (06:53)
Constantly, I want to start over. Oh, what if we do this? What if we do that? What if we add that? What if we consolidate? We have 10,000 cards. We have 10,000 drop down menus. I'm constantly wanting to do that. And I was surprised by the data. It's like a 50-50, technically. Yeah, basically 50-50. Yeah. And I kind of did a split to see. And so if we look at like the zero, one or two as answers in the bottom half and three, four and five as answers in the top half, you can see the split.

Ben Callahan (06:53)
Constantly, I want to start over. Oh, what if we do this? What if we do that? What if we add that? What if we consolidate? We have 10,000 cards. We have 10,000 drop down menus. I'm constantly wanting to do that. And I was surprised by the data. It's like a 50-50, technically. basically 50-50. Yeah. And I kind of did a split to see. And so if we look at like the zero, one or two as answers in the bottom half and three, four and five as answers in the top half, you can see the split.

ep069 screen raw (07:23)
46%, zero, one or two, and 54 % in that top half. And then I did a little bit ⁓ sort of a further kind of like, just like digging a bit, you know? And so I was trying to use some tools to gather the sentiment of the answers in the bottom two and then the top two categories. So zero or one in this first question. Then I looked at sentiment across the rest of the open text answers. ⁓ And I saw that those folks, it felt to me like, and sort of the data kind of

Ben Callahan (07:23)
46%, zero, one or two, and 54 % in that top half. And then I did a little bit ⁓ sort of a further kind of like, just like digging a bit, you know? And so I was trying to use some tools to gather the sentiment of the answers in the bottom two and then the top two categories. So zero or one in this first question. Then I looked at sentiment across the rest of the open text answers. And I saw that those folks, it felt to me like, and sort of the data kind of

ep069 screen raw (07:52)
bore out that a lot of those folks are people who have been through this exercise fairly recently. So I'm thinking like maybe, Sima, to your point, if maybe that folks are, it's sort of a constant something that teams are thinking about, but if they've just gone through it, they're like, I'm not doing that again. So they're going to avoid thinking about that on a regular basis. The ones in the top two answers, so ⁓ four and five in the question one.

Ben Callahan (07:52)
bore out that a lot of those folks are people who have been through this exercise fairly recently. So I'm thinking like maybe, Sima, to your point, if maybe that folks are, it's sort of a constant something that teams are thinking about, but if they've just gone through it, they're like, I'm not doing that again. So they're going to avoid thinking about that on a regular basis. The ones in the top two answers, so ⁓ four and five in the question one.

ep069 screen raw (08:20)
It felt like there was sort of an interesting constraint they were dealing with. It was a little bit more about the organization, maybe cultural. Like, we don't have the resources to even consider that. Or I don't have the authority to make that kind of decision. That sort of thing kind of came through in those answers. Again, not statistically significant, like for real, but just like a sense, more of like the sentiment of what we were seeing there. So ⁓ interesting to kind of break things down in that way. ⁓ OK.

Ben Callahan (08:20)
It felt like there was sort of an interesting constraint they were dealing with. It was a little bit more about the organization, maybe cultural. Like, we don't have the resources to even consider that. Or I don't have the authority to make that kind of decision. That sort of thing kind of came through in those answers. Again, not statistically significant, like for real, but just like a sense, more of like the sentiment of what we were seeing there. So ⁓ interesting to kind of break things down in that way. ⁓ OK.

ep069 screen raw (08:48)
This is the point of the conversation where we kind of open up. So if you are just joining, jump in, grab the FigJam, the chat is open in Zoom, please be respectful everywhere. ⁓ We've done some work to kind of like gather the data in some interesting ways. And so you can see I did, kind of captured quotes from the answers to question two, which was about if you were going to start over today, what would you do differently? And those are kind of categorized. You there was a lot of answers around token architecture.

Ben Callahan (08:48)
This is the point of the conversation where we kind of open up. So if you are just joining, jump in, grab the FigJam, the chat is open in Zoom, please be respectful everywhere. ⁓ We've done some work to kind of like gather the data in some interesting ways. And so you can see I did, kind of captured quotes from the answers to question two, which was about if you were going to start over today, what would you do differently? And those are kind of categorized. You there was a lot of answers around token architecture.

ep069 screen raw (09:16)
⁓ A lot of folks sort of similar, a lot of folks were saying, ⁓ gosh, it's too complicated. I would simplify things, right? I would, I think it's easy for these things to get over engineered very quickly. So think a lot of folks are feeling that tension too. There was quite a few answers around composability. I think some of the newer features, we were talking about this earlier, Shimaa, some of the newer features in Figma that's just kind of always iterating.

Ben Callahan (09:16)
⁓ A lot of folks sort of similar, a lot of folks were saying, ⁓ gosh, it's too complicated. I would simplify things, right? I would, I think it's easy for these things to get over engineered very quickly. So think a lot of folks are feeling that tension too. There was quite a few answers around composability. I think some of the newer features, we were talking about this earlier, Shimaa, some of the newer features in Figma that's just kind of always iterating.

ep069 screen raw (09:40)
I remember when variables were announced, people were like, okay, I got to go redo my whole, you know, like, I mean, that, happens to us often. Right. And so with sort of slots and some of that stuff that's coming in Figma and, and, and other things like this, you know, this composability idea is a little bit more realistic for us on the design asset side. Um, always things about governance, ownership, clarity, uh, of like, who has what decisions to make, uh, some, some stuff around cross-functional alignment that was pretty relevant. And then.

Ben Callahan (09:40)
I remember when variables were announced, people were like, okay, I got to go redo my whole, you know, like, I mean, that, happens to us often. Right. And so with sort of slots and some of that stuff that's coming in Figma and, and, and other things like this, you know, this composability idea is a little bit more realistic for us on the design asset side. Um, always things about governance, ownership, clarity, uh, of like, who has what decisions to make, uh, some, some stuff around cross-functional alignment that was pretty relevant. And then.

ep069 screen raw (10:09)
I've got a few folks talking about this idea of like leading with documentation as opposed to leading with building stuff, which I thought was kind of interesting. OK, Erin, what's up? What's on your mind? Yeah, super. This whole topic is super relevant right now for us. So I'm super glad we're covering it. We did a brand refresh last year, so we rolled out a new theme and we're able to sort of like.

Ben Callahan (10:09)
I've got a few folks talking about this idea of like leading with documentation as opposed to leading with building stuff, which I thought was kind of interesting. OK, Erin, what's up? What's on your mind? Yeah, super. This whole topic is super relevant right now for us. So I'm super glad we're covering it. We did a brand refresh last year, so we rolled out a new theme and we're able to sort of like.

ep069 screen raw (10:37)
get that going, but now we're in a whole parody audit and remediation. So we had differences across design, our iOS code implementation and our Android code implementation. I won't even talk about web. ⁓ So, but when we go through that, what we realized is there's a ton of breaking changes. And so I'm so curious about approaches there, like in terms of like, when you realize you have a,

Ben Callahan (10:37)
get that going, but now we're in a whole parody audit and remediation. So we had differences across design, our iOS code implementation and our Android code implementation. I won't even talk about web. ⁓ So, but when we go through that, what we realized is there's a ton of breaking changes. And so I'm so curious about approaches there, like in terms of like, when you realize you have a,

ep069 screen raw (11:06)
a large number of what could be breaking changes to your consumers. How do you work through that? Like is it one at a time? Do you try to lump it into like every twice a year? Anyway, it sort of feels like we're again, like building while releasing and how do we disrupt folks? Yeah. Shimaa, do you have thoughts on that? Yeah. When you are actually redesigning and making those decisions, you need to boot

Ben Callahan (11:06)
a large number of what could be breaking changes to your consumers. How do you work through that? Like is it one at a time? Do you try to lump it into like every twice a year? Anyway, it sort of feels like we're again, like building while releasing and how do we disrupt folks? Yeah. Shimaa, do you have thoughts on that? Yeah. When you are actually redesigning and making those decisions, you need to boot

ep069 screen raw (11:36)
the live product that is already in the hands of the customers in your mind while you're doing that. It's kind of like, you know, a bag that you're going to drag for a little bit with you. So when you are creating a new component, you need to think about that state that is happening live today. How can we consolidate, add improvements, but not break what's life today? Right. So it's like that balance.

Ben Callahan (11:36)
the live product that is already in the hands of the customers in your mind while you're doing that. It's kind of like, you know, a bag that you're going to drag for a little bit with you. So when you are creating a new component, you need to think about that state that is happening live today. How can we consolidate, add improvements, but not break what's life today? Right. So it's like that balance.

And then thinking about

ep069 screen raw (12:02)
And then thinking about

compatibility that was mentioned here and scalability. So be flexible with your new changes so that it can accommodate the existing state and then also a little bit of the future state. Because if the system is adopted well, with the current state in mind, you will be able to make easy changes in the future while you are driving that plane, you know? Yeah, yeah. Taylor, raise your hand because I'm going to call on you after Guy goes, because I want you to

Ben Callahan (12:04)
Compensability that was mentioned here and scalability. So be flexible with your new changes so that it can accommodate the existing state and then also a little bit of the future state because if the system is adopted well with the current state in mind, you will be able to make easy changes in the future while you are driving that plane. Yeah. ⁓ Taylor, raise your hand because I'm going to call on you after Guy goes because I want you to

ep069 screen raw (12:32)
ask this clarifying question around breaking change. But Guy, what's up?

Ben Callahan (12:32)
ask this clarifying question around breaking change. But Guy, what's up?

ep069 screen raw (12:37)
Hey, I'm going to refer a bit to what Taylor just said. Perfect. Also to refer to what, Aaron, you were talking about. So the way we approach it for our design system is we are very clear that we're not making any ⁓ breaking changes for our consumers outside of major releases. So we have semantic versioning. if every two weeks we have a small release,

Ben Callahan (12:37)
Hey, I'm going to refer a bit to what Taylor just said. Perfect. Also to refer to what, Aaron, you were talking about. So the way we approach it for our design system is we are very clear that we're not making any breaking changes for our consumers outside of major releases. So we have semantic versioning. if every two weeks we have a small release,

ep069 screen raw (13:07)
It's not supposed to change anything for you. You update it, you should not, I mean, you should see new things, but you shouldn't have to go and fix or remove or re-add things into, and same thing in code. ⁓ We usually aim for one major release a year, and we are very, very intentional. We plan that several months in advance. For this year, for example, we're working on theming, and then we say, okay, theming is gonna be our big,

Ben Callahan (13:07)
It's not supposed to change anything for you. You update it, you should not, I mean, you should see new things, but you shouldn't have to go and fix or remove or re-add things into, and same thing in code. ⁓ We usually aim for one major release a year, and we are very, very intentional. We plan that several months in advance. For this year, for example, we're working on theming, and then we say, okay, theming is gonna be our big,

ep069 screen raw (13:35)
theme no pun intended for the year for this major release. What else can we throw in that we know is gonna break stuff so we put all things out at the same time? We give our consumers, we send an email three months in advance saying, hey, there's a new major release coming soon. Here are the type of things that are gonna change. And then a month before we tell them, okay, don't forget there's a major release coming next month. Here are things you can start doing now to prepare.

Ben Callahan (13:35)
theme no pun intended for the year for this major release. What else can we throw in that we know is going to break stuff so we put all things out at the same time? We give our consumers, we send an email three months in advance saying, hey, there's a new major release coming soon. Here are the type of things that are going to change. And then a month before we tell them, okay, don't forget there's a major release coming next month. Here are things you can start doing now to prepare.

ep069 screen raw (14:05)
the day of we have a whole thing. When we released version three, we also released a command line tool to help basically automatically update 70 % of the breaking changes for them, ⁓ mostly in code and tokens. And so they needed to do a lot less than what they needed to do going from one to two. So that's also something we're trying to make that transition a bit easier.

Ben Callahan (14:05)
the day of we have a whole thing. When we released version three, we also released a command line tool to help basically automatically update 70 % of the breaking changes for them, ⁓ mostly in code and tokens. And so they needed to do a lot less than what they needed to do going from one to two. So that's also something we're trying to make that transition a bit easier.

ep069 screen raw (14:34)
That's really cool. ⁓ I love the idea that you're sort of like seeing the job of the system is not only to evolve the system, but the tooling around the system to help with things like that guy. That's really cool. Taylor jump in, buddy. Yeah, I'm just going to add on to what Guy said. So 100 % to that last bit. Ben, I don't think you can do that any other way, right? If you don't maintain the tools you build, then you're just shipping shit, right? So that's that. But I think the

Ben Callahan (14:34)
That's really cool. ⁓ I love the idea that you're sort of like seeing the job of the system is not only to evolve the system, but the tooling around the system to help with things like that guy. That's really cool. Taylor jump in, buddy. Yeah, I'm just going to add on to what Guy said. So 100 % to that last bit. Ben, I don't think you can do that any other way, right? If you don't maintain the tools you build, then you're just shipping shit, right? So that's that. But I think the

ep069 screen raw (15:03)
The three points I wanted to add was plus one to guys bit around communication. How we frame that is we have all, we're trying to put together a service level agreement, right? So when folks know what they put in a bug, right? They can expect this much turnaround time, this much, whatever in terms of just when they can hear back from us. And so what we do from there, second point, is we have a distinction of what it means to be a breaking change, a minor update, a patch update or whatever for the system that is separate from whatever the organization has. Spoiler.

Ben Callahan (15:03)
The three points I wanted to add was plus one to guys bit around communication. How we frame that is we have all, we're trying to put together a service level agreement, right? So when folks know what they put in a bug, right? They can expect this much turnaround time, this much, whatever in terms of just when they can hear back from us. And so what we do from there, second point is we have a distinction of what it means to be a breaking change, a minor update, a patch update or whatever for the system that is separate from whatever the organization has. Spoiler.

ep069 screen raw (15:32)
they don't have that shit defined. We do, they don't. So for us to go breaking change, they have to go, whoa, whoa, what? We're like, hey, hang on. It's a breaking in a minor way. We change a token. It's a minor package up. So that understanding of what breaking change means to your world versus the product, in my opinion, very different. And the third one is more about architecture. So this is.

Ben Callahan (15:32)
they don't have that shit defined. We do, they don't. So for us to go breaking change, they have to go, whoa, whoa, what? We're like, hey, hang on. It's a breaking in a minor way. We change a token. It's a minor package up. So that understanding of what breaking change means to your world versus the product, in my opinion, very different. And the third one is more about architecture. So this is.

ep069 screen raw (15:56)
I think what allows you to be able to say it will affect you at one, right? It depends on how your systems are protected. And I mean, this is a code perspective, right? Are you like in one mono repo, right? Where like one major update means everyone takes the update no matter what. And you got to be really, really careful, right? And thoughtful and whatever, right? Versus like component level versioning where your packages are separate, you can bump the button, right? And then they not change much for other things. So like, it depends on that I would say. And that's where like the question is like chicken and egg, right? If you're.

Ben Callahan (15:56)
I think what allows you to be able to say it will affect you at one, right? It depends on how your systems are protected. And I mean, this is a code perspective, right? Are you like in one mono repo, right? Where like one major update means everyone takes the update no matter what. And you got to be really, really careful, right? And thoughtful and whatever, right? Versus like component level versioning where your packages are separate, you can bump the button, right? And then they not change much for other things. So like, it depends on that I would say. And that's where like the question is like chicken and egg, right? If you're.

ep069 screen raw (16:25)
component level versus if you're like repo level, right? The comm structure is different. The amount of warning you want to give people is different. The amount of discussion you want to give. So it's not a clean answer. Like I think that's the thing is it really depends on the org infrastructure and your systems infrastructure. Because you're still having the conversation of like, all right, old system versus new, right? Do we still own both and have to maintain like a migration guide between them? Is there a, when we fix this, we deprecate the old and that's the transition flow? Like what does that look like?

Ben Callahan (16:25)
component level versus if you're like repo level, right? The comm structure is different. The amount of warning you want to give people is different. The amount of discussion you want to give. So it's not a clean answer. Like I think that's the thing is it really depends on the org infrastructure and your systems infrastructure. Because you're still having the conversation of like, all right, old system versus new, right? Do we still own both and have to maintain like a migration guide between them? Is there a, when we fix this, we deprecate the old and that's the transition flow? Like what does that look like?

ep069 screen raw (16:55)
between generations of a system, even if we're talking about small updates, right? It's going to be a major update, like I was referring to. If it's a 2.5, do a 2.6. But that comes with something that someone didn't expect, right? Can they do that later? Is it now? What's the severity of that update, right? What else is tucked into that update that would make them want to do it? Like if you do a big accessibility update, sneak all your little updates in, right? Like no one's not going to take that. But anyway, that's.

Ben Callahan (16:55)
between generations of a system, even if we're talking about small updates, right? It's going to be a major update, like I was referring to. If it's a 2.5, do a 2.6. But that comes with something that someone didn't expect, right? Can they do that later? Is it now? What's the severity of that update, right? What else is tucked into that update that would make them want to do it? Like if you do a big accessibility update, sneak all your little updates in, right? Like no one's not going to take that. But anyway, that's.

ep069 screen raw (17:20)
That's my three. That's great. Yeah, that's great. And there were some really interesting answers too in, ⁓ let's see, where was this? Yeah, so what folks are doing to sort of like maintain the confidence and trust from their consumers while this stuff is happening, this idea of a parallel system, Taylor, is kind of what I hear you talking about. Like there were some really interesting answers here around like, let's see, what's...

Ben Callahan (17:20)
That's my three. That's great. Yeah, that's great. And there were some really interesting answers too in, ⁓ let's see, where was this? Yeah, so what folks are doing to sort of like maintain the confidence and trust from their consumers while this stuff is happening, this idea of a parallel system, Taylor, is kind of what I hear you talking about. Like there were some really interesting answers here around like, let's see, what's...

ep069 screen raw (17:45)
Yeah, like, so we left the previous system intact, so it could be utilized as we worked on the new one, right? Shimaa, is that sort of what you're doing? Like, how are you managing this? Do you have two versions of the system running? Yeah. So the one that is being redesigned is being implemented, but they are one that is live and active, not touching that. Making very minimal updates because, you know, support request is going to keep rolling.

Ben Callahan (17:45)
Yeah, like, so we left the previous system intact, so it could be utilized as we worked on the new one, right? Shimaa, is that sort of what you're doing? Like, how are you managing this? Do you have two versions of the system running? Yeah. So the one that is being redesigned is being implemented, but they are one that is live and active, not touching that. Making very minimal updates because, you know, support request is going to keep rolling.

ep069 screen raw (18:11)
So sometimes you can just have a conversation with a team that is requesting it. What's your timeline? Is this something that can wait for the next version or should we jump in and make update now? So it's like, you balance. They have to tell us exactly what their timeline. And we also, the team that is working on the new system, we have to be very transparent with our progress. What's our timeline is, when things are going to be shipped and expected.

Ben Callahan (18:11)
So sometimes you can just have a conversation with a team that is requesting it. What's your timeline? Is this something that can wait for the next version or should we jump in and make update now? So it's like, you balance. They have to tell us exactly what their timeline. And we also, the team that is working on the new system, we have to be very transparent with our progress. What's our timeline is, when things are going to be shipped and expected.

ep069 screen raw (18:40)
Right? So that they know what we're doing and they are aware when things are going to come so that they can align their timeline with us. Yeah. Peter.

Ben Callahan (18:40)
Right? So that they know what we're doing and they are aware when things are going to come so that they can align their timeline with us. Yeah. Peter.

ep069 screen raw (18:53)
Yeah, I mean, this might not be helpful in the immediate, but Kim Williams did a fantastic talk about this at Clarity, I think, back in 2018, 2019, somewhere around in there. No, 2017, 2018, where she talked about basically when she was at ND, transferring from basically one system to a new system and the processes for kind of maintaining one.

Ben Callahan (18:53)
Yeah, I mean, this might not be helpful in the immediate, but Kim Williams did a fantastic talk about this at Clarity, I think back in 2018, 2019, somewhere around in there. No, 2017, 2018, where she talked about basically when she was at ND, transferring from basically one system to a new system and the processes for kind of maintaining one.

ep069 screen raw (19:23)
while also trying to transition to another, but also needing an in-between system in there to also manage that. So there's an interesting kind of like complicated context right there, but I think, you know, one of the things I always try to think about is kind of the postmortem of a lot of these processes, where we're thinking about the of the immediate need of it, but we also need to kind of plan and think about how do we make our structure less brittle in the future past this point.

Ben Callahan (19:23)
while also trying to transition to another, but also needing an in-between system in there to also manage that. So there's an interesting kind of like complicated context right there, but I think, you know, one of the things I always try to think about is kind of the postmortem of a lot of these processes, where we're thinking about the of the immediate need of it, but we also need to kind of plan and think about how do we make our structure less brittle in the future past this point.

ep069 screen raw (19:48)
Yeah. like, you know, cards should not necessarily be a component now. It should be a property of a container class that we can turn on and turn off. ⁓ things like that. If you can, Peter, if you can find a link to that talk from clarity, I'd love for you to drop that into the re there's a resource bar along the bottom. You can drop that in or any place up above where it makes sense. Thank you. Steven.

Ben Callahan (19:48)
Yeah. like, you know, cards should not necessarily be a component now. It should be a property of a container class that we can turn on and turn off. ⁓ things like that. If you can, Peter, if you can find a link to that talk from clarity, I'd love for you to drop that into the re there's a resource bar along the bottom. You can drop that in or any place up above where it makes sense. Thank you. Steven.

ep069 screen raw (20:14)
you're muted, buddy. There we go. Yeah. Yeah, I that might have been one of my answers about the parallel systems. OK. But just like, I I agree with what Peter just said, too. I think after you go through this a couple of times, you start trying to figure out, how can we build this in a way where we can minimize breaking changes in the future while still being able to get updates to people in a meaningful way? I mean, I agree with everything everybody has said, ⁓ even with Taylor and Guy. Like, we have to have

Ben Callahan (20:14)
you're muted, buddy. There we go. Yeah. Yeah, I that might have been one of my answers about the parallel systems. OK. But just like, I I agree with what Peter just said, too. I think after you go through this a couple of times, you start trying to figure out, how can we build this in a way where we can minimize breaking changes in the future while still being able to get updates to people in a meaningful way? I mean, I agree with everything everybody has said, ⁓ even with Taylor and Guy. Like, we have to have

ep069 screen raw (20:43)
understandings of what these different types of changes are. And everybody has to be on the same page with that, right? Like what we consider breaking might be different from what a product team considers breaking. ⁓ We have found like tremendous success with having the parallel systems, right? Cause we just have products that like, they're just not going to have the time or resources to be able to go in and update all of their stuff. And they'll come back and say, we have a stable product right now. We don't want to mess with it. Like it's in production, it's working.

Ben Callahan (20:43)
understandings of what these different types of changes are. And everybody has to be on the same page with that, right? Like what we consider breaking might be different from what a product team considers breaking. ⁓ We have found like tremendous success with having the parallel systems, right? Cause we just have products that like, they're just not going to have the time or resources to be able to go in and update all of their stuff. And they'll come back and say, we have a stable product right now. We don't want to mess with it. Like it's in production, it's working.

ep069 screen raw (21:12)
We don't want to blow things up. Like we have a very small team on this. ⁓ So that's what we do. We keep the old system in place while we're at the same time building out the new one. ⁓ And people can use both, right? We ask them to kind of incrementally update like, know, hey, if you're having a problem with the button, like we suggest that maybe you just go and you switch out the button for the new buttons, ⁓ you know, where at all that is possible. ⁓ And we might make changes to both systems, right? There's a little bit of overhead with that.

Ben Callahan (21:12)
We don't want to blow things up. Like we have a very small team on this. ⁓ So that's what we do. We keep the old system in place while we're at the same time building out the new one. ⁓ And people can use both, right? We ask them to kind of incrementally update like, know, hey, if you're having a problem with the button, like we suggest that maybe you just go and you switch out the button for the new buttons, ⁓ you know, where at all that is possible. ⁓ And we might make changes to both systems, right? There's a little bit of overhead with that.

ep069 screen raw (21:43)
If we find an issue with, I'll give you good example, we recently had to make a change to our checkbox. We had some sizing problems or some accessibility stuff we wanted to work out. We made that change in both systems. It wasn't a breaking change, but we wanted users of the legacy system to also get that. So we do that where we need to. ⁓ But it's been relatively successful. People have been able to kind of migrate at their own pace, and they don't feel like pressure, which...

Ben Callahan (21:43)
If we find an issue with, I'll give you good example, we recently had to make a change to our checkbox. We had some sizing problems or some accessibility stuff we wanted to work out. We made that change in both systems. It wasn't a breaking change, but we wanted users of the legacy system to also get that. So we do that where we need to. ⁓ But it's been relatively successful. People have been able to kind of migrate at their own pace, and they don't feel like pressure, which...

ep069 screen raw (22:12)
You know, that's what kind of destroys the confidence is when they're like, you mean we have to like use up all of our resources to, to migrate over the next two months. Like we had other stuff we needed to do. ⁓ then they just, that really destroys confidence in my opinion is when you have to start dealing with that. So yeah. What's the motivation for people to switch in the scenario where you're just kind of maintaining both.

Ben Callahan (22:12)
You know, that's what kind of destroys the confidence is when they're like, you mean we have to like use up all of our resources to, to migrate over the next two months. Like we had other stuff we needed to do. ⁓ then they just, that really destroys confidence in my opinion is when you have to start dealing with that. So yeah. What's the motivation for people to switch in the scenario where you're just kind of maintaining both.

ep069 screen raw (22:36)
I mean, we kind of frame it like if you want the new features, then you kind of have to move over to the new system. You know, that's where you're going to get a lot more of the benefits. this is how I answered one of the other questions. think being able to communicate what the benefits of this change are. Yeah. Why are we building a new system? You have to sell it to people. You you're selling a product. You you have to be able to demonstrate like in our case, it's a massive token architecture change. Right.

Ben Callahan (22:36)
I mean, we kind of frame it like if you want the new features, then you kind of have to move over to the new system. You know, that's, that's where you're going to get, you know, a lot more of the benefits. And, you know, this is how I answered one of the other questions. think being able to communicate what the benefits of this change are. Yeah. Why are we building a new system? You have to sell it to people, you know, you're selling a product, you know, you have to be able to demonstrate like in our case, it's a massive token architecture change, right?

ep069 screen raw (23:06)
because we want to be able to support a lot of different themes. ⁓ And we're able to demonstrate you get a lot out of this ⁓ for future scalability by moving to this new system. So you really have to show that and sell those advantages. was another theme, Stephen. Thanks for sharing that. That was another theme that kind of emerged in the data was one of the...

Ben Callahan (23:06)
because we want to be able to support a lot of different themes. ⁓ And we're able to demonstrate you get a lot out of this ⁓ for future scalability by moving to this new system. So you really have to show that and sell those advantages. was another theme, Stephen. Thanks for sharing that. That was another theme that kind of emerged in the data was one of the...

ep069 screen raw (23:31)
ways you can help teams maintain their confidence in the system is what you just said, demonstrate the value of that migration. Like, why are you doing this? So I helped them understand that stuff. I'm going to go Taylor. Peter, your hand is still up. I don't know if you have more to share or if that was just, yeah, jump in, Taylor. I'm going to do a little poll because I just had an idea. OK, there's 24 of us here, right? So I think we dance around this a lot. The idea that like when a new system launches, when a new version of something, everyone's magically just going to update to the new thing.

Ben Callahan (23:31)
ways you can help teams maintain their confidence in the system is what you just said, demonstrate the value of that migration. Like, why are you doing this? Help them understand that stuff. I'm going to go Taylor. Peter, your hand is still up. I don't know if you have more to share or if that was just, yeah, jump in, Taylor. I'm going to do a little poll because I just had an idea. OK. There's 24 of us here, right? So I think we dance around this a lot. The idea that when a new system launches, when a new version of something, everyone's magically just going to update to the new thing.

ep069 screen raw (24:02)
And I literally never experienced working in a place where that's actually happened. So can you pop up your hand if you've ever worked in a place that had an actual deadline, a planned transition period where designers and engineers have to swap things in in live code out from one system to another, whatever, some sort of formal declaration from leadership that says do this. Put your hand up if that's ever happened. In like a very short amount of time, you're saying? In some sort of official way.

Ben Callahan (24:02)
And I literally never experienced working in a place where that's actually happened. So can you pop up your hand if you've ever worked in a place that had an actual deadline, a planned transition period where designers and engineers have to swap things in in live code out from one system to another, whatever, some sort of formal declaration from leadership that says do this. Put your hand up if that's ever happened. In like a very short amount of time, you're saying? In some sort of official way.

ep069 screen raw (24:29)
Okay. He sort of way that is like a leader said this is what we're doing and now make a plan for it. Okay. So we've got a quarter of the hands up. It's a lot smaller than, than I think you think. Right. Because like this, this is the challenge, right? I think we could talk about like all the benefits of the system, all the things we can help with all the whatever, but if they have no reason to move from one to the other, then what the hell are we advertising? Right. And I don't mean by, by reason, right? Like in the sense that like we can, for example,

Ben Callahan (24:29)
Okay. He sort of way that is like a leader said this is what we're doing and now make a plan for it. Okay. So we've got a quarter of the hands up. It's a lot smaller than, than I think you think. Right. Because like this, this is the challenge, right? I think we could talk about like all the benefits of the system, all the things we can help with all the whatever, but if they have no reason to move from one to the other, then what the hell are we advertising? Right. And I don't mean by, by reason, right? Like in the sense that like we can, for example,

ep069 screen raw (24:59)
I can say from my work at Mayo, right? So the system we're building now is fixing a lot of the accessibility gaps, a lot of the tooling gaps, all the things that the previous generation didn't have. So the cost benefit of it is pretty clear. We can go down the list on that matrix and say, this didn't have this, it now has this, right? We're building this the way we wanted it to be built in the first place. There are some consumers who are like, great, hey, remember that thing that didn't work? Well, we built our own in the meantime. So now you have to tell us why we need to get onto yours. And my answer is, no, I don't.

Ben Callahan (24:59)
I can say from my work at Mayo, right? So the system we're building now is fixing a lot of the accessibility gaps, a lot of the tooling gaps, all the things that the previous generation didn't have. So the cost benefit of it is pretty clear. We can go down the list on that matrix and say, this didn't have this, it now has this, right? We're building this the way we wanted it to be built in the first place. There are some consumers who are like, great, hey, remember that thing that didn't work? Well, we built our own in the meantime. So now you have to tell us why we need to get onto yours. And my answer is, no, I don't.

ep069 screen raw (25:28)
design systems job to force you to move. If leadership tells you to move, it's different. Then I will write migration guides. I will show you a one-to-one pairing, right? But we talk about needing all of this stuff on this transfer, this like swap out stuff. And I feel like each time I've had this discussion, keep going, well, has anyone actually done this? And everyone's like, no, this never actually happened. Or leadership never actually makes good on that promise of we're going to make folks update, right? Especially a large company. So it's interesting because I think we architect so much of our thought around that. The idea that-

Ben Callahan (25:28)
design systems job to force you to move. If leadership tells you to move, it's different. Then I will write migration guides. I will show you a one-to-one pairing, right? But we talk about needing all of this stuff on this transfer, this like swap out stuff. And I feel like each time I've had this discussion, keep going, well, has anyone actually done this? And everyone's like, no, this never actually happened. Or leadership never actually makes good on that promise of we're going to make folks update, right? Especially a large company. So it's interesting because I think we architect so much of our thought around that. The idea that-

ep069 screen raw (25:57)
Old system will be updated into new, right? In design files and code and whatever. When we're making that assumption that yes, it's the right thing, they'll get the benefits of the new thing if they switch. But unless folks are going into shift code already and making edits, that's a re-delivery for them. And that's a huge amount of change that we're saying is, it's no big deal. You just change it. Like you just bump a package. Yeah. Then they got to go through all their testing again. You know? So we cascade a lot. And I don't think we recognize that when we talk about things like this.

Ben Callahan (25:57)
Old system will be updated into new, right? In design files and code and whatever. When we're making that assumption that yes, it's the right thing, they'll get the benefits of the new thing if they switch. But unless folks are going into shift code already and making edits, that's a redelivery for them. And that's a huge amount of change that we're saying is, it's no big deal. You just change it. Like you just bump a package. Yeah. Then they got to go through all their testing again. You know? So we cascade a lot. And I don't think we recognize that when we talk about things like this.

ep069 screen raw (26:26)
But not right now, so we call out enough. Yeah, that's good point. Shimaa, jump in. Yeah, thank you, Taylor. I want to add to that, going back to the point about demonstrating the value. So for example, in my case, the new system have the three tier token architecture because the previous one was just using row color scale, know, gray 900 everywhere, things like that.

Ben Callahan (26:26)
But not right now, so we call out enough. Yeah, that's good point. Shimaa, jump in. Yeah, thank you, Taylor. I want to add to that, ⁓ going back to the point about demonstrating the value. So for example, in my case, the new system have the three tier token architecture because the previous one was just using row color scale, know, gray 900 everywhere, things like that.

ep069 screen raw (26:54)
was like a huge change for the team, ⁓ was also the new system will support a new feature that we're going to be adding, which is white labeling, right? And making the system multi-seam and all of that multi-brand and all of that stuff that the existing system did. And so I just recorded a quick loom to show the team. Here is the current system. Here's how it's architecture and how this is how I'm thinking about the new one. So.

Ben Callahan (26:54)
was like a huge change for the team, ⁓ was also the new system will support a new feature that we're going to be adding, which is white labeling, right? And making the system multi-seam and all of that multi-brand and all of that stuff that the existing system did. And so I just recorded a quick loom to show the team. Here is the current system. Here's how it's architecture and how this is how I'm thinking about the new one. So.

ep069 screen raw (27:21)
kind of bringing people on board on your journey. What are we, what's the current state of the system, how I'm thinking about it and get feedback. But I wanna like share a quick pro tip ⁓ on looking at the current state of the product and the code. You need to have, this the age of AI, right? You need to have your...

Ben Callahan (27:21)
kind of bringing people on board on your journey. What are we, what's the current state of the system, how I'm thinking about it and get feedback. But I wanna like share a quick pro tip ⁓ on looking at the current state of the product and the code. You need to have, this the age of AI, right? You need to have your...

ep069 screen raw (27:47)
front end, you know, local div environment on your computer as a designer so that you can, you know, use clock code or whatever code of choice. Where is this gray 900 is used today? So you can see a list of usage and then you can make a really informed decision. How is that going to be transferred into a semantic token? You know, ⁓ where is this 900 cards are used in the system today? And then when you are making an informed decision on when in the new system, we're going to console it into XYZ.

Ben Callahan (27:47)
front end, you know, local div environment on your computer as a designer so that you can, you know, use clock code or whatever code of choice. Where is this gray 900 is used today? So you can see a list of usage and then you can make a really informed decision. How is that going to be transferred into a semantic token? You know, ⁓ where is this 900 cards are used in the system today? And then when you are making an informed decision on when in the new system, we're going to console it into XYZ.

ep069 screen raw (28:17)
then you have this point A, point B kind of scenario laid out to your engineer, your team, so that they can get on board with this direction. So yeah, it's something I'm actively doing here is looking at the existing codes constantly while I'm making new system decisions and also saying why to the team. So it sounds like two things there, Shimaa. One was the attached to an organizational mandate, right?

Ben Callahan (28:17)
Then you have this point A, point B kind of scenario laid out to your engineer, your team, so that they can get on board with this direction. So yeah, it's something I'm actively doing here is looking at the existing codes constantly while I'm making new system decisions and also saying why to the team. So it sounds like two things there, Shimaa. One was the attached to an organizational mandate, right?

ep069 screen raw (28:46)
to enable this thing that leadership cares about, we are upgrading the system and you can get that benefit of white labeling or better accessibility or whatever by migrating to the new version of the system. So that definitely I've seen work. And then you're also talking about AI as a helper in this process. So let's come back to that because I think there's probably a lot to unpack there. Guy, what's up? Yeah, I just wanted to add to something that Taylor said about the ⁓

Ben Callahan (28:46)
to enable this thing that leadership cares about, we are upgrading the system and you can get that benefit of white labeling or better accessibility or whatever by migrating to the new version of the system. So that definitely I've seen work. And then you're also talking about AI as a helper in this process. So let's come back to that because I think there's probably a lot to unpack there. Guy, what's up? Yeah, I just wanted to add to something that Taylor said about the ⁓

ep069 screen raw (29:16)
Because we had similar things. I I raised my hand when he asked about ⁓ was there a mandate from above? Yes, technically there was, but was it enforced? No. Every team is doing their own thing. No one cares. And we had those examples where they needed something and we didn't have it. So we told them, hey, build your own while we're doing something that's going to be more for the white organization. And then the question that you very appropriate question is why would they then

Ben Callahan (29:16)
Because we had similar things. I I raised my hand when he asked about ⁓ was there a mandate from above. Yes, technically there was, but was it enforced? No. Every team is doing their own thing. No one cares. ⁓ And we had those examples where they needed something and we didn't have it. So we told them, hey, build your own while we're doing something that's going to be more for the white organization. And then the question that you very appropriate question is why would they then

ep069 screen raw (29:46)
adopt a new version if they already have their own solution. And what I've seen in our large organization is that sort of like the lower maturity, I would say, of the organization actually plays into our hands in that case because ⁓ the perceived cost of either building it their own way or having to continue maintaining it by themselves.

Ben Callahan (29:46)
adopt a new version if they already have their own solution. And what I've seen in our large organization is that sort of like the lower maturity, I would say, of the organization actually plays into our hands in that case because ⁓ the perceived cost of either building it their own way or having to continue maintaining it by themselves.

ep069 screen raw (30:13)
is usually higher than just adopting the new version or upgrading to the new version of the design system. Because they need to consider accessibility, which a lot of times they just don't have the level of maturity in that area. They need to, ⁓ for example, if they're looking at theming, yes, they can do things that are kind of like quick fixes, but.

Ben Callahan (30:13)
is usually higher than just adopting the new version or upgrading to the new version of the design system. Because they need to consider accessibility, which a lot of times they just don't have the level of maturity in that area. They need to, ⁓ for example, if they're looking at theming, yes, they can do things that are kind of like quick fixes, but.

ep069 screen raw (30:40)
They don't have the ability to build something that is going to, that's going to scale the way we do. So a lot of times they'd rather, we found teams that said, you know what, we would rather wait for the design system to have that ready instead of building it ourselves. Yeah. Interesting. There's so much conversation these days around the pressure for teams to work faster. And what I hear you saying is it may be an artificial pressure, right? Like when they're faced with having to make a choice.

Ben Callahan (30:40)
They don't have the ability to build something that is going to, that's going to scale the way we do. So a lot of times they'd rather, we found teams that said, you know what, we would rather wait for the design system to have that ready instead of building it ourselves. Yeah. Interesting. There's so much conversation these days around the pressure for teams to work faster. And what I hear you saying is it may be an artificial pressure, right? Like when they're faced with having to make a choice.

ep069 screen raw (31:11)
they would maybe choose to wait if they know they're going to get something that's quality and it prevents a certain amount of rework in their future. I don't think it's that's, mean, they're still required to move faster and faster and faster, but I think they have other things that they prioritize as they need to get to first. And if they can wait a bit longer with, okay, we can have a updated dropdown. can do that. Yeah. Gotcha. Taylor. Yeah, there's, I'm dropping an article in chat. There's, there's, ⁓

Ben Callahan (31:11)
they would maybe choose to wait if they know they're going to get something that's quality and it prevents a certain amount of rework in their future. don't think it's that's, mean, they're still required to move faster and faster and faster, but I think they have other things that they prioritize as they need to get to first. And if they can wait a bit longer with, okay, we can have a updated dropdown. can do that. Yeah. Gotcha. Taylor. Yeah, there's, I'm dropping an article in chat. There's, there's,

ep069 screen raw (31:41)
It was written by Josh Clark way back in the day. use this every time I have this kind of crisis of thought, I go back to this one because I start to remember that like, all right, awesome, new tools, new features, new whatever the system's job is not to be a place for exploration. It's meant to be a place of stability, right? Depending on how you have it set up, right? At our org, that's what it is. We are a place of stable infrastructure. We are a body of work that is ready for new change, but does not just roll it out willy-nilly, right? We are there to correct.

Ben Callahan (31:41)
It was written by Josh Clark way back in the day. use this every time I have this kind of crisis of thought, I go back to this one because I start to remember that like, all right, awesome, new tools, new features, new whatever the system's job is not to be a place for exploration. It's meant to be a place of stability, right? Depending on how you have it set up, right? At our org, that's what it is. We are a place of stable infrastructure. We are a body of work that is ready for new change, but does not just roll it out willy-nilly, right? We are there to correct.

ep069 screen raw (32:10)
the bad behaviors of old. it puts us in a combative place kind of at all times. So it's helpful for me, I think, to come into like this and reread this thing, because it also gives the language of like, yes, that's great. We love you to keep building that. like until five feature teams need that, it's actually, it's silly for us to get involved, right? It's more overhead for you. Or when those five teams like we have, for example, we have a search component right now that lives in the old design system code that only one product uses. And it's ridiculous that it exists there.

Ben Callahan (32:10)
the bad behaviors of old. it puts us in a combative place kind of at all times. So it's helpful for me, I think, to come into like this and reread this thing, because it also gives the language of like, yes, that's great. We love you to keep building that. like until five feature teams need that, it's actually, it's silly for us to get involved, right? It's more overhead for you. Or when those five teams like we have, for example, we have a search component right now that lives in the old design system code that only one product uses. And it's ridiculous that it exists there.

ep069 screen raw (32:37)
And we've been like, cool, this is for your group. Like we should never have gotten involved in maintaining this for you. Cause now we're a blocker, right? So that's where we start to go is like, great, just taking the maintenance of this object off of you now that it's grown, right? Unblock your team and accelerate it. That's the system's job. We will maintain the normalized thing, right? And so what we've tried to do is introduce what we've called an additive threshold. And so anytime we talk about new things or changes to the system or adjustments to ⁓ an object,

Ben Callahan (32:37)
And we've been like, cool, this is for your group. Like we should never have gotten involved in maintaining this for you. Cause now we're a blocker, right? So that's where we start to go is like, great, just taking the maintenance of this object off of you now that it's grown, right? Unblock your team and accelerate it. That's the system's job. We will maintain the normalized thing, right? And so what we've tried to do is introduce what we've called an additive threshold. And so anytime we talk about new things or changes to the system or adjustments to ⁓ an object,

ep069 screen raw (33:06)
We kind of counter, we're like, cool, we hit our additive threshold and it's kind of our silly default, like counterpoint. But the idea is how many times does this thing like gonna make an impact, right? So we're gonna, for example, build a new component, right? If it's just for your feature that you're testing, we're not getting involved. It needs to make a bigger splash than that, right? So the juice is to be worked to squeeze for us to get involved. And we've set a threshold on that, for example, like tokens, right? We're not just gonna pollute our token architecture with every random color new teams wanna try.

Ben Callahan (33:06)
We kind of counter, we're like, cool, we hit our additive threshold and it's kind of our silly default, like counterpoint. But the idea is how many times does this thing like gonna make an impact, right? So we're gonna, for example, build a new component, right? If it's just for your feature that you're testing, we're not getting involved. It needs to make a bigger splash than that, right? So the juice has to be worked to squeeze for us to get involved. And we've set a threshold on that, for example, like tokens, right? We're not just gonna pollute our token architecture with every random color new teams wanna try.

ep069 screen raw (33:33)
They need to have at least four applications of that color consistently, for example, for us to warrant elevating into a token. So we've started to try to think about that mantra for different things, right? Components, features, documentation, whatever, and then try to relay that to our consumers. So they then become part of it. And we're like, Hey, we'd love to build that for you, but we need a little more so that it's worth both of our time, you know, and then come back and talk to us. You know, and it creates that, that, ⁓ loop where you have to go check in with them and like, you build your own kind of like tracking log of

Ben Callahan (33:33)
They need to have at least four applications of that color consistently, for example, for us to warrant elevating into a token. So we've started to try to think about that mantra for different things, right? Components, features, documentation, whatever, and then try to relay that to our consumers. So they then become part of it. And we're like, Hey, we'd love to build that for you, but we need a little more so that it's worth both of our time, you know, and then come back and talk to us. You know, and it creates that, that, ⁓ loop where you have to go check in with them and like, you build your own kind of like tracking log of

ep069 screen raw (34:03)
unofficial feature requests, you know, where you can start to build the record of, yeah, that's five people have asked for this and they just didn't submit a feature request, but now we have evidence. And then you go back to them, you start having those questions. So to give that triage, right? I think I agree with you, Taylor, but I also like right now I'm working with a team that is really struggling because the sort of

Ben Callahan (34:03)
unofficial feature requests, you know, where you can start to build the record of, yeah, that's five people have asked for this and they just didn't submit a feature request, but now we have evidence. And then you go back to them, you start having those questions. So to give that triage, right? Yeah. I think I agree with you, Taylor, but I also like right now I'm working with a team that is really struggling because the sort of

ep069 screen raw (34:28)
parent system, it's a multi-system scenario and the parent system has been just like you're describing here, almost rigorous in denying things based on the kinds of factors, like the idea of an additive threshold measure that you're describing. What's happened is it's created animosity between the consuming teams.

Ben Callahan (34:28)
parent system, it's a multi-system scenario and the parent system has been just like you're describing here, almost rigorous in denying things based on the kinds of factors, like the idea of an additive threshold measure that you're describing. What's happened is it's created animosity between the consuming teams.

ep069 screen raw (34:56)
In this case, it's other smaller systems like more focused systems, product domain systems in working with the core system. so I guess my question back to you is like, is there something there around, I don't know if it's just like the posture you take or like how you answer or like how that communication happens. Like how are you maintaining good relationships with these folks with a model like this is what I'm getting at. The only thing that's helped me is to remember that like I'm not the code.

Ben Callahan (34:56)
In this case, it's other smaller systems like more focused systems, product domain systems in working with the core system. so I guess my question back to you is like, is there something there around, I don't know if it's just like the posture you take or like how you answer or like how that communication happens. Like how are you maintaining good relationships with these folks with a model like this is what I'm getting at. The only thing that's helped me is to remember that like I'm not the code.

ep069 screen raw (35:24)
I'm not the system, but it doesn't matter. So I try not to get defensive if someone's like, the token architecture is trash. It's like, cool, it ain't your common thing. It's that it's not working for you. And then I can figure out what the hell's going on. That's why I feel this job is customer service 24 hours a day. Because you got to ask that question. Why isn't that token working? Is it the names, the whatever? to keep that relationship healthy, the first thing I try to do is assume that no one's at fault with the thing. We just unpack it. And that helps tend to boil them down.

Ben Callahan (35:24)
I'm not the system, but it doesn't matter. So I try not to get defensive if someone's like, the token architecture is trash. It's like, cool, it ain't your common thing. It's that it's not working for you. And then I can figure out what the hell's going on. That's why I feel this job is customer service 24 hours a day. Because you got to ask that question. Why isn't that token working? Is it the names, the whatever? to keep that relationship healthy, the first thing I try to do is assume that no one's at fault with the thing. We just unpack it. And that helps tend to boil them down.

ep069 screen raw (35:53)
because nine times out of 10, it's something that's happening in their environment, not ours, right? But we don't want to be like, meh, you know? So you got to like slow down and give it. So it's honestly taking that beat of like, all right, you're commenting about the system, which is much larger than me. And I don't care because it's not me. Like that's honestly the first thing that I try to do. And then there's someone put a comment about the canopy both. And I think this ties into that. My second answer to yours. think yes, but I think it depends on what innovation we're talking about, right?

Ben Callahan (35:53)
Because nine times out of 10, it's something that's happening in their environment, not ours, right? But we don't want to be like, meh. So you got to slow down and give it. So it's honestly taking that beat of like, all right, you're commenting about the system, which is much larger than me. And I don't care because it's not me. That's honestly the first thing that I try to do. And then there's someone put a comment about the canopy both. And I think this ties into that, second answer to yours. I think yes, but I think it depends on what innovation we're talking about.

ep069 screen raw (36:22)
move fast, break things, fuck no, should not be in the system, right? Innovative new accessibility feature, absolutely should be in the system, right? So like innovation as like a bucket term, I think it's like a farce in terms of like this, right? So like maybe wrong for me for phrasing it that way, but I think standardization in terms of proven helpful solutions, things that scale, that's really what it is. Exploration that helps at scale and then factors in all that change management.

Ben Callahan (36:22)
move fast, break things, fuck no, should not be in the system, right? Innovative new accessibility feature, absolutely should be in the system, right? So like innovation as like a bucket term, I think it's like a farce in terms of like this, right? So like maybe wrong for me phrasing it that way, but I think standardization in terms of proven helpful solutions, things that scale, that's really what it is. Exploration that helps at scale and then factors in all that change management.

ep069 screen raw (36:50)
I'm going get to you, Peter, but Shimaa, do you have a response to this? Like how is this all sitting with you and you're, you know, just feeling like how you're operating as well? Yeah, the, ⁓ I mean, I experienced like that type of tension before, ⁓ between, know, new, old and, ⁓ teams really feeling strong about what they want to add to the system. need this, you know, bespoke input because of our specific use case.

Ben Callahan (36:50)
I'm going to get to you, Peter, but Shimaa, do you have a response to this? Like how is this all sitting with you and you're, you know, just feeling like how you're operating as well? Yeah, the, ⁓ I mean, I experienced like that type of tension before, ⁓ between, know, new, old and, ⁓ teams really feeling strong about what they want to add to the system. need this, you know, bespoke input because of our specific use case.

ep069 screen raw (37:20)
But why? No, like I mentioned in the comments, like everyone needs to chill. You really feel strongly about this. Go build it. But we're not adding it in the system. And I think it's you go back to what Taylor mentioned about having a one place for these toriaging and system decisions. I have one tag that says approved will not do.

Ben Callahan (37:20)
But why? No, like I mentioned in the comments, like everyone needs to chill. You really feel strongly about this. Go build it. But we're not adding it in the system. And I think it's you go back to what Taylor mentioned about having a one place for these toriaging and system decisions. I have one tag that says approved will not do.

ep069 screen raw (37:49)
you know, or will do in the future or completed. like having one place where you can like, what did we talk about this? A new input, you know, if someone into future, ask it about it, then yes, let's talk. If there's multiple, ⁓ you know, queries about the same thing, but also being transparent about the decision that we not adding this weird gradients to the system, something like that. Very, you know, put your foot down situation. Yeah. Yeah.

Ben Callahan (37:49)
you know, or will do in the future or completed. like having one place where you can like, what did we talk about this? A new input, you know, if someone into future, ask it about it, then yes, let's talk. If there's multiple, ⁓ you know, queries about the same thing, but also being transparent about the decision that we not adding this weird gradients to the system, something like that. Very, you know, put your foot down situation. Yeah.

ep069 screen raw (38:19)
And it's always with kindness, know, like this is the trick. It's like, because we don't want to burn these bridges, you know, like it's really, and like Taylor said, it's oftentimes it's, it's just misunderstandings that lead to these things, right? Mis- mis- alignment on what the intent of the system is. I'm going to, Peter, you're next in a second, but I want to give Aaron, Tallulah and Liz a warning because I'm watching this little thread unfold in the chat. And I want to hear more about this idea, Liz, especially that.

Ben Callahan (38:19)
And it's always with kindness, know, like this is the trick. It's like, because we don't want to burn these bridges, you know, like it's really, and like Taylor said, it's oftentimes it's, it's just misunderstandings that lead to these things, right? Mis- mis- alignment on what the intent of the system is. I'm going to, Peter, you're next in a second, but I want to give Aaron, Tallulah and Liz a warning because I'm watching this little thread unfold in the chat. And I want to hear more about this idea, Liz, especially that.

ep069 screen raw (38:46)
You're saying you don't want to maintain more than one. So let's bring that into the conversation too, as opposed to a lot of folks here have spoken so far about the idea of maintaining multiple versions of a system to give space and time for migration. So Peter, before we get to that jump in. Yeah, I mean, all these things are very interrelated that we're talking about. ⁓ I think they ultimately come back to kind of the rigidity of your system. ⁓ Not being able to support something it's because, we'll be structured our system to be exactly X, Y, and Z.

Ben Callahan (38:46)
You're saying you don't want to maintain more than one. So let's bring that into the conversation too, as opposed to a lot of folks here have spoken so far about the idea of maintaining multiple versions of a system to give space and time for migration. So Peter, before we get to that jump in. Yeah, I mean, all these things are very interrelated that we're talking about. ⁓ I think they ultimately come back to kind of the rigidity of your system. ⁓ Not being able to support something it's because, we'll be structuring our system to be exactly X, Y and Z.

ep069 screen raw (39:16)
I take Taylor's position about 85, 87 % of the way. But where I differentiate is I actually want to be involved with those kinds of things that you all are developing as early as humanly possible. Not at the point after it's got, oh, there's five different needs for this. I want to know when there's a need one and two. The point of that being is I can help influence how that idea or that need is going to be gracefully integrated into the system eventually.

Ben Callahan (39:16)
I take Taylor's position about 85, 87 % of the way. But where I differentiate is I actually want to be involved with those kinds of things that you all are developing as early as humanly possible. Not at the point after it's got, oh, there's five different needs for this. I want to know when there's a need one and two. The point of that being is I can help influence how that idea or that need is going to be gracefully integrated into the system eventually.

ep069 screen raw (39:45)
So my goal is not necessarily to block you from doing it because I accept that this is all code and the teams can do whatever they want at any time anyway, regardless of how I feel about it. So the best thing that I can do is try to help influence them to kind of gracefully integrate that into the system. The point of the system is not to, I don't believe that the system is there to kind of be necessarily a rigid infrastructure. It is there to be an adaptable infrastructure so that the system can continue to evolve so that you don't need to build system one, system two, system three.

Ben Callahan (39:45)
So my goal is not necessarily to block you from doing it because I accept that this is all code and the teams can do whatever they want at any time anyway, regardless of how I feel about it. So the best thing that I can do is try to help influence them to kind of gracefully integrate that into the system. The point of the system is not to, I don't believe that the system is there to kind of be necessarily a rigid infrastructure. It is there to be an adaptable infrastructure so that the system can continue to evolve so that you don't need to build system one, system two, system three.

ep069 screen raw (40:14)
You have system one is a continuous system. Yeah, that's, more or less where I was going before I kind of fall off the barrel there. Yeah, you're good. So I hear what you're saying. And I think I definitely agree with this sentiment of like, Hey, go build your own thing. But we're also here to support that work. And ⁓ there are patterns that we've established in the system, right? Like you can compose new things from smaller pieces of the system. You can.

Ben Callahan (40:14)
You have system one is a continuous system. Yeah, that's, more or less where I was going before I kind of fall off the barrel there. Yeah, you're good. So I hear what you're saying. And I think I definitely agree with this sentiment of like, Hey, go build your own thing. But we're also here to support that work. And ⁓ there are patterns that we've established in the system, right? Like you can compose new things from smaller pieces of the system. You can.

ep069 screen raw (40:42)
follow those design and development patterns that we've established. And maybe that makes this a whole lot easier in the future for you to do that migration or for us to bring that work into the system, right? Right. And we can actually kind of like say like, Hey, we can accelerate your development of this thing. If you work with this thing, this thing, and this thing, that's already part of the system. So rather than going completely like apeshit over here, like, you know, go like 70 % apeshit on this thing. Gotcha. Taylor jump in.

Ben Callahan (40:42)
follow those design and development patterns that we've established. And maybe that makes this a whole lot easier in the future for you to do that migration or for us to bring that work into the system, right? Right. And we can actually kind of like say like, Hey, we can accelerate your development of this thing. If you work with this thing, this thing, and this thing, that's already part of the system. So rather than going completely like apeshit over here, like, you know, go like 70 % apeshit on this thing. Gotcha. Taylor jump in.

ep069 screen raw (41:11)
Two bits of one back to Peter and then when I drop some stuff into the big jam on the right that I want to point out Yeah, ⁓ Peter I'm with you and I think the only thing that makes me like go That's a really dangerous stance is like how fast tech moves, right? We can't simply say the same system will always be right like for example We were architecting full mass on a react system and then we heard from some leader Hey, we're shifting off of that decisions like you know, wait a minute. Yeah, just change that eight months into our remit

Ben Callahan (41:11)
Two bits of one back to Peter and then when I drop some stuff into the big jam on the right that I want to point out Yeah, ⁓ Peter I'm with you and I think the only thing that makes me like go That's a really dangerous stance is like how fast tech moves, right? We can't simply say the same system will always be right like for example We were architecting full mass on a react system and then we heard from some leader Hey, we're shifting off of that decisions like you know, wait a minute. Yeah, just change that eight months into our remit

ep069 screen raw (41:39)
Now we have to build a second thing. You know, I'm just saying like, I love the ethos, but like, I think the reality of that is just not, not always true, right? Depending on the size of the organization you are, right? But that's a side. Right. And that's, that's where the maturity aspect comes. Cause if you're, if if you're working with people that understand and respect and appreciate this kind of thing, it's, it's, it's easy conversation to have. But if you're working with people that just all of sudden just kind of drop trowel on you just for like no. Yep.

Ben Callahan (41:39)
Now we have to build a second thing. You know, I'm just saying like, I love the ethos, but like, I think the reality of that is just not, not always true, right? Depending on the size of the organization you are, right? But that's a side. Right. And that's, that's where the maturity aspect comes. Cause if you're, if if you're working with people that understand and respect and appreciate this kind of thing, it's, it's, it's easy conversation to have. But if you're working with people that just all of sudden just kind of drop trowel on you just for like no. Yep.

ep069 screen raw (42:07)
And that goes back to someone asked in chat about like, was tagging alpha and beta and all that stuff helpful. And that's exactly what we had. We had folks go, wait a minute, why is beta different from version two? is three and beta and fourths and alpha? It's like, okay, more confusion. Like we've added another layer of, this is not helping, right? To even get us up on those other separate systems, they separate versions. So all that, yes. I dropped in ⁓ a screenshot of our feature status.

Ben Callahan (42:07)
And that goes back to someone asked in chat about like, was tagging alpha and beta and all that stuff helpful. And that's exactly what we had. We had folks go, wait a minute, why is beta different from version two? is three and beta and fourths and alpha? It's like, okay, more confusion. Like we've added another layer of, this is not helping, right? To even get us up on those other separate systems, separate versions. So all that, yes. I dropped in ⁓ a screenshot of our feature status.

communication attempt. This is a kind of a culmination of a few versions of it in different places and we're just trying to see if this works. But this is screenshots, right? So the idea is we have an air table that we link in our documentation site and anytime we hear a request for something or a ⁓ feature request actually comes through formally, we add it to this table. And all this does is create a central place where all the ideas start coming through. So we can go something's been proposed, something's in progress, something's being worked on if it's in a stage of development, whatever. And then we draw a hard line between like the components.

ep069 screen raw (42:34)
communication attempt. This is a kind of a culmination of a few versions of it in different places and we're just trying to see if this works. But this is screenshots, right? So the idea is we have an air table that we link in our documentation site and anytime we hear a request for something or a feature request actually comes through formally, we add it to this table. And all this does is create a central place where all the ideas start coming through. So we can go something's been proposed, something's in progress, something's being worked on if it's in a stage of development, whatever. And then we draw a hard line between like the components.

Ben Callahan (43:04)
that we build and then anything that we're considering a feature or some initiative that may be larger than a component or something that's not component related, you know, whatever. And to be clear, don't know if this is gonna work yet, but this is like building on a few different flavors of this methodology to try to get to this kind of like, hey, if you wanna check something, you wanna propose something, start here first, just take a look, right? And then we can link our discovery artifacts and whatever so that the hope is one of two things can happen. Either we can go, hey, great, five more teams need a dropdown. Now we know we have enough evidence.

ep069 screen raw (43:04)
that we build and then anything that we're considering a feature or some initiative that may be larger than a component or something that's not component related, you know, whatever. And to be clear, don't know if this is gonna work yet, but this is like building on a few different flavors of this methodology to try to get to this kind of like, hey, if you wanna check something, you wanna propose something, start here first, just take a look, right? And then we can link our discovery artifacts and whatever so that the hope is one of two things can happen. Either we can go, hey, great, five more teams need a dropdown. Now we know we have enough evidence.

Right. Or team two that wants to drop down goes, we can just use team one starting point, maybe get closer. it didn't work. Orc, right. it did work. Second user. Right. And then we just keep plant. We keep touch on this stuff to, to Shimaa's point, like going back with them and talking to people on it. And someone else mentioned wanting to be, ⁓ ahead of the process, right. Wanted to be like in, in with the discussions early, like absolutely. This is how we're trying to do that. Because you're right. You got it. You got to know from it before it ships. Right. And you have to block them, but to understand.

Ben Callahan (43:33)
Right. Or team two that wants to drop down goes, can just use team one starting point, maybe get closer. it didn't work. Orc, right. it did work. Second user. Right. And then we just keep plant. We keep touch on this stuff to, to Shimaa's point, like going back with them and talking to people on it. And someone else mentioned wanting to be, ⁓ ahead of the process, right. Wanted to be like in, in with the discussions early, like absolutely. This is how we're trying to do that. Because you're right. You got it. You got to know from it before it ships. Right. And you have to block them, but to understand.

ep069 screen raw (44:02)
I love this Taylor, I also think it's, it requires a different mindset on the part of your consumers too, right? Like this also requires, like they're not in my experience, cause we try to set this up with almost all of our clients and ⁓ they, a lot of times we have to work with those consuming teams quite a bit to get them to do the work, to come here, to submit the thing, to go look and see, there other things that are, I mean, it's like, it's a slog sometimes to get them to want that. So it requires some, some handholding.

Ben Callahan (44:02)
I love this Taylor, I also think it's, it requires a different mindset on the part of your consumers too, right? Like this also requires, like they're not in my experience, cause we try to set this up with almost all of our clients and ⁓ they, a lot of times we have to work with those consuming teams quite a bit to get them to do the work, to come here, to submit the thing, to go look and see, there other things that are, I mean, it's like, it's a slog sometimes to get them to want that. So it requires some, some handholding.

ep069 screen raw (44:31)
But I do think it's worth it. And the other thing I will say is communication with them as that concept or whatever idea they've submitted evolves is so huge. Keeping them in the loop, and we're trying to find ways to just, it's really easy to automate a lot of that. Anytime something changes to their item, they just get notified. That makes them feel like things are happening. Like, my goodness, yeah, I submitted this. They're responsive to my ideas.

Ben Callahan (44:31)
But I do think it's worth it. And the other thing I will say is communication with them as that concept or whatever idea they've submitted evolves is so huge. Keeping them in the loop, and we're trying to find ways to just, it's really easy to automate a lot of that. Anytime something changes to their item, they just get notified. That makes them feel like things are happening. Like, my goodness, yeah, I submitted this. They're responsive to my ideas.

ep069 screen raw (44:58)
I love it. And that's also helpful if you ever run on the same ticketing system at Mayo, we don't, right? So like this is a solution in between there, right? So that's your point. Yes. The other thing we did do that I mentioned is this, a talk through this page happens at all of our ops hours, right? We just reference like, Hey, let's take a look at the feature status stuff. It's a link on our feature request stuff. So like, it's like, Hey, want to see what, you know, the status of your thing go here because we're not all in the same project management tool where that stuff can be automated.

Ben Callahan (44:58)
I love it. And that's also helpful if you ever run on the same ticketing system at Mayo, we don't, right? So like this is a solution in between there, right? So that's your point. Yes. The other thing we did do that I mentioned is this, a talk through this page happens at all of our ops hours, right? We just reference like, Hey, let's take a look at the feature status stuff. It's a link on our feature request stuff. So like, it's like, Hey, want to see what, you know, the status of your thing go here because we're not all in the same project management tool where that stuff can be automated.

ep069 screen raw (45:28)
So this is manual in between layer that I'm hoping becomes a storytelling tool to do all this. So we can just constantly have this link up like, cool, let's use this to tap the conversation and we'll see. Yeah, love it. ⁓ Sheema, do you have a response? And then I want to get to Aaron.

Ben Callahan (45:28)
So this is manual in between layer that I'm hoping becomes a storytelling tool to do all this. So we can just constantly have this link up like, cool, let's use this to tap the conversation and we'll see. Yeah, love it. ⁓ Sheema, do you have a response? And then I want to get to Aaron.

ep069 screen raw (45:46)
Yeah, I think this is ⁓ really cool to see this feature status and the status table. have a similar, ⁓ more simplified approach. call it our system called Norma Design System. So we have something called Norma Labs where it's like a file. It's a published library, so it's owned by the product. ⁓ Design System can help.

Ben Callahan (45:46)
Yeah, I think this is ⁓ really cool to see this feature status and the status table. have a similar, ⁓ more simplified approach. call it our system called Norma Design System. So we have something called Norma Labs where it's like a file. It's a published library, so it's owned by the product. ⁓ Design System can help.

ep069 screen raw (46:11)
but it's like these ideas that they are brewing that is not still like full on ⁓ mature enough to be graduated to the system, or it's just used by one team, but they feel like it's ⁓ going to scale for the whole organization. So they can come into the normal lab, they can work together, different product teams, and then the system can help and give feedback.

Ben Callahan (46:11)
but it's like these ideas that they are brewing that is not still like full on ⁓ mature enough to be graduated to the system, or it's just used by one team, but they feel like it's ⁓ going to scale for the whole organization. So they can come into the normal lab, they can work together, different product teams, and then the system can help and give feedback.

ep069 screen raw (46:37)
At least as using our tokens, at least as using, know, we are co-creating together, but it's not really officially a system component yet, but we are creating that space for them to explore and put ideas together. So, yeah. That's great. Love that. We've heard this idea of labs or playgrounds come up quite a bit in a lot of these conversations. So I think we need to have a session on like how that gets implemented. I see your question there, Taylor. think it's tricky. Aaron, jump in.

Ben Callahan (46:37)
At least as using our tokens, at least as using, know, we are co-creating together, but it's not really officially a system component yet, but we are creating that space for them to explore and put ideas together. So, yeah. That's great. Love that. We've heard this idea of labs or playgrounds come up quite a bit in a lot of these conversations. So I think we need to have a session on like how that gets implemented. I see your question there, Taylor. think it's tricky. Aaron, jump in.

ep069 screen raw (47:06)
Yeah, so similarly we have, you know, an intake process and we take them and folks can kind of check in on their intakes or see similarities. I think the one thing that gets interesting or challenging and I'm curious about is the idea of, again, we saw like a slew of intakes because some of our work was out of parity. Like our iOS and Android implementations were just different enough that it was causing confusion. And so

Ben Callahan (47:06)
Yeah, so similarly we have, you know, an intake process and we take them and folks can kind of check in on their intakes or see similarities. I think the one thing that gets interesting or challenging and I'm curious about is the idea of, again, we saw like a slew of intakes because some of our work was out of parity. Like our iOS and Android implementations were just different enough that it was causing confusion. And so

ep069 screen raw (47:36)
Now we're remediating that. So we get to a point where we just have a significant number of updates and each of our components is versioned individually. So, right, like you can roll out a new version of each component. I think where I get like, or where we're sort of turned about right now is the idea of like, cool, well, but we have 20 components that have their own new version. Is that when you start to say like, Hey, big, big breaking change, like do it all.

Ben Callahan (47:36)
Now we're remediating that. So we get to a point where we just have a significant number of updates and each of our components is versioned individually. So, right, like you can roll out a new version of each component. I think where I get like, or where we're sort of turned about right now is the idea of like, cool, well, but we have 20 components that have their own new version. Is that when you start to say like, Hey, big, big breaking change, like do it all.

ep069 screen raw (48:05)
time versus previously we sort of roll them out one at a time. And we usually like go a version up so people can adopt it as they can. ⁓ But again, we can only maintain but so many old versions as a, we have a decent sized team. Like I admit lucky, but it still gets unmaintainable.

Ben Callahan (48:05)
time versus previously we sort of roll them out one at a time. And we usually like go a version up so people can adopt it as they can. ⁓ But again, we can only maintain but so many old versions as a, we have a decent sized team. Like I admit lucky, but it still gets unmaintainable.

ep069 screen raw (48:30)
That's great. this is, I think, gets to what I was asking about earlier. don't know if Liz or I don't remember if was Tallulah, someone else was talking about this about, we don't want to maintain too many versions. So if anybody wants to jump in on that, I'd love to hear that perspective. Tallulah, I see your hand up. Yeah, I was just saying we don't have the capacity to. It's not so much that we don't want to. It's matter of we can barely keep up with.

Ben Callahan (48:30)
That's great. this is, I think, gets to what I was asking about earlier. don't know if Liz or I don't remember if was Tallulah, someone else was talking about this about, we don't want to maintain too many versions. So if anybody wants to jump in on that, I'd love to hear that perspective. Tallulah, I see your hand up. Yeah, I was just saying we don't have the capacity to. It's not so much that we don't want to. It's matter of we can barely keep up with.

ep069 screen raw (48:57)
the most recent version. So we'll still leave it available, but we're not gonna fix bugs. We're not gonna add to it, that kind of thing. And then the Sigma library, just because we have had ⁓ better results with ⁓ getting designers to update right away, ⁓ we just say, we'll leave the old file available for six months. But we also say, hey, me and my team,

Ben Callahan (48:57)
the most recent version. So we'll still leave it available, but we're not gonna fix bugs. We're not gonna add to it, that kind of thing. And then the Sigma library, just because we have had ⁓ better results with ⁓ getting designers to update right away, ⁓ we just say, we'll leave the old file available for six months. But we also say, hey, me and my team,

ep069 screen raw (49:22)
have extra hours in the next two sprints available to help you if you have any trouble. So you don't have to do it right now, but you have support in doing it right now. And I really encouraged people to just hurry up and get it done instead of waiting the six months. Yeah, that's cool. So like using sort of like dangling the carrot of support as opposed to the stick of it goes away or whatever. Yeah, exactly. Yeah.

Ben Callahan (49:22)
have extra hours in the next two sprints available to help you if you have any trouble. So you don't have to do it right now, but you have support in doing it right now. And I really encouraged people to just hurry up and get it done instead of waiting the six months. Yeah, that's cool. So like using sort of like dangling the carrot of support as opposed to the stick of it goes away or whatever. Yeah, exactly. Yeah.

ep069 screen raw (49:48)
You can wait, nobody's forcing you, but we're here for you for the next two sprints. yeah. Got it. Nice. Liz, are you, I want to get you in. So jump in if you're willing to share. Yeah. I was going to say, like, I mean, we, haven't been to a question in a really long time because my team was disbanded and ⁓ I am now like back in a role and the design system's like part of my role. It's like, I have more things, but yeah, it's me and a

Ben Callahan (49:48)
You can wait, nobody's forcing you, but we're here for you for the next two sprints. yeah. Got it. Nice. Liz, are you, I want to get you in. So jump in if you're willing to share. Yeah. I was going to say, like, I mean, we, haven't been to a question in a really long time because my team was disbanded and ⁓ I am now like back in a role and the design system's like part of my role. It's like, I have more things, but yeah, it's me and a

ep069 screen raw (50:17)
new designer who's like part-time on our design system. Like, like Tallulah said, like we don't have the capacity, but even when I've been on dedicated teams, I don't know if I've ever met a design team or a design system team that's been like, yeah, we have tons of capacity. We aren't looking for work to do. And like the idea of trying to keep track of multiple versions.

Ben Callahan (50:17)
new designer who's like part-time on our design system. Like, like Tallulah said, like we don't have the capacity, but even when I've been on dedicated teams, I don't know if I've ever met a design team or a design system team that's been like, yeah, we have tons of capacity. We aren't looking for work to do. And like the idea of trying to keep track of

multiple versions is

ep069 screen raw (50:45)
is just like, it's really tedious and it's hard to do, especially the longer that they live. And so I don't know, I just don't know of any team, design system team that's gonna say like, oh yeah, we have the capacity to do this. And I think even this isn't like versioning like an old system to a new system, but I think back to my experience at IBM,

Ben Callahan (50:46)
just like, it's really tedious and it's hard to do, especially the longer that they live. And so I don't know, I just don't know of any team, design system team that's going to say like, oh yeah, we have the capacity to do this. And I think even this isn't like versioning like an old system to a new system, but I think back to my experience at IBM.

When we had the carbon team who's building React and we had another team who's building Angular

ep069 screen raw (51:09)
when we had the carbon team who's building React and we had another team who is building Angular.

Ben Callahan (51:14)
and in Watson House, we had developers who were using all of the different technologies. And we're going, these experiences aren't consistent because Angular wasn't the same as React. So as a design system team, our job was like, literally we built a testing architecture to componentize tests.

ep069 screen raw (51:15)
And in Watson House, we had developers who were using all of the different technologies. And we're going, these experiences aren't consistent because Angular wasn't the same as React. So as a design system team, our job was like, literally we built a testing architecture to componentize tests,

not the UI.

Ben Callahan (51:39)
not the UI.

ep069 screen raw (51:40)
So that way we could compare the Angular and the React versions to like call out the differences. Because we depended on those two systems being the same. Our entire team didn't build UI work. We built testing work. So yeah, I don't know. It's always a lot of work.

Ben Callahan (51:40)
So that way we could compare the Angular and the React versions to call out the differences. Oh my goodness. Because we depended on those two systems being the same. Our entire team didn't build UI work. We built testing work. Wow. Good grief. So yeah, I don't know. It's always a lot of work.

ep069 screen raw (52:02)
Yeah, welcome back, Liz. Thanks for being here. And Taylor said it in the chat, but I'll make sure I say this to to the to all of you. Like everybody's welcome here, even if these questions don't aren't particularly relevant in your current role. So I know, especially this week, I mentioned to me earlier that like these ones felt a little bit like if you didn't have this specific experience, you couldn't really answer. So I apologize for that. ⁓ Peter, you got 30 seconds. What do you got? Yeah, I'm really great.

Ben Callahan (52:02)
Yeah, welcome back, Liz. Thanks for being here. And Taylor said it in the chat, but I'll make sure I say this to to all of you. Like everybody's welcome here, even if these questions don't aren't particularly relevant in your current role. So I know, especially this week, I mentioned to me earlier that like these ones felt a little bit like if you didn't have this specific experience, you couldn't really answer. So I apologize for that. ⁓ Peter, you got 30 seconds. What do you got? Yeah, I'm really great.

ep069 screen raw (52:31)
easily culturally integratable question that you can throw into designers to kind of manage a lot of this stuff is don't show me different, show me better. Don't give me a new version of a button because you think it's aesthetically a better version of a button. Show me a better version of the button because it has a purpose that is better than the one that it solves today. And that will allow designers to kind of self filter and kind of really focus on like, do I actually need something different from this? And when they do bring it something to you, they can actually kind of annotate

Ben Callahan (52:31)
easily culturally integratable question that you can throw into designers to kind of manage a lot of this stuff is don't show me different, show me better. Don't give me a new version of a button because you think it's aesthetically a better version of a button. Show me a better version of the button because it has a purpose that is better than the one that it solves today. And that will allow designers to kind of self filter and kind of really focus on like, do I actually need something different from this? And when they do bring it something to you, they can actually kind of annotate

ep069 screen raw (53:01)
why it is something that should be integrated into the system. And it'll also help alleviate your workload. Yes. That's really great. I love that differentiation. Shimaa, last word. We're at the end. I can't believe the hour is gone. This happens every time, but what's your takeaway so far from the conversation? I think we all ⁓ feeling the same feelings. We all feel the same experience, ⁓ the same challenges. So I love this conversation and ⁓

Ben Callahan (53:01)
why it is something that should be integrated into the system. And it'll also help alleviate your workload. Yes. That's really great. I love that differentiation. Shimaa, last word. We're at the end. I can't believe the hour is gone. This happens every time, but what's your takeaway so far from the conversation? I think we all ⁓ feeling the same feelings. We all feel the same experience, ⁓ the same challenges. So I love this conversation and ⁓

ep069 screen raw (53:29)
We all learned it from today's discussion. And yeah, it's never enough time to have a therapy session about design systems. Yeah, that's right. It did feel a little therapeutic today. So thanks for bringing this one to us. A couple quick announcements. I have one team coaching spot opening up in March. If you're interested in having some external support with your system team, please reach out. can get all that info here. Redwoods is open. We're doing this kind of like digging every week over there. So if you like this.

Ben Callahan (53:29)
We all learned it from today's discussion. And yeah, it's never enough time to have a therapy session about design systems. Yeah, that's right. It did feel a little therapeutic today. So thanks for bringing this one to us. A couple quick announcements. I have one team coaching spot opening up in March. If you're interested in having some external support with your system team, please reach out. can get all that info here. Redwoods is open. We're doing this kind of like digging every week over there. So if you like this.

ep069 screen raw (53:58)
take a peek at the values and see if that aligns with who you are, who you want to be, who you want to be in the space. You can see some of the things that folks in ⁓ Redwoods have written in the last week or so right here, and also things from the larger systems community that are going on. So please, if you have other links to drop that are system related, drop those. I'd love to hear if you're looking for a new gig or if you have something to celebrate, please drop those here as well. And if you have feedback or ideas for future questions, please give them to us there.

Ben Callahan (53:58)
take a peek at the values and see if that aligns with who you are, who you want to be, who you want to be in the space. You can see some of the things that folks in ⁓ Redwoods have written in the last week or so right here, and also things from the larger systems community that are going on. So please, if you have other links to drop that are system related, drop those. I'd love to hear if you're looking for a new gig or if you have something to celebrate, please drop those here as well. And if you have feedback or ideas for future questions, please give them to us there.

ep069 screen raw (54:26)
It's one o'clock Eastern. Thank you all so much for being here. Shimaa, you rock. Thank you so much. Really appreciate you. Bye everybody. We'll see you soon.

Ben Callahan (54:26)
It's one o'clock Eastern. Thank you all so much for being here. Shimaa, you rock. Thank you so much. Really appreciate you. Bye everybody. We'll see you soon.

Ben Callahan (54:38)
Thank you so much for joining us on episode 069 of The Question. This format doesn't work unless folks like you are willing to share some of your experience and then show up here in learning mode. Remember, you can get access to the raw data, the collaborative FigJam, and all of the recordings for this episode on my website, bencallahan.com. If you or your team could use an outside perspective in your design system program, I'd be honored to support you in that way.

There's much more information about my individual and team coaching program over on the website. Thanks again for being here and remember, stay in learning mode.