Rachel Andrew === Paige: ~Test, test, test.~ Rachel: ~Test, test, test.~[00:00:00] Paige: Hello and welcome to Pod Rocket, the podcast that is brought to you by Log Rocket. Log Rocket helps software teams to improve user experiences with session replay, error tracking, and product analytics. Try it free@logrocket.com. Hello everyone. I am your host today, Paige Kneeing House, and I am joined by Rachel Andrew, the prolific writer, speaker, and currently the~ content lead,~ content lead for the Chrome dev rail team at Google. Welcome, Rachel. I Rachel: Hi. It's really great to be here. Paige: we're really excited to have you on. So maybe for those of us who are less familiar with your work, you could tell us a little bit about yourself and your current role. Rachel: Yeah, sure. So as you mentioned, I'm content lead for Chrome Web job Fibrillations, so that means that my day job is. Really about creating resources and documentation for web developers. ~Uh,~ we've got two websites. We have web dev and developer.chrome.com, so we publish lots of material there. ~Um,~ for [00:01:00] developers, I'm also a CSS working group member. ~Uh,~ so I represent Chrome in the CSS working group. ~Um, and~ I've had a sort of fairly long history working on the web platform and with open standards is sort of the, the thing that I like to ~sort of~ focus on. ~So, yeah, so I,~ I definitely get excited about new browser features ~and,~ and especially new CSS features ~and,~ and really enjoy being able to share that, ~uh,~ with developers, ~you know,~ through the work that I do. Paige: That is fantastic. So one of the things that we wanted to talk about that you've been working on a lot lately is something called Baseline. So could you tell us a little bit more about what baseline is and how it's useful for developers today? ~Um.~ Rachel: ~Yeah, so,~ This sort of, there's a sort of thing that's very common, a very common theme ~in,~ in when we're talking to developers. ~Um, you know,~ really before I was at Google, ~you know,~ so that would come up all the time is when can I, ~you know,~ use this feature? When is this sort of safe to use as it were? ~Um,~ or is this something that we should just be playing with and experimenting with, ~you know,~ or can we actually use it in production? ~Um, and,~ and the research that we do at Google, we hear this all the time, is ~sort of a,~ a top problem that developers have.[00:02:00] ~Is,~ is how to know when something is as ~sort of~ ready to go in their projects. So the idea of baseline was to start grouping features and saying, ~right, you know, this,~ this sort of collection of things. ~Um,~ because not all, ~you know,~ some features are very granular. ~You know, ~you can ~sort of.~ You don't need to look at the property name, does, ~you know,~ does that actually work? Other things actually need quite a lot of stuff to function. So grouping features and saying, ~you know,~ this group of features is in or outta baseline, and baseline at the moment is defined as the last major browser version and the one before. So essentially if it's, if a feature is. Being shipped ~in,~ in the, in that sort of two, two browser cutoff, we're saying this is probably something you could use in production. So that rather than every web development team having to go around kind of feature by feature and think, ~you know,~ can I use this? Can I use this, can I use this? ~Um,~ there's this sort of line in the sand, ~um,~ this sort of advantage of that is that, Anything that provides things for developers. So if you are a, ~um,~ say a framework, you [00:03:00] can say developers, everything their framework uses is in baseline, and therefore they don't have to check, oh, if I use this framework, will I then find that, oh, things don't work in Firefox. ~Um,~ or things don't work. ~You know, it's, it's,~ it's ~sort of~ a nice line and also, ~you know,~ writing articles ~if,~ if, ~uh,~ I think, ~you know,~ quite often, ~um,~ You'd be reading an article that, oh yeah, this solves my problem. ~This,~ this is exactly what I need to know. You get halfway down and the author starts using an experimental feature. You're like, ~well,~ that's no use, ~you know,~ I can't use that today. ~Um,~ so the idea being that, ~you know,~ if I'm publishing an article, I can say, everything in this article is part of baseline. So if you follow it, it'll give you what you need to know, but also it'll give you stuff that you can actually use right now, not something that's, ~you know,~ only in Chrome Canary right now. Paige: ~Mm.~ So I believe that Chrome releases monthly, but how often do the other browsers release like Firefox and, ~um, well~ Edge I think is run on the Chrome V8 engine, but you know how. How frequent is it that there will be features that are not going to come out for one very [00:04:00] specific browser that people, ~you know,~ need to wait for, ~I guess.~ Rachel: ~Yeah, so I mean,~ so Chrome and Firefox both release monthly now. ~Um,~ and Safari has, ~um,~ a slower cadence of these sort of, ~you know,~ their major versions. But actually recently they've been doing very large releases in, in sort of dot releases. So they're actually becoming more like major versions now.~ Um,~ and so they're doing quite frequent. They're not on the. ~Sort of~ regular predictable cadence that, that Chrome and Firefox ~have,~ have locked themselves to. But there are, ~you know,~ very frequent, ~um,~ safari releases coming through. ~So, you know,~ all three major engines are releasing quite quickly. ~Um,~ so ~there's,~ there's kind of new stuff happening all the time. ~I mean,~ of course there's always gonna be features which, ~um,~ aren't yet interoperable, aren't yet available across all browsers ~for,~ for various reasons. ~Um, And,~ and I think that, ~you know,~ that's really where we're going ~with,~ with baseline is saying, ~well,~ this collection of stuff is, ~uh,~ it doesn't mean that people can't use those features ~that, ~that aren't in there, but you know that if you're using something that's not part of baseline, it might need a bit more care and attention. ~So,~ and you can make that choice. You can say, ~well~ actually this is a progressive enhancement. It's fine if people don't have it. [00:05:00] Or actually we can poly fill this. ~You know,~ there's a good. Alternative way of doing this for the people who don't have support, but you're not having to do that for the entire web platform. You just, ~you know, you,~ you're able to just say, oh, it's, ~you know, this,~ this one thing that currently is only in Safari. ~Um, you know, I, I can,~ I can use that for those users ~and,~ and do a polyfil of everybody else or what have you. Paige: So that brings me to another question. How has it been working with other browser vendors? What is that like? Is there a lot of, is it a good process? ~Is it,~ is it difficult to get everybody together in the same room or to agree on what's the next thing on the roadmap that everyone should support? How does that go? Rachel: Yes, there's various ways that we work together.~ I mean,~ any standards process, ~you know,~ is involving multiple browser vendors. ~Um,~ so you know, on the CSS working group, there are representatives ~of,~ of all the browser vendors there, ~you know,~ it. Because a lot of stuff ~on,~ on the web platform, ~it,~ it's not necessarily that a browser doesn't want to do it, ~you know,~ it's not that the team are saying, oh no, ~we're,~ we're never gonna do this. ~Um,~ actually, ~you know,~ it might just be that it's [00:06:00] complicated in that engine to do it. It's actually gonna be quite hard to do that. So quite a lot of standards work ~is, is,~ is figuring out. Can we all do this? ~You know,~ so ~there's this,~ there's this collaboration cuz there's actually no point in doing something in one browser that's impossible for everybody else to do because we know that developers want things to be interoperable. ~Um,~ so yeah, and then, ~you know,~ we're working with ~other,~ other browsers ~in,~ in various ways. ~Um,~ this is that ~the,~ the Interop 23 project, ~uh,~ which aims to get a subset ~of,~ of features that we've selected aims to get them working. Across all of the engines. ~Um,~ so there's various things,~ you know, and, and,~ and you find ~if you,~ if you look at the dashboard for interop, ~um, you know,~ there are, every browser is somewhere lagging behind and somewhere in the lead, ~you know,~ and in the different features. Cause it's not just one browser's always out in front. It, it's quite varied, ~um,~ because of the different focuses. ~So, you know, we~ we're doing lots of ways of working together and that, ~you know,~ and that's cause everyone at every browser understands that. It has to be interoperable for people to actually use it. For most developers to use things. Paige: Yeah. So how do you prioritize what [00:07:00] is going to be on the roadmap and what's gonna be next? The next thing that everybody tries to support, ~um,~ Rachel: Yeah. So in things like interop and that, that process was a sort of open process of, ~you know,~ people suggested things. ~Um,~ and then there was a kind of a consensus building process, as I say. Any browser could veto something ~and,~ and it might just be that, ~you know,~ we just don't have resources to, to put on that right now. Or, ~um, you know,~ so making sure that we're not promising things that actually are impossible for whatever reason.~ Um, I mean, you know,~ you occasionally get features that, ~you know,~ various browsers have done, sort of big rewrites. ~Um, You know, um,~ Chrome did one fairly recently ~with,~ with rendering ng. ~Um,~ and there's a whole bunch of things that were ~kind of~ held up behind that process. ~You know, it,~ it wasn't, you know, you're sort of waiting for this big thing to happen, a bit like a refactoring of any code you say, ~right,~ we can't add any new features cause we've gotta do this thing. And ~so,~ so that was all going on and then a bunch of stuff was enabled. So a lot of that prioritization comes down to, ~you know,~ what's most useful for developers. But also what is actually possible for us to, to land, cuz there's no point making empty promises. We want to make promises that we can keep and that we, ~you know,~ there is actually a good [00:08:00] chance that we will get to the end of the year and have all these things landed. Paige: ~Sure,~ sure. So you said that baseline is ~kind of, uh,~ the last two versions of a browser, that's what you're saying constitutes that ~it,~ it is in baseline or not. So how often does baseline update itself? Does it,~ you know,~ say that, ~you know, every,~ every month or every two months, it goes back and checks what's new in the browsers for support? Rachel: ~Mm.~ Yeah, ~so,~ so the baseline will be a constantly moving line as. New things, ~um,~ come and then become ~sort of~ mature enough, they will then be ~part of,~ part of baseline. ~Um,~ so a good example might be, ~um,~ sub grid CSS Grid is going into,~ uh,~ Chrome, ~uh,~ very soon. And, ~uh,~ I think in won six, ~uh,~ there was the Inten ship and just went out. ~So, you know,~ we wait until Chrome one 18 and then that would become part of baseline because it's already, it's been in Fairfox ~and,~ and Safari for ages. ~So.~ At that point, we'd say, wow, ~that's part,~ that's part of baseline. That line is moving. ~Um, ~so what we're intending to do then~ is,~ is at the end of the year is to make a kind of static line of, this is [00:09:00] baseline 24. So we can~ kind of~ say, this is a static point in time. This is what is supported on the web platform right now. ~Um,~ if projects want to lock to a yearly line, then they can do that. They can say, ~right,~ we're gonna support everything that's in. Baseline 24, and then at the end of next year, we'll declare what baseline 25 is. ~Um,~ so there's ~kind of~ two things here. There's this moving line which moves every month, ~um, as,~ as things land. And then there's this a sort of a static, yearly cut. This is what the platform looks like right now. ~Um,~ and you can ~kind of~ depend on that. ~And then,~ and then we'll be able to see then ~what,~ what shifts between two years and things I think will be quite interesting. Paige: Nice. That sounds like a really interesting look back to see how much has been accomplished in the past year for the browsers. Rachel: Yes, I think people would generally be quite surprised at, ~you know,~ how much changes, um, yeah. Paige: Okay, so how, ~I guess,~ how can library and tool authors show their support for baseline? Because you said, ~you know,~ they can put some kind of a disclaimer or something into probably the GitHub README or [00:10:00] on their documentation sites, but are there other things that they can do to ~kind of~ help make Baseline more well known ~and,~ and say that they're adhering to those standards? Rachel: So we're working on ~a,~ a bunch of things.~ I mean,~ obviously, ~you know,~ anyone can ~kind of~ figure this out for themselves. ~They,~ they can look at what they're say writing about, ~um, and, and, and,~ and they can just state that. And we're also working on more kind of automated ways ~of,~ of doing this sort of stuff. We're hoping to get ~the,~ the actual feature groupings, ~um, for,~ for most things done by the end of the year.~ Um,~ and I think then there'll be,~ um, you know,~ an opportunity to do stuff like query that data dataset so you can ~sort of~ automatically say, ~right, this,~ this, all of this ~is in,~ is in baseline or test against it. And I think that's the sort of stuff that library lymphoma authors will be particularly interested in. ~So,~ yeah, so we're hope once we've got ~the,~ the feature group in complete, we're ~kind of~ hoping to provide more ~sort of,~ Sort of badges and automated ways for people to show stuff. ~Um,~ but yeah, so it's ~sort of, we're,~ we're ~kind of~ rolling this out at the moment. We've got stuff on some of web dev and MDN have started rolling it out on some of their pages. So that's ~kind of~ an ongoing process at the moment. Paige: [00:11:00] Very cool. ~I mean,~ that's. As a developer personally, that's what I love is just an automated workflow that goes through checks for me, gives me a check mark that everything is good to go and I don't really have to think about it. So having something like that sounds perfect. Rachel: Yeah. I think there's, I think there's masses of opportunity here ~to,~ to ~kind of, you know, ~create good tooling ~that,~ that lets people look stuff up, ~you know,~ have it built into, to other tools that we're using and so on. So I think there's yeah. Loads of opportunity there. Yeah. Paige: So I do have to ask because it's been around forever and it's ~sort of~ a competitor, but the more you talk about baseline, the less, I think that they're the same tool. How would you compare this to Can I use, which has been, I. The behemoth that everybody ~choose, you know,~ goes to, looks at, sees ~what's,~ what's supported, what's not. How would you compare that to baseline? Rachel: Yeah, I mean there's obviously some. Some similarities. ~I mean,~ I think ~the,~ the difference is ~that,~ that there you are looking up again, ~you know,~ a feature at a time. You're having, ~you,~ you're not able to have this full grouping. ~Um, I mean,~ we're hoping that actually we'll be able to incorporate baseline ~into,~ into, can I use or other projects like that [00:12:00] because I think they serve slightly ~different,~ different things. ~Um,~ I think it's a bit like the MDN compact data as well that you'll find on any property page in mdn if you want to know exactly when. A certain thing got into browsers and go back and figure out, ~you know,~ if you need to know that level of data, ~well~ that, that exists, you can do that right now. ~Um,~ baseline is much more just being able to say, is this in or out? And not worry about exactly when it got in, ~um,~ or, you know, and things like that. So I think that's the difference really. It's, it is just been able to have ~that,~ that broad overview rather than going feature by feature, which, ~you know,~ you can already do, but everybody's having to do that. Paige: ~All right. That sounds very good. Um,~ so let's talk a little bit more about the interop groups, because those are something that I'm not very familiar with and I'd love to. Hear like how you walk through ~some,~ some of the features that are newly interoperable for 2023, for instance. Rachel: Yeah, so I mean ~there's,~ there's a sort of, ~um,~ a bunch of stuff that ~has,~ has ~sort of~ recently got into browsers, things that ~have,~ have happened this year. ~I, I,~ I [00:13:00] write ~a,~ a post, ~uh,~ I write posts about things on web dev. So ~when,~ when we spot that things have actually landed ~in,~ in the sort of third engine, usually, ~uh,~ we try and write some posts. ~Um,~ I think probably the. The biggest thing that people have been excited about this year has been container queries. ~Um, you know,~ as someone who ~has,~ has talked about CSS for a very long time, ~um, it's,~ it's been the thing that people have asked me for the most. ~You know,~ why can't we do container element queries rather ~than,~ than media queries? ~Um,~ so now we can, ~um,~ size container queries, ~uh,~ are. In, ~you know,~ all three major engines at this point. And so you can query the size of a component rather than just the size of the view port. And I think so, I think that's ~probably,~ probably our biggest thing. But cause it, it is just such a useful thing, ~you know,~ when people these days tend to work in ~sort of~ component libraries and pattern libraries, ~you know,~ we're not building web pages as ~you know, sort of~ a thing. ~You know,~ you tend to work with components. And a, actually, there's a kind of common theme there. There's quite a lot of things coming into the platform that kind of speak to ~that,~ that sort of change in the way that we design websites. ~Um,~ [00:14:00] other things, ~um,~ media query, ~um,~ range syntax, which is just tweaked to how we, ~um,~ express media queries, which is quite interesting. So that gives you, ~um,~ a sort of ~a, a,~ a range syntax rather than the v verbose way ~of,~ of doing media queries. That's like a little tweak, but that's now in, in all of the engines. ~Um,~ and I think another sort of with CSS stuff, which tends you, what I talk about, ~um, ~of all of the new color spaces and functions. ~Um, so, you know,~ being able to use, ~you know,~ lab color and LCH and all of these,~ um, you know, sort of.~ More broad ranges of colors that we haven't been able to use that suddenly we can just use ~and,~ and ~uh,~ in all browsers, ~you know,~ it's amazing. ~Um,~ so yeah, I think all of that stuff ~is,~ is really exciting and, ~you know,~ seeing all of that landing in browsers so quickly, I think it's quite surprising to people. People think that, oh, ~you know,~ it'd be ages before I can use this stuff. And actually ~that ~that's not the case anymore. Things just are appearing so quickly. Paige: Yeah, it really seems like the floodgates have opened lately for css. It's having a moment. Rachel: ~Yeah,~ yeah. ~There, there's,~ there's tons of stuff.[00:15:00] ~Um, if, if,~ if you wanna play with the new CSS color stuff, ~um,~ a colleague of mine, Adam Argyle, has released, ~um,~ a little tool called gradient.style. It's the URL gradient.style, and it's like a little gradient generator, but it uses all of these new color spaces. ~Um,~ and so it's a really good, ~um,~ way just to ~kind of ~experience ~what,~ what you can get, ~um,~ with that. So ~that's,~ that's a cool thing to play with. Paige: Oh, very cool. We will definitely have to link to that and I'll have to take a look at it after we get off this call. So I guess one of, ~um,~ one of the questions that I have is ~how,~ how do you keep up with all of the new features that are hitting the browsers? Do you have to dig deep into their documentation? Is it something that you have some sort of news alert set up for? How do you. Keep abreast of ~all these,~ all these new changes that are coming at what seems like a faster and faster pace every day. Rachel: Yeah, well, it's kinda my job so that, you know, I think, I think if you are, if you're a web developer trying to do your job, which is building applications and you're having to keep up with this stuff, ~it,~ it's a lot of work. So I think one of the things that, [00:16:00] that. I can do, and my team can do is actually do that for developers,~ you know?~ ~So, um, you know, I,~ I write ~a,~ a monthly post ~on,~ on web dev, which just highlights the key things that are coming to not just Chrome, ~you know, all, all of the,~ all of the browsers. And so ~I'll, I'll,~ I'll try and list the key things there, so that, that's a good way for. For people who don't wanna spend their time digging around, ~um,~ to keep up. ~Um, but yeah, I mean, I think, and,~ and, ~you know,~ follow the people who work ~at,~ at browsers, there's quite, ~you know,~ the dev rail teams ~for,~ for each browser ~are,~ are always useful people to follow on various social media. ~Um,~ Because we all get excited about various things ~and,~ and we're happy to share them. ~So, um,~ but yeah, I think it, ~you know, ~it isn't always easy to keep up. ~Um, and,~ and that's why, ~you know,~ I've started publishing this stuff to try and, ~you know,~ because I spend my time figuring out what is happening. ~It's,~ it's great then to be able to give it in ~a,~ a nice little synopsis. ~So,~ yeah, ~so, you know,~ head over to web dev and at the end of the month ~I, I,~ I try and write ~a,~ a roundup of the things. Paige: ~For, so for, um,~ for things that aren't yet supported by all of the browsers, is there anything that folks can do to either make the browsers aware that these things, that they want these things in them? Or are there petitions or online ways of[00:17:00] ~kind of~ helping push things up? ~The,~ the priority list. Rachel: ~Yeah, I mean, ~I think if, ~you know,~ a lot of the browsers have got ~sort of ~open bug trackers. You can go and star the bugs and things, but I. ~You know,~ I always say to people, make sure you're actually talking about this stuff and writing about it and,~ you know,~ make, making a bit of noise about things that, that you're keen to see, because that's often really important, ~you know?~ Cause I think ~as,~ as we're looking for things, say for the Intraop project ~or,~ or just trying to get a sense of what is important to developers, that kind of community noise and interest ~is,~ is something that we're looking at,~ you know? Um,~ Cuz ~we~ we're building browsers for developers ~and,~ and for them, ~the,~ the end users that we're building sites for. So that matters. ~So, and,~ and generally, as I say, the dev roll folks ~from,~ from most browsers are, tend to be around and are always happy ~to,~ to chat about the use cases. ~Um,~ and certainly with CSS as well, the CSS working group. ~Um,~ Work is all ~on~ on GitHub. ~Um,~ and so with things that are still in a sort of developing stage, the specs are still being developed. ~That~ that's somewhere where people are [00:18:00] very welcome to come and post their use cases and say, this is something I need to do. ~You know,~ how can we do this in css? Is this something that, ~that ~that could be specified because, ~you know,~ we're bringing out new things all the time ~and,~ and ~it's,~ it's in service ~of,~ of what developers need. Paige: Can you give us any ideas of what's coming next for baseline in the working groups? Rachel: ~Um, well, I mean,~ I guess it, it's really, it's those things that are ~sort of~ coming up to be in interoperable. So I think I mentioned, ~um,~ subgrid, which is, ~you know,~ coming ~to~ to Chrome. Fairly soon. So though that's a feature that hopefully ~we'll~ we'll see soon, ~um, in,~ in baseline. ~Um,~ there's, ~uh,~ soon that I find quite interesting. There's app property, which allows you to specify, ~um,~ Do ~sort of~ type checking on CSS custom properties, ~um,~ which can just make your CSS a lot more robust. ~Um,~ that is something which is part of the Interop project, so hopefully it's not yet in Firefox and hopefully it'll become part of Firefox due to ~that,~ that. So there's ~sort of~ a couple of things. Let's say the things that are in Interop 23 ~are,~ are good to watch because they're likely to end up [00:19:00] becoming interoperable. ~Um, so yeah, so that, so, but I think,~ I think Subgrid is gonna be a key feature for people. Once, once we have that in grid layout, that's gonna enable an awful lot of stuff for people. Paige: Yeah, ~I, I mean,~ I just used container queries probably for the first time a couple of months ago, and was astounded at how easy it made something that had previously been so difficult in css. So Subgrid is gonna be another one. Rachel: ~I mean,~ that's it. I think a lot of these things, once developers get them, they're like, why did this take so long? And it's because it ~kind of~ builds on a whole bunch of stuff that had to happen before ~this, ~this thing, which seems very simple. ~Um, Would,~ would be there. And it's~ kind of,~ that's~ kind of~ interesting in itself. ~But,~ but yes. Yeah. Container queries ~are,~ are super easy use if you've ever used a media query ~and,~ and then solve an awful lot of problems. ~So,~ yeah. So~ it,~ it's great to see this stuff, particularly things that people have been asking ~for~ for a long time. ~It's,~ it's lovely to be rolling it out. Paige: ~Well,~ I know that you talked a little bit about, ~um,~ some of the newest things that have come out that you've covered in web.dev, like media queries and color levels and nesting. ~Um,~ are there any other CSS things that we should be aware of that [00:20:00] we should, ~you know,~ try out, look out for? ~Give,~ give ~a,~ a second glance too. Rachel: Yeah, I think, ~I mean,~ I think that's probably ~the, the,~ the key stuff.~ I mean,~ I say ~for,~ for me, ~I, I, I would,~ I would suggest people look at, look, ~you know,~ really look at ~this,~ this new stuff. ~Um,~ a lot of it is, ~you know,~ it is, it's perfectly possible for people to actually incorporate, has good fallbacks things like the color stuff, ~you know, you know,~ you can use that ~with,~ with fallback, ~um, you know,~ rrgb colors, so you can start enhancing things. ~Um,~ and I think that, ~you know, when we,~ when we're seeing that things are, They're in browsers, ~um,~ and are in baseline, ~you know, sort of~ well supported. I think that's a really good time to be starting to look ~at, at,~ at using them ~and,~ and really digging into them ~and,~ and seeing ~if,~ if, ~you know,~ you are happy ~with,~ with your own level of browser support to, to actually start to incorporate those. ~But, you know,~ I feel like there's so much for people to learn right now. ~Um, and,~ and. To see, ~you know,~ the problems that it solves, cuz I think each of these things on their own is really cool. But I think the combinations are what's exciting, ~you know,~ sub grid and container queries. There's a bunch of stuff that, that you can do there. ~Um, you know,~ for instance, add a certain breakpoint to turn on the sub grid [00:21:00] and line things up, ~you know, with, with the,~ with the master grid or whatever. So there's a whole bunch of stuff. So I think I, I would really recommend that people start to look at these things in combination and say, you know what? What do they enable together? ~Um,~ cause I think that's where the really exciting stuff will come. Paige: Yeah, that's the secret sauce when you start to mix them in unique and unusual ways that weren't possible before. So I wanted to pivot a little bit away from baseline and talk more about you, because you've had quite a storied career. ~Uh,~ Since the early two thousands in web development of all sorts, you've written a number of books, you've written countless articles, you've done amazing speaking engagements, and it seems like ~the,~ the majority of them have been on quite wide topics, large swaths of the CSS landscape or ~you know,~ just really big web development topics. So I was wondering how do you decide what you're going to write or speak about, because these are really big. Big areas that you're [00:22:00] diving into. Rachel: ~Um, I mean,~ typically throughout my career it's been the stuff that I've just, I've figured out. ~I mean,~ I don't have, ~you know,~ training in this. ~I mean,~ I left school at 16, ~um,~ and ~I, I got into,~ I went to be a dancer. ~Um,~ and then when I was pregnant with my daughter, ~um,~ I ended up with a computer, so this is 96. ~Um,~ and so I started teaching myself sort of web design as it was, ~um,~ which was like a bit of HT m l and the ability to ~like~ put graphics on pages. ~Um,~ realized I was actually a terrible web designer, but I was a reasonable developer ~and, and,~ and taught myself. Pearl was the sort of first language ~that I,~ that I learned. The whole time I was doing this, I was ~kind of~ writing it up because I was getting a lot of help in forums and so on. And so I started thinking, oh, well I'll help the new people. ~Um, ~cause lots of people were discovering the web and ~so,~ so I was ~sort of~ spending my time writing up what I was doing and just sharing it. So that's ~kind of ~all I've ever done, which is why, ~you know,~ if you dig back far enough. ~You know,~ I've done talks about, ~um, you know,~ puppet, ~um,~ and provisioning servers. I've done talks about business. ~You know,~ I've run my own business for a very long time, and Google's my first full-time job in, in 20 odd years. ~Um, you know, so I've done job,~ I've done [00:23:00] stuff about business. ~Um,~ and I was, ~you know,~ I was mainly a PHP developer for years and years. Years, ~so,~ so it's always been that. It's always been, this is stuff that. I've learned, and ~I,~ I think I'm reasonable at sharing stuff in a straightforward way. I think that's ~kind of~ my key skill. ~Um,~ and probably because, ~you know,~ none of it's ever been that easy for me to learn because I didn't have the background. I, ~you know,~ I didn't know the technical terms. I still often don't, I'll be in a working group meeting and everyone's saying ~some,~ some like really obvious math. Construct and I just don't know what it is. And they keep saying it and I'm like, that's obviously a thing, and Paige: And you're Googling what this acronym could be? Rachel: And I'll look it up and then I'll be like, oh, it's that thing. I just didn't know what the word for it was. ~You know,~ I'll quite ~like,~ I'll have, I'll understand what, ~you know,~ some algorithm is that people call it something, but I,~ I kind of~ know it from doing, ~um,~ And so I think, ~you know,~ that's always been how I've figured stuff out. And then once I figured it out, I just share it with people. Paige: ~Mm-hmm.~ Rachel: ~Um,~ because why not? ~You know?~ And honestly, I do that with everything. It's like at work, ~you know,~ I figure about how to do something, some admin, boring [00:24:00] admin task, and then I'm like, oh, write that down. And then so now I was like, oh, I've God, who's boring admin task. ~Like,~ oh, it's fine. I've got a checklist. ~You know?~ So ~it's like,~ that's just what I do. ~So, yeah. So that's kind of what.~ It's just, oh, this, this is interesting, or this has solved a problem. I bet I'm not the only person, so I'll share it. And I think that's ~kind of~ what I enjoy doing and being able to work ~on,~ on a browser and work, work on the web platform. ~Um,~ I'm just ~kind of ~solving bigger problems, ~I guess, you know,~ problems that lots of people have rather than an individual project, but it's still the same thing. I'm just figuring something out and telling people about it. Paige: ~I mean,~ I've written countless articles and notes to myself for that very same reason, because I end up coming back to it a year or two later and have completely forgotten how to do something or what the way to do Rachel: Oh yeah, it's when I search for something that I find an article that I wrote. I obviously do that sometime. Paige: ~So, I have to ask if, you know, you're just,~ you're learning, you're putting it out there. ~How do you,~ how would you give advice to people who have not really done this or feel like everybody's already written [00:25:00] about everything that is available on the web? What advice do you have for them to ~kind of~ find those things that are unique or ~their,~ their take on something? Rachel: I think everyone's experience of this stuff is. Unique. ~You know,~ ev everyone has a different perspective. The projects that you know, ~uh, you know,~ each developer is working on are different. And so there's always new things to talk about.~ Um,~ So ~I, I,~ I don't think anyone should ever worry about writing certain thing or every, everybody's written about this or there's this expert in the field who's written every possible thing there could be about this. That's not true. ~You know,~ I've written masses of stuff about CSS Grid, for example. ~Um,~ I know that's back inside out, but I write about it in a much more kind of academic way. Whereas there are people writing articles about, ~you know,~ real problems they have solved in their company. And ~that's different,~ that's different to me. So they're. Contributing to the conversation. ~So, you know,~ I don't think you ever need to worry about things, ~uh,~ have ~all~ all been done, cuz that's never true because we all have different experiences ~and,~ and it's, ~you know,~ the thing that you learned [00:26:00] may well be completely missing from everybody else's articles. That's the thing that you figured out. And so yeah, you should never, ever worry about. About that because, and also just the different way people teach things. ~You know,~ someone will really get the way I do it, but another person might, ~you know,~ watch someone's video or just the explanation that someone else makes will click better for them. ~Um, because~ we all learn very differently. And so I think yeah. ~You know,~ never worry about that. ~Just,~ just ~get,~ get the stuff out there. ~Um, it, it,~ it will help someone. Yeah. Paige: It's all about the perspective that you bring to the conversation. Rachel: Absolutely. Paige: ~Um, okay, so are there,~ looking forward and looking forward to the end of 2023 and into 2024, are there any things that you are really excited about in web dev that we haven't already talked about? Rachel: Yeah, ~I mean, There's a, there's a, there's,~ there's a bunch of stuff. ~Um, I'm,~ I'm quite in, in interested by things that the sort of open UI project are working on. So recently, ~um,~ popover has gone into Chrome, ~um,~ and I think those kind of things. So ~that's,~ that's ~sort of ~developing these [00:27:00] components that essentially, Every web developer has to build themselves over and over again. So things like, ~you know,~ we, we've had dialogue a little while ago, ~um,~ pop over. ~You know,~ these are things that everyone is having to do and when we have to build them, we have to build in all the accessibility. We have to make sure that, ~you know,~ these things are gonna work for people who are using the keyboard. And so I think bringing those things,~ um,~ Actually to the platform, ~you know,~ so you've got something which has all of the accessibility performs really well, and you just need to ~kind of~ make it look the way that, that you ~kind of~ want it to do. And ~that's,~ that's really exciting. So I think getting those new sort of elements ~that,~ that give us that is, is gonna be transformative, ~um,~ because let's say there's just this whole bunch of work that every team is having to do. ~Um,~ to do very fundamental things. ~Um, so, so, yeah.~ So~ that,~ that work I find really interesting cause there's just so many problems to solve there. ~Uh, it's,~ it's difficult stuff to get it right. ~Um, you know,~ especially around things like accessibility. ~Uh,~ but ~I,~ I think ~it's,~ it's very valuable work if we can get it right. Paige: ~Yeah, and I mean,~ if we can get these native elements into the browser, there's so many [00:28:00] NPM packages that will suddenly become obsolete that have been toast, toast libraries, popovers, modals. Rachel: Yeah. Yeah. ~And,~ and so ~I think,~ I think that stuff ~is, is,~ is really exciting and as I say ~is,~ is potentially very valuable cause it's gonna ~save,~ save a lot of people time and then make the end user experience better as well because, ~um,~ things will work ~in,~ in a way that is expected if they're part of the browser rather than everyone deciding how they should make these things. ~You know,~ work and then you get things that you're just like, I don't even know what to do with this.~ You know? Um,~ so yeah, ~I think,~ I think ~that~ that sort of stuff~ is, is,~ is cool. ~Um,~ but yeah, ~there's,~ there's just so much interesting stuff depending ~on,~ on what your particular interests are. Paige: ~Well, that's awesome. Um, Rachel, it has been an absolute pleasure to talk to you today.~ Rachel: ~It's been really, really great to have a chat. Thank you.~ Paige: Is there anything else that you'd like to talk about or encourage people to find you online or, ~you know,~ anything else that we haven't talked about so far? Rachel: Yeah, ~well I'm,~ I'm at Rachel Andrew in most, ~uh,~ sort of social media ish places. I'm fairly easy to find. You can search for me, you'll turn me up going on about CSS somewhere. ~Um,~ and, ~uh, you know,~ if you've got, ~um,~ comments about [00:29:00] baseline in particular, the work for that is been done in the Web DX community group. It's not just a a Google thing. ~Um, ~so particularly with baseline,~ if,~ if you head over to the Find the Webjets community group. On the W three C, you can, ~um,~ raise issues and things there if you would like to actually talk. ~Um,~ also,~ you know,~ You're very welcome to, to ping me directly. I'll point you in the right direction. ~Um,~ I, I say I'm at Rachel Andrew everywhere. And I'm Rachel andrew@google.com at work. You can get hold of me there. ~Um,~ so yeah, ~you know, do,~ do, if you've got sort of comments and questions and thoughts, ~you know,~ do share them because, ~you know,~ this work ~is,~ is for you, it's for developers,~ uh, to,~ to ~make,~ make things better for developers. ~So, you know,~ we wanna make sure we're doing the right things. Paige: Exactly. Tell us what you need. ~Right.~ Rachel: ~Yeah.~ Paige: Wonderful. ~Well,~ thank you again for joining us. ~Uh,~ it has been great to have you on and, ~um,~ I hope you have a wonderful rest of your week. I. Rachel: ~Okay.~ Thank you. Paige: ~Thanks everybody for listening. We'll see you on the next episode of Log Rocket. Hi.~