Software Developers Journey Podcast

#271 Una Kravets joining bleeding edge design and coding at Google



Introduction and Early Struggles: 02:54

Una started off in the arts, focusing on **traditional media** but later transitioned into the tech world. It wasn't an easy journey, with challenges such as **understanding the vast landscape of web development**. Every step, whether learning about HTML or CSS, was a new challenge, teaching her that **perseverance and adaptability** are crucial in the tech journey.

The Joy of CSS and UI: 04:28

Una found her niche in CSS and UI, realizing how she could apply her arts background to create beautiful interfaces. She emphasizes the **importance of finding one's unique strengths** and utilizing them effectively in tech, showing how blending different disciplines can produce remarkable outcomes.

Involvement in W3C Community and Standards: 10:02

By participating in the W3C community, Una learned the intricacies of **web standards and backward compatibility**. She underscores how vital it is for new developers to **participate in communities and working groups** as they offer vast learning opportunities and a platform to voice one's opinions.

The World of Developer Relations (DevRel): 12:27

DevRel was a significant part of Una's journey, where she got to **meet developers from various backgrounds**. She shares the joy and challenges of the role, suggesting juniors should **explore DevRel** if they enjoy both coding and human interaction. It teaches the importance of **community building and collaboration** in tech.

Backward Compatibility Challenges: 19:00

One of the prominent challenges in web development, according to Una, is **maintaining backward compatibility**. For junior developers, understanding and respecting the need for backward compatibility is crucial. She suggests continuously **learning and staying updated** with changing web standards to handle these challenges effectively.

Valuable Feedback from the Community: 24:09

Una highlights the **importance of constructive feedback**. Sharing one's work with the community and seeking input can significantly enhance the quality of one's work. She advises junior developers to **be open to feedback and learn from it**, using it as a tool for growth.

Building on Existing Knowledge: 26:20

Referring to her work in color science and CSS, Una illustrates the importance of **building upon what one already knows**. Juniors should take their existing knowledge and see how they can **apply it innovatively** in new areas, making learning more efficient and enjoyable.

Documenting One’s Learning: 28:01

Una speaks about the power of **blogging and documenting one's journey**. She believes that writing helps reinforce learning and shares it with the wider community. For junior developers, documenting their learning journey can be an excellent way to **reflect, learn, and give back to the community**.

The Role of Community: 31:12

Una delves deep into the **role of communities** in her journey. Whether it's about joining an existing one, creating a new one, or simply discovering like-minded individuals, communities play a pivotal role in a developer's growth. She advises juniors to **actively engage in tech communities**, emphasizing that it's a space where they can learn, share, and grow together.

Continuous Learning and Experimentation: 35:42

Una's journey showcases the value of **continuous learning and experimentation**. She encourages juniors to **play with what interests them** – be it crypto, UI, open-source, or any other field. By delving into different areas and **exploring various tech niches**, they can find where their true passion lies.

The above insights from Una Kravets provide a roadmap for junior developers, emphasizing perseverance, continuous learning, community involvement, and the importance of blending disciplines. Her story is a testament to the endless possibilities in the tech world, provided one remains curious and open to exploration.

Enjoyed the Podcast?

If you did, make sure to subscribe and share it with your friends!

Post a review and share it! If you enjoyed tuning in, leave us a review. You can also share this podcast with your friends and family and share lessons on software development.

Become a supporter of the show. Head over to Patreon or on Buzzsprout.

Got any questions? You can connect with me, Timothée (Tim) Bourguignon, on LinkedIn, per email, or via my homepage.

Thank you for tuning in!


⚠ The following transcript was automatically generated.
❤ Help us out, Submit a pull-request to correct potential mistakes

Una Kravets 0:00
Wanna start a blog, so just just start it. And it might feel like you don't have a lot to say yet. But if you start to write down the things as you're learning them, and as you're exploring them, especially if you're kind of staying on top of what's new, it's gonna give you such a head up, leg up, especially as you're applying to jobs because you can show a history of thoughtful progression. And the second would be to get involved in your local community if possible, or virtual communities, because now there's a lot of discord groups, there's different virtual communities, if you don't have a physical local community near you, that can introduce you to people who are nerdy about the same things that you are nerdy about and excited about the same things that you are excited about. You can bounce ideas off each other, discover new things, see what they're working on, share what you're working on. That is what probably helps me most in my career is that exact pursuit of finding people who cared about these same things. When that kind of community didn't exist around me. I created it. So I started the SAS meetup in DC when I moved, I started another meetup in Austin, where it was another city they lived in the US. So either join community, make community find community, blog stuff, experiment, play with what interests you, whether it's crypto or whether it's UI front end, whether it's building frameworks, whether it's just being open source, like there's a lot in the dev space, whether you're a musician or into fashion, like there's a lot that you can hook into to find your people.

Tim Bourguignon 1:36
Hello, and welcome to developer's journey, the podcast, bringing you the making of stories of successful software developers, to help you on your upcoming journey. I'm your host Tim Bourguignon.

Tim Bourguignon 1:48
On this episode, I receive Una Kravets. Una is a Staff Developer Relations Engineer at Google Chrome, leading the CSS, UI, and DevTools Developer Relations team. Una co-hosts the CSS Podcast and the "Designing in the Browser" video series. She has built open-source libraries such as CSSgram, spoken at over 80 developer events around the world, and is an avid calligrapher & doodler.

Una Kravets 2:23
Thank you so much for having me. I'm excited to be here.

Tim Bourguignon 2:26
I am as well. Oh, love to be here. Yeah, to be here. And we've been laughing for at least 20 minutes. So it's a good start of the show. Right? Yeah, my

Una Kravets 2:33
My mouth already hurts. I'm gonna need a face massage after this.

Tim Bourguignon 2:38
Since we're recording remotely, well, I'll send you good vibes

Una Kravets 2:42

Tim Bourguignon 2:45
But before we come to your story, I want to thank the terrific listeners who support the show every month, you are keeping the DevJourney lights up. If you would like to join this fine crew, and help me spend more time on finding phenomenal guests then editing audio tracks, please go to our website, DevJourney.info and click on the "Support Me on Patreon" button. Even the smallest contributions are giant steps toward a sustainable dev journey... journey! Thank you. And now back to today's guest.

Tim Bourguignon 3:21
So, as you know, the show exists to help the listeners understand what your story looked like and imagine how to shape their own future. So as is customary on the show, let's go back to your beginnings. Where would you place the start of your dev journey?

Una Kravets 3:35
Oh, wow. Ah, where do we begin? Let's see. I think I'm one of those rare people where I discovered this blend of like coding and design at a pretty early age. And I've sort of hooked into that and kept growing that curiosity from that young age. So I know that you had someone on your show who talked about Neopets once. And I think that there's a whole generation of mostly women who are about my age, millennials who learned to code through Neopets. That was a really important moment, I think for the tech community today, but just just an opportunity to be creative and to play around learn HTML and CSS through like a fun, medium. But I also was on this chat client called the palace. Have you ever heard of the palace? I haven't. So it was like this visual chat client and you had avatars and you could create like cartoon doll outfits, and I was downloading jask PaintShop Pro seven, so I could go and like do pixel art through that and then upload it on the ballot and I was hosting servers. I didn't even know what that was at the time. I was so young. I was probably like, seven or eight years old. Wow. Yeah, really young. I got on the internet when I was six years old. I was I don't know why my parents were just very, very laissez faire about that they just kind of let me do my own thing. I was in ame chat rooms, like aim chat rooms at six years old, and people would say, ASL. And I would say six F, not going to tell you because you know. And they wouldn't believe me, but then I would report people for cursing because I was six years old. And I shouldn't have been there. And it was against the rules, because the chat room had rules back in early internet days. So anyway, the palace was like a visual chat client. And there would be like these cartoon doll contests and different servers, and you could host your own and create backgrounds. So like in PaintShop, pro, I was creating like backgrounds for the different visual chat client things. And like Neopets you could do like groups, where you could log in at a certain time and, you know, internet friends earlier and stuff. So I think that that's what got me interested in this space of like, design, and building stuff at the time. And then, you know, Myspace came out, I was, I was the person making the MySpace layouts. I was, uh, I made this one, like, this layout, where I had a background of myself with my palm out, and I photoshopped a tree growing out of it. And I thought that was really good. It was really. But that's kind of how I got started. And I, I learned more and more as it came up, I was also really into the Sims. And I was making like 3d skins for The Sims and needed a place to host them. So like needed a website to host this, the sins skins, they could download them and use them. So yeah, I think just getting my hands dirty in that space. It's kind of how I started. That's,

Tim Bourguignon 6:58
yeah, this is awesome. I, I wonder why my role I had the looking better. All those things that did we're not we're not created to help us learn programming to learn your skills, but actually told us so much in in getting around with computers, finding your ways finding information, and then using this information to create something for ourselves and just scratch your own itch is and at some point, realize, oh, but this applies to something else. And then we can use it in different contexts. And I wonder if this is still happening for kids nowadays? Oh,

Una Kravets 7:33
must be. I think that there's a lot of tools now that specifically teach code like Scratch, which I hear is very big kids must love scratch. I hear great stories about it. And there's other tools and games. But there's probably also some things are tangential, that don't necessarily one to one relate to programming that get you into like game building, like Minecraft even that's very technical enough to think about world building. So I think that there's a lot of things today and more than ever, I think we're just going to have more and more programmers in the world. As these become a part of our day to day toys. Like I know in the in the 80s. That was one of the big reasons why there's such a big gender discrepancy between girls and boys is because computers were a toy for boys back in the 80s and not for girls are marketed towards boys. And so that's why I think Neopets was such a big change because it was marketed towards girls and a lot of ways where you got to have a little pet friend, and you got to build a little pet page and you got to dress it up. So I think that that was one of those tools that brought a whole different world of developers into our community, which I'm very grateful for.

Tim Bourguignon 8:43
Sounds like it and you have a big smile on the face while you're explaining all this.

Una Kravets 8:47
Apparently they're revamping it. Like I saw yesterday, that there, there's like new management and they're planning on launching, like a new Neopets and in two days so that we're recording the summer. I'm really excited.

Tim Bourguignon 9:01
Wow. Okay, we'll have to look. Look into this after the show.

Una Kravets 9:05
Yeah, I haven't launched it yet. But I'm very curious to see what it's gonna be.

Tim Bourguignon 9:10
Okay, so this was just what just with big air quotes, you putting your finger into development without knowing it? At which point did you realize that you were doing it that this was starting to become software development?

Una Kravets 9:26
Yeah, I think it started really, as design. I was thinking of it as graphic design. I was thinking that's what I wanted to do because I liked art. And I liked creating. And I always thought that I wanted to be a graphic designer. And my parents came to the US as immigrants. They're Ukrainian, they moved as refugees. And they always told me that I can't I can't be an artist as my job designer. So I of course was rebelling and wanted to only do art and graphic design as kids class like. So, when I was in high school, I took a lot of design classes. And we had this program where you can get college credits by doing a series of courses. And I did three years of this intermediate design program where we learned Photoshop, Illustrator flash, like a lot of flash programming in that course. And it was also introduced to the way comm tablet. And I loved that class I just shown in that class, and this was when I was 1617. Around that time I was taking this class, it was so much fun, I built so many flash websites, I loved writing ActionScript, I loved like making little games, I made a bunch of portfolio websites in Flash. And that was something that I loved doing so much that I wanted to go to college for graphic design. And I ended up going to college doing a double major in graphic design and computer science, which at the time was like the perfect combination. But when I was in school, they were sort of looked at really differently, because front end development, in terms of curriculums wasn't really a thing that was catching up yet. So there was graphic design and the graphic design program split into two where you could do packaging, print design, like that sort of physical design. In that class, it was really focused on print, we would do book projects, packaging, that sort of thing. And then there was a newer media design class, I had animation as a big part of it. That started teaching you programming with like CSS, this is when when CSS three was just about to like really come out. And that was awesome. Because I had an professor, who was also working in the industry at the time, what is it called? That kind of Professor not like a tenure track professor, but the the adjunct professors, I don't know if that's a thing in other parts of the world. But essentially, it's a professor who works and then comes and teaches a class or two. And they didn't know all the answers, but they did know about CSS tricks. And they did know about where to find the answers to things. I think that that like got me really hungry to learn more and more and more. Because there was so much to learn at the time, like font family, and all the extended font face features and gradients and animations like keyframes renew. So that was like just my brain was going a million miles a minute. At the same time, I was taking these computer science classes, which was the total, like other end of the spectrum, where it was, like Discrete Mathematics where it was our web development class. And I say this in quotes. In my computer science program was cold fusion. Oh, okay. Makes sense. It's web development. But it's not the kind of web development that I first saw myself doing. And another cool thing about having this adjunct professor is he really introduced our class, and it was a small class to community. So when I was 18, or 19, my eyes were open to this world of meetups and local community meetups in my city, which was a huge moment, I think for me, because for me, I think community is one of the biggest joys I have in the work that we do. So I started going to meetups and what maybe my first meetup it was called free fresh DC. There was a talk from this company, and they gave a talk about how they broke the Chrome browser, how they were experimenting with these 3d CSS transforms. They built this like storybook game. And it was that moment, I was taking notes and I was like, oh my god, like there's a word for the thing that I want to do. And it's front end development. It is the mix of design and logic, like there is a there is this thing, and my eyes were open. And after that I talked to them and was like, How do I intern for you? I immediately just blew my mind. I did end up interning for them. I got super involved in the community. I I did a ton of internships that throughout college, and I ended up starting a meetup group to when I was still in college because I wanted to start one for SAS. But yeah, so I think community was a big piece of it. It didn't hurt that nobody carded us there because you know, the drinking age is 21. So go and have a beer with our professor. I don't know probably not great, but it was fine. It was fine. And learn left the community and it was it was where I learned more probably than I did in school about the actual work that I wanted to do in the web space.

Tim Bourguignon 14:58
It makes so much sense I I'm almost envious of you finding community at that young age or maybe with air quotes.

Una Kravets 15:06
I just Yeah, no, I think I was very lucky.

Tim Bourguignon 15:09
Yeah, I discovered it only after my studies when I started working. And it was only after a couple years, I must have been 25, or something like this. When I finally discovered, oh, there's some such thing as communities, and then it open a world like you said, and when I talk to my sister, who was who's a lawyer, when I talked to her about meetups, and so she opens round alleys and words. Don't have that.

Una Kravets 15:33
Think it's a little different to my husband's also a lawyer. And is that the same kind of meetup?

Tim Bourguignon 15:40
I, there barely is one meetup like this. So it really Yeah, it's very special in our industry. One thing I wanted to come back to is, how did it feel to finally find this word, or this this term front end development?

Una Kravets 15:55
It felt kind of like a pretty big relief. Because as I mentioned, growing up, I really wanted to do something creative and visual. And my parents were just really not having it. They tried to convince me in every way that this wasn't the way there was, No, there wasn't, there are no jobs in graphic design, have you heard, I think that they just really didn't know. And you know, they coming from another country, they just want the best for their kids. So I think for me seeing something that was really technical, but also super creative, and really visual. made, it all makes sense. And it gave me a lot of excitement and passion to keep working in this space and to, to continue to like foster this interest. And I started building experiments in code pen, I started like, making stuff and writing about it. And that's actually a probably a pretty big reason why I am where I am today is because I started just sharing the things that I was learning about and building tools for the things that I was solving. And I did all that when I was, you know, 19, I gave my first conference talk when I was 19. Got really young.

Tim Bourguignon 17:13
This is awesome. Kind of a difficult gymnastic. But did the job that you have today is the thing that you imagined when you were 19 when you discovered this front end development and finally put your finger on this on this term you had been looking for? It's okay. This is what I want to become later. Is this what you became

Una Kravets 17:36
this job when I was 19, I didn't even know existed and is probably better than I could have imagined as a job could be. Because now I get to actually work on the platform that gets me so excited to build for. And it's such a meta role, where we get to help define what the platform looks like and what the code is that you can use, what the features are that you can use to build these experiences, which isn't something I even realized was an option when I was 19.

Tim Bourguignon 18:10
This is awesome. I'm so jealous. It really you have a big smile on your face. And you really seem to have found the place where you want it to be you knew it. They knew this place existed. And you were searching for it. And at some point. Whoa, it's there. And yeah, suddenly, we're open. So how did you navigate this word? You said you were learning in the open? Yes, learning with open sores cetera? How did you how did you navigate this time between 19? And now?

Una Kravets 18:42
Yeah, I mean, a lot has happened. So yes, I was definitely learning in the open, I was looking for all the opportunities that I could from my community. And I didn't really have like a mentor per se, but I just made everybody my mentor everyone. In my community. I worked my this internship at this co working space. So I got to see a lot of different types of work there. Which was great. And I just started kind of taking public notes as my blog. So as I did different types of jobs. I did one summer internship, which, which was another speaker at this meetup and I went up to them and I was like, How do I work for you? And they were like, You're too young, but come back in two years. And here's how here's some books to read. So I read the books, and I applied for the internship, like a year and a half later, when I was doing that job, they had this program where you build something with their front end team, and like kind of shipped it. And as I was building it, I had the opportunity to explore new content management systems like craft CMS just came out. So I wrote one of the first canonical posted like how to set up craft on your Mac device. They linked to it from their documentation. And that was a cool I was like 20 years I was like Oh look I got into someone's documentation. But I was one of the few people who was exploring it because I got the option, the opportunity to do that as an intern. That was really fun. I wrote those notes for myself. So I would remember how to do it next time. That's why I wrote the blog post. And I started doing that as I was playing with different API's with color frameworks, with animations, just kind of like taking these public notes, and then would share them. And nobody read my blog for the first few years. But when I started going to events and getting more in the space, and as I mentioned earlier, I also started a meetup group, I started to do more work with people to kind of grow my presence a little bit. And people thought that the stuff I was writing about was interesting enough to start sharing. So then people started to read the blog. And then I started getting invited to conferences. And, and that's kind of how it started. In that, I don't know, I keep saying, there's, there's so many things we could talk about.

Tim Bourguignon 21:07
Should you try to grow your presence? What was it intentional?

Una Kravets 21:11
It really wasn't intentional at first, I feel like I discovered this life hack. When I was young, which was, I love to travel, I love to travel, something that gives me so much energy. And I learned that there's this thing where you can apply to speak at a conference, and then they pay for your travel. So that to me, it was like, Oh, you'll you'll fly me to Australia for free. So I can give a conference talk to these nerds. Awesome. So at the time, I was also doing a, I was really pushing for design an open source. And I was working at IBM after college where we had this design group. And the design group was consisting of UX designers, UI designers, service designers. And then I was the developer among designers. So it was a friend developer and I was working with these designers. And I was very interested in open source, open source tooling libraries, like I worked in open source, I put out a couple of tools here and there. Whenever I was like building something new, I'd kind of save in shirt. And I started getting some of the designers involved in open source trying to get more presence in that community. It was it was hard. There was an open design group. But that was hard. And that was things that I started talking about in the early days of speaking. Since then, I feel like I've gone the gamut, right talked about blend modes in the browser, and like how to create Photoshop effects in the browser. I talked about image optimization and performance. I've talked about CSS a lot. I've talked about SVG, like I've, I've now been speaking at conferences for 11 years. But I didn't intentionally, like go into that path as a career path. I didn't you know, Dev Rel is something I've been doing professionally for four years now. But I've been working in the tech industry for over 10. So it's not like a dove wrote right into that. It just sort of happened. On you. It grew on me. Yeah. But I loved not just the tribal. When I was there, the community, I loved hearing people's stories and what they were working on and how it was different. And the kinds of technologies that we're using. And that was like, my, one of my favorite parts of the tech industry was the people.

Tim Bourguignon 23:34
How did you navigate the problematic, that problem of coming back from a conference with a to do list long, at least like three arms with bullet points, and you will probably you know, you're going to tackle maybe three of those until next conference? How do you how do you deal with it?

Una Kravets 23:50
That was the most fun, I would go to conferences, and I would learn about like, you know, web AR Web VR, and I be like, Okay, I want to build something. And then if I find a buddy who wants to build something with me, and we collaborate, I'm more likely to do it. So that's always a good option, or I'll start blog posts. And to do lists are like a big thing for me. I did a public to do list for two and a half years, where I created like a whole CLI tool, where I had like a daily to do list thing and then a weekly review, and it's all public. And that was like a another thing that I would share is my open source to do list. And that was fun.

Tim Bourguignon 24:33
Commenting on your to dues and what you completed and didn't think people would

Una Kravets 24:36
people would totally PR my to do for me.

Tim Bourguignon 24:40
Okay, look at that. Did that for you?

Una Kravets 24:44
Yeah, well, they add stuff to my list. Okay, more than take it away.

Tim Bourguignon 24:51
Okay, so, at some point you joined Google. Was that your first DevRel role or had you been in DevRel before

Una Kravets 25:00
This is my first official Dev Rel role at Google. And the way that I came to this path was sort of, well, in my career, I was doing UI engineering, UX engineering, I did a lot of work in design systems. So what initially happened was at Google, the material design team was looking for a design advocate. So they reached out to me, and I ended up getting a role on the material design team, as a designer, developer advocate for material design, which was really cool. I had a lot of ideas for the product. But ultimately, I wanted to move into web because I wanted to work on web platform. So that's, that's kind of how I ended up at Google. It was through material design as a developer advocate. And then I found, I found a way over to the Web Chrome's side of things, and I've been there ever since.

Tim Bourguignon 25:58
Before you there, just in terms of terminology, we've used developer advocate and developer relations are either the same, or are the

Una Kravets 26:06
same. Yeah, at Google, we call it a developer relations engineer, because it's supposed to help to align to the engineering side of things, then the term Developer Advocate, but it's really the same word, the same term.

Tim Bourguignon 26:20
Okay. So at some point, you finally managed to transition toward the dev side dev tools. How do you how do you start there? How do you make your your displays your own start working with advocating for it? How did it look like?

Una Kravets 26:38
I think it's important to Okay, so I know that developer advocacy has a job now that you could just go right into, but I worked in the industry for six years before doing that as my job where I was working on products. So I mentioned I was working at IBM, I also worked at Where did I work at like, look at my I worked at Digital Ocean, I built a design system there, I built one of the first design systems at IBM called carbon, early days of that design system on Bluemix. There moved in the cloud space, for a while I was in cloud. So then Digital Ocean. And then I was the Director of Product Design at a company called bussel. So in all these roles, I was doing some sort of UX engineering, or you engineering or design systems type work, where I'm building components, I'm working in React and Graph QL. I'm working in systems that scale, especially with design systems, trying to improve performance trying to decrease development time. So all of this gave me a strong understanding of the problems that developers have when it comes to working with styles, and CSS abstractions and design systems and what they run into. So I think that that was a really good baseline for then shifting to developer advocacy, where my role was helping make it easier for people to use material design, and now the web platform for CSS and tooling. So now, it's how do we support developers by adding the features that they need? What is missing from the platform? And how do we give them the tools that they need? So specifically, Chrome Dev Tools to debug those platform capabilities, the platform issues? I think it was really important for me to have that experience on the ground, before going into advocacy, because I had a better understanding of what to advocate for, and had a lot of opinions as, as I mentioned, I was writing a lot of thoughts on the platform. So yeah, I think that I got here, through some of that just experienced frustration like No, getting a sense of how I wanted to change things. And that really helps. And now the work is very different. Because I'm no longer building components. I'm no longer like day to day working on a product that is going to ship and work. Well I am but it's the web. platform. It's a platform team now, instead of focusing on like product features, which is just a very different type of work, and it's much slower, because everything that we do goes through a standards process. So it is pretty slow going we come up with a problem a solution for it, you write an editor's spec of what it might look like. And then you go through a lot of discussions and feedback. I'm in a few community and working groups now where there's stuff that I've been working on for three years, that's just now shipping their stuff that's not even shipping that we've been working on for three years. But it's okay, because I know that it's important to get it right. You can't really revert when you miss the platform very easily.

Tim Bourguignon 29:53
That's true. It must be quite an interesting experience to have on the one end, the chrome way or the Google way of doing things, releasing multiple times a day, new features and building incrementally. And then on the other side, the standards moving Yes, very slowly and, and really vetting every customer in every design document, just to get it right.

Una Kravets 30:18
There's literally conversations on if we need to comment here or not, and the merits of the ordering of those properties? And if it's a slash or a combo, or nothing, or Yeah.

Tim Bourguignon 30:28
How did you stumble into working for those coming to you.

Una Kravets 30:33
So I've always been really interested in being involved in the working group, because I, even before I joined Google, I saw that as like the people who get to make the decisions on wetlands in the browser. So when I joined the material design team, one way that I was able to work on it was proposing some new color features. And so that included, trying to get more of the features from SAS, like color contrast and color mixing into the platform. So you can create dynamic color palettes, and I thought that, hey, I work on material design, they must think that's important to write. And also some angle things I was really into Houdini for a while. So that's another area of CSS work. And so I joined the working group through that lens of design systems, and worked in that space for a while, moved over to Chrome, there's also some newer community group that's come out called Open UI, which is all about components. And we just shipped popover working on, like, how do you style a drop down menu? Why can't you do that still in HTML and CSS, like That's so frustrating people keep breaking the web, to make these inaccessible drop down menus, they can't style them. So the point of that group is to figure out how we could resolve that and resolve components on the platform. So it's, it's not really CSS, but it's not purely HTML, it sort of sits in between both. And it's a community group and several working groups. So I'm involved in that as well. But that essentially just means that to get resolution, the incubation is done in the community group. And you go to a working group, whether that's the white working group for HTML, or the CSS working group for CSS, to get resolution on these proposed solutions.

Tim Bourguignon 32:20
Would you mind explaining how the process looks like? So I assume somebody has an idea, and then there's a first check of the idea, then there must be different implementations. And then you check the implementations and see which one should be your nothing. But I'll let you go. How is that process does that process look like?

Una Kravets 32:40
So it depends, but for the most part, right now, both of these groups, the CSS Working Group and the Open UI community group are both on GitHub. So if you had an idea, you could open an issue, explaining your problem explaining a potential solution, possibly. And then there'll be a discussion around that, when it gets to a decent place, then you would have an editor or you would maybe do it yourself. But if you're new, you probably aren't writing the specs, it's just hard to get into the system and write it the correct way. You'd have somebody write out a draft once you have a resolution to write a new spec level. So this might be something like the first level of a spec, like CSS nesting level one, where it could be like CSS containment level three, and that'd be like the third level of spec the next version. So if it's a brand brand new idea, it would either be a new spec draft, if it's an idea on improving an existing editor's draft that's being worked on, then it would get added to that. And this is something that you can definitely get involved with, because it's on GitHub and see the conversation and respond to issues. If it's a working group, you have to either join through a company are being invited expert, which if you are participating in this space, you can get that status. If it is a community group, like Open UI, you don't need to have any of those designations and you can just join. So you can join that through the W three. See, it's a similar process where there's discussion, you add things to the agenda, there's weekly meetings, a lot of talking, it's a lot of talking.

Tim Bourguignon 34:18
Is there some point, some kind of proof? I mean, explain why I'm thinking about this I come from from a medical background, and they work on DICOM communications, which is one of the standards for exchanging medical information. And one of the process and changing DICOM. The DICOM standard was actually really making the implementation of the of the of the standards and we had to create a different implementation of the standard than in a different third party concurrent, just to show we managed to build it as well, and it's working. And until then, until this was proven we could couldn't go forward with the standards.

Una Kravets 34:54
There's different intents so as a browser, there's an intent to prototype there's an intent to ship and you submit an intent when you are Working on seeing if a feature is feasible. So that would be an incentive prototype. And then you could build it into on Chrome OB Canary. So it'd be the experimental dev version of Chrome, and see if it works. If it's performant. If it doesn't break other things, that's always a fun surprise. Like, recently, we were working on animating discrete properties, which means animating to and from display none or animating in popovers, or things like dialogues. And we thought, Oh, we can add display to animation. But somehow, a lot of websites broke, even though that's totally invalid. Right now, they still had display in the animation. Or maybe I don't know, anyway, it was. So there, there was some work that had to be done there. Like once you do a test of, you know, top, X 1000 websites, you can see if there's going to be an issue. And then you go back to the drawing board, and maybe make some revisions and prototype with those. And then as Deborah, we get to build demos, and find bugs, because we're usually some early adopters, and build stuff to test these tools, which is always fun. That's the fun part of Deborah.

Tim Bourguignon 36:16
Just for the sake of argument, if you had a brilliant idea, and you realize it's breaking everyone the web, and there's no other way to to make this idea, but it's really brilliant. How would you go about changing or making change is, or making people change their websites is their wishes.

Una Kravets 36:38
Oh, that is just that's really hard to do the web. You can't backwards break the web, which is one of the biggest challenges for things like components, I was involved in a component redesign at Google, where it was a collaboration between Microsoft and Google for Chromium browser, so edge and edge and Chrome and other chrome based browsers, where we did a redesign of the form controls. So things like inputs and progress sliders, and we couldn't move them a single pixel in that redesign, because of backwards compatibility. And shifting these layouts and diffing tests would break. Same thing with new features. That's why we can't just expand the select menu that already exists. Like we can't expand the select component, we have to make a brand new component. So call it like, select list or select menu or something else that doesn't already exist. So you can add on to the web. But you can't really change existing features very easily because of these breaking changes and issues. This is a lot of

Tim Bourguignon 37:48
I feared that would be your answer. Yeah.

Una Kravets 37:50
That's something new, like the pop over attribute. And even if you do test it thoroughly, things could pop up like there was there was apparently like a pop over feature on some old version of bootstrap if you ported it over incorrectly. And we had a bunch of like, open issues or people saying that they had breakages. And some older websites because of that attribute naming, because now everything is namespace, right? So now Bootstrap is namespaced. Very specifically, and most systems are but popper was broad enough that we didn't catch it the first time. And then there was this edge case edge case that popped up. You're always gonna I don't know. It's hard.

Tim Bourguignon 38:32
Yeah, sounds like it's just a nightmarish combinatoric of so many websites, and so many combinations of problems that could occur. Yeah, something is likely to happen. During this whole discussion, you had a giant smile on your face, it seems like you found the perfect spot for yourself. Did you see yourself staying there for years now? Or are you looking into the toward your horizon on to something else?

Una Kravets 39:04
I hope so I think that there's a lot of work to be done in the CSS and UI space. And the tooling space, I think that there's a lot of opportunity, the scale of this type of work just doesn't really exist anywhere else. The ability to make the web platform work better for developers smoother for developers, and ultimately, for users. I just can't imagine doing something more impactful than this. I think that this is where I need to be right now. So that feels really good. And that makes me feel like I'm in the right place. Looks like it. It's also fun, like DevRel is fun. You get to do a variety of things. So I was mentioning like we work on demos and work on specs, but we also get to write about things that are landing we get to explore the new stuff. We get to go out and give talks about it. That's one of the reasons I get Do events now as a part of my job rather than my side job, which, when I was doing events when it wasn't my job, I didn't have weekends, I was just like, all my weekends were spent in coffee shops writing talks, I had no life. Now it's, it's more a part of my job. So even though I still don't have a life, I could do more of it.

Tim Bourguignon 40:24
Fair enough. Yeah. Could it be tough travel probably.

Una Kravets 40:28
So that's fun. There's a lot of different types of work they get to do. It's like a mix of software engineering, product management, content, is everything.

Tim Bourguignon 40:39
It's everything. If you ever been if you had a bunch of late teenagers in front of you, what would be the one advice that you would like to give them in order to, for them to choose their paths start a career, is there something that you would like to tell them,

Una Kravets 40:56
I think that my biggest piece of advice would be to one start a blog. So just just start it. And it might feel like you don't have a lot to say yet. But if you start to write down the things as you're learning them, and as you're exploring them, especially if you're kind of staying on top of what's new, it's gonna give you such a head up, like up, especially as you're applying to jobs, because you can show a history of thoughtful progression. And the second would be to get involved in your local community if possible, or virtual communities, because now there's a lot of discord groups, there's different virtual communities, if you don't have a physical local community near you, that can introduce you to people who are nerdy about the same things that you are nerdy about and excited about the same things that you are excited about. You can bounce ideas off each other, discover new things, see what they're working on, share what you're working on. That is what probably helped me most in my career is that exact pursuit of finding people who cared about these same things. When that kind of community didn't exist around me, I created it. So I started the SAS meetup in DC when I moved, I started another meetup in Austin, where it was another city they lived in the US. So either join community, make community find community, blog stuff, experiment, play with what interests you, whether it's crypto or whether it's UI front end, whether it's building frameworks, whether it's just being open source, like there's a lot in the dev space, whether you're a musician or into fashion, like there's a lot that you can hook into, to find your people

Tim Bourguignon 42:38
in the into that, you know, it's been fantastic. Thank you so much for giving us a glimpse of your life so far. And I'm sure there will be many, many more stories to tell in the in the years to come. Thank you.

Una Kravets 42:50
Thank you so much for having me. This is fun.

Tim Bourguignon 42:52
So where would be the best place to continue discussion with you?

Una Kravets 42:56
You can find me on the internet. Probably Twitter is still the best even though I don't know if that will exist by the time this podcast goes live. So my handle is Yuna. That's at una. It's my name Yuna. Una. Also, I don't know, you can join me on the threads. If you want, you can find me on blue sky. You probably had to search by name unit Kravitz. I think I'm unit crab on those. But I also have a website it is unit dot i m and I post all of the talks they give on their things I'm writing. I write for a bunch of stuff on Google properties like developer.com.com web dot Dev, but the best place is probably Twitter. My website unit out I am. I'm trying to get better at LinkedIn because that's for where it seems like all the younger people are.

Tim Bourguignon 43:51
It's funny, I was trend transforming itself used to be all the old people on LinkedIn and the younger ones on Twitter. But now they're coming over. Okay, and we'll we'll add all these links to the show notes. So you don't have to write them down. Just scroll down then you'll you can just click on them. Anything else you want to call a plug before we call it day.

Una Kravets 44:13
Um listen to this podcast. It's pretty cool. It's very relaxing. I think it's a nice walking podcast.

Tim Bourguignon 44:24
It doesn't eat well, doing the dishes, doing any kind of stuff where you don't have to pay real hard tension. You just Yes.

Una Kravets 44:32
You like podcasts and you like CSS. You could listen to the CSS podcast, which is a podcast I do with Adam Argyle, and it's a it's full of CSS goodness.

Tim Bourguignon 44:42
Well, I link to that in the show notes as well. Thank you so much. Thank you. And this has been another episode of developer's journey with each other next week. Bye.

Tim Bourguignon 44:53
Thanks a lot for tuning in. I hope you have enjoyed this week's episode. If you liked the show, please share rate and review. It helps more listeners discover those stories. You can find the links to all the platforms the show appears on, on our website, DevJourney.info/subscribe. Creating the show every week takes a lot of time, energy, and of course money. Will you please help me continue bringing out those inspiring stories every week by pledging a small monthly donation? You'll find our patreon link at DevJourney.info/donate. And finally, don't hesitate to reach out and tell me how this week story is shaping your future. You can find me on Twitter at @timothep or per email [email protected].