DejaVue

For the first time, the DejaVue Podcast goes "live"! Alex and Michael met up at VueConf Toronto and could do a whole DejaVue episode on stage. Of course, this is even more fun with guests, so they are joined by four speakers of the Conference.
  • Evan You, Creator of Vue, Vite, Rolldown and Founder of VoidZero,
  • Daniel Roe, Lead of the Nuxt Team,
  • Sigrid Huemer, Software Engineer at Sentry, and
  • John Leider, Creator of Vuetify.
But that's not the end! The audience could ask questions to the whole panel, while the DejaVue hosts curated and selected the most interesting ones.
Learn more about how all of the panelists started with Open Source, which were their biggest achievements, how Impostor Syndrome influenced them, what talks they'd be interested in as speakers and much more

Enjoy the Episode!

Our Panelists

Evan You
Daniel Roe
Sigrid Huemer
John Leider

Chapters

  • (00:00) - Welcome to DejaVue Live
  • (00:38) - Introducing our panelists
  • (02:29) - How did you get into Open Source?
  • (06:23) - What side projects are you working on?
  • (11:40) - Do you feel the impostor syndrome?
  • (18:53) - What were your biggest achievements so far?
  • (22:42) - How to get started contributing to Open Source?
  • (34:37) - What kind of talks would you be interested in?
  • (38:55) - Quickfire questions - What is your favorite Vue feature?
  • (39:32) - Options API or Composition API?
  • (39:46) - ref or reactive?
  • (40:03) - Tabs vs. Spaces?
  • (40:34) - Favorite Editor?
  • (40:52) - Conferences in person or remote?
  • (41:06) - Git - Rebase or Merge?
  • (41:28) - Podcast, Video or Blogposts?
  • (41:48) - Your favorite way of writing CSS?
  • (42:42) - What is your favorite Frontend Framework?

Links and Resources



Your Hosts

Alexander Lichter


Michael Thiessen


---

Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.

Creators & Guests

Host
Alexander Lichter
Web Engineering Consultant • Founder • Nuxt team • Speaker
Host
Michael Thiessen
Full-time Vue educator
Guest
Daniel Roe
Nuxt Team Lead and Independent Open Source Maintainer
Guest
Evan You
Creator of @vuejs, @vite_js, @rolldown_rs, and more
Guest
John Leider
Creator of Vuetify
Editor
Niki Brandner
Sound Engineer
Guest
Sigrid Huemer
Software Engineer at Sentry

What is DejaVue?

Welcome to DejaVue, the Vue podcast you didn't know you needed until now! Join Michael Thiessen and Alexander Lichter on a thrilling journey through the world of Vue and Nuxt.

Get ready for weekly episodes packed with insights, updates, and deep dives into everything Vue-related. From component libraries to best practices, and beyond, they've got you covered.

Michael Thiessen:

Welcome back to DejaVue.

Alexander Lichter:

Yeah, it's your favorite Vue podcast. Apparently you just didn't know it yet until now. Live at VueConf Toronto 2024. Nice to have you all here. And well, we're not alone, right?

Alexander Lichter:

My wonderful host, Michael Thiessen, full time Vue instructor, had a nice talk about Nux layers here. Yes.

Michael Thiessen:

Thank you. Thank you. And, yeah, you saw him this morning, Alex.

Michael Thiessen:

What can I say about him? I can say a lot, actually. Nuxt core team, does all these amazing things with video content online and consulting and all of that.

Alexander Lichter:

But probably most of you know it already, and of course, we could start like, yeah, let's have an hour discussion just the 2 of us but that would be a bit boring so we thought, we wanna invite some people to the stage, some of you have seen a few people here already, probably all of them if you're here 2 days. So, yeah, let's give up a big warm welcome to all of our panelists. Step by step. And we're starting with the one only Daniel Roe who is not only leading the Nuxt team, he's also amazing speaker and live coder, Daniel Roe, everybody.

Michael Thiessen:

And next up we've got John from the Vuetify projects, you know, component library, here he is. John Leider everybody.

Alexander Lichter:

Yeah, and our second to last panelist today, you've heard her talk about the new Nuxt SDK for Sentry, it's Sigrid Huemer everybody. Sigrid, big applause come up here.

Michael Thiessen:

And last but certainly not least, we've got Evan, who, you all know him. He's the creator of Vue. Here he is.

Alexander Lichter:

Evan You. Alright. Okay. And the best part is we're not only here and for like, okay, we prepared a big list of questions, did like a little audition, what do you have to say? Well, no, you all can decide what you wanna ask, the people on the live stream can also just drop in some questions so there will be a QR code visible right here in a little bit where you can just say, okay, let's scan it then you come to a nice page which is also built with Nuxt JS and there you can go ask the questions to the panelist here.

Alexander Lichter:

Of course, we have a few things prepared and, that will go through them. You can vote some other questions up, so definitely have a look there and if you wanna ask something, that's the way to go. So that will be up here for a little bit. Don't forget to check that out and, we'll get very simple started, right, Michael?

Michael Thiessen:

Yeah. Our first question is, how you got into open source. So since you're sitting right next to me, why don't you start us off, Daniel?

Daniel Roe:

Okay. I said, a little bit about it. I guess, I as a kid, I was, I used Linux and loved the idea of stuff being open and free. And I hated stuff being closed and ecosystem locks and all of that. So Microsoft was my number one enemy as a kid.

Daniel Roe:

And now I'm so delighted to use GitHub, VS Code, NPM, Playwright, and so on. So what a what a change in in the world, I guess. And so I I when I had a chance to contribute back to projects I use, I tried that alongside my work, and I really loved it so much. I did it more and more. And somehow I woke up and was asked to be on a team and then somehow I was asked to lead the team.

Daniel Roe:

So that's my story.

John Leider:

I, let's see. This was 2016. I, Vuetify was closed source at the time. I was still working on it and the one of my coworkers I was, sitting next to had seen me pull it up one day and was like, wow. That's really cool.

John Leider:

What is that? And I told him, you know, it was a UI library that I was working on, and he convinced me eventually to make it open source. And that's what I did December 14th that year.

Sigrid Huemer:

Yeah. For me, since I'm developing web applications, I was using libraries that are open source. I think you all do. And, the first things I was doing, when, on GitHub was just, finding out or when I was using this libraries, and I could see that there was an issue with the library. I was opening an issue on GitHub.

Sigrid Huemer:

It's like the easiest thing you do in open source. Of course, with the reproduction, very important. And then I I turned Sentry at some point and now I'm working in open source slash fair source. Exactly.

Evan You:

Alright. Alright. For me, I think I first got in touch with open source when I was still in school. I was basically teaching myself JavaScript and then started to run into all these projects on GitHub. I think I started using GitHub when I what?

Evan You:

It was, like, 2009 or something? Like but basically, when it first came out, I started, like, looking at the source code on it. And, in the beginning, it was just cool to see people put their code up there. And then I started learning JavaScript, started putting things on the web. I thought it's cool that I can not only share the thing I built with people through the URL, but also through the source code form.

Evan You:

So I started just like throwing random stuff on GitHub. A lot of those in the in the beginning didn't really get any sort of attention at all, but, then, I started working on Vue in my spare time and, of course, I had to put it on GitHub. Pretty much using GitHub as I think, like, in the beginning, I was just using GitHub as a way to sync, between my, machine at the company and the machine at home because I didn't want to carry the machine around. So at the company, I was just, like, pushing stuff to GitHub. And at home, I pull it, on my home machine and started doing it again.

Evan You:

So all the code was just up there, and I didn't want to at that time, GitHub still charged for private repositories. I was like, I don't wanna pay for that. I'll just make everything open source. Yeah. So that's how I got into it.

Alexander Lichter:

Well, I guess thanks GitHub at that point and, like, great great that we can use private repos now. There is there are so many nice questions out there, by the way. Keep them coming. That's really amazing. And, I think that's a good point to touch on, a little sidetrack, so to say.

Alexander Lichter:

Because, I mean, Vue started, in a way, as a little side project and grew into what's here right now. So the audience, at least someone out there in livestream, would want to know, what are your side projects right now? What are you working on on the side when not on Vue, Sentry, Vuetify, Nuxt?

Evan You:

Starting with me. I guess I don't really have side projects right now because I'm I got my hands really, really full now, so I'm like, no bandwidth for side projects for now. But my last side project was feet pretty much.

Alexander Lichter:

Fair.

Sigrid Huemer:

I don't have any big side projects, so it's basically just my personal website and, I mean there is an idea I was starting, with my partner together because he's also an engineer, where we want to build like an application where you can just share pictures with each other life, like at a party and then you have those pictures on a screen. Yeah. So that's it.

John Leider:

I don't really have any side projects right now. The last thing I, worked on that could be considered that was earlier this year. That'd be Vuetify Snips, but currently, I'm pretty pretty busy. So no side projects.

Daniel Roe:

Evan saying the last side project was Vite. I mean, come on. It's it's really difficult when that is the first answer. My side projects, I'm building a course called React to Nuxt, and therefore, I have to build a course platform as well as probably every single person who has ever decided to create a course immediately begins by building a course platform. This is not

Michael Thiessen:

I delayed mine by by a few projects, actually.

Daniel Roe:

Okay. So It's not inevitable. Well, that that's something I'm working on. Somehow. I have a game called Ostra, which I'm planning to put together and release like a multiplayer game a little bit like Skyjo, if you've ever played that.

Daniel Roe:

And then another one on a similar engine, which is a little bit like code names, also multiplayer. You're trying to guess a word with just one word clues from the other person or guess lots of words. And there's one other side project I'm working on which is quite fun, which basically is using AI to generate model embeddings for issues on GitHub so that I can basically detect clusters of issues. So issues that are somehow in the same space as other issues. And I found it to be incredibly useful.

Daniel Roe:

So after starting to run this, the tool works. But I I want to make it put it hosted so it can be online and other maintainers can use it as well. And basically, what it does is, it it'll it'll cluster up the issues and discard the less relevant ones. And you just use it after the initial call to get the embeddings from an LLM. Everything after that is just matrix maths.

Daniel Roe:

So it just it can basically calculate the distance in n-dimensional space from one issue to another issue and then like multi dimensionally calculate closeness of them and so then you build the cluster around that. So after I started running on issues for Nuxt, I was able to identify so many duplicate issues, even though the words and phrasing wasn't obvious. And often if you're trying to manually identify duplicates, you start from one issue and search and it's incredibly time consuming whereas this detected them instantly. But it also finds the areas where there is flakiness or bad DX or a desire for improvement or an enhancement, which I find incredibly useful. So the next I'm sorry I'm going on, but the next step is going to be to like hook it up to other repos.

Daniel Roe:

For example, we'll hook it up to Rollup or Rolldown or OXC or vite. So that when someone reports an issue in Nuxt, we can actually cluster that into a bigger ecosystem of issues that have been reported. So like if people are reporting the same issue, with, I don't know, Svelte in their Vite integration or or upstream in Vite, then I can pretty instantly know as a maintainer that it's not a Nuxt problem. Whereas it's one of the biggest issues that I face is that an issue comes in and I don't necessarily it's not probably it's often it's nothing to do with Nuxt, but I still have to do do some investigation to find that out. So that's a sort of side project.

Daniel Roe:

It's sort of assists me as well, but I find that side projects I enjoy most also make my life easier. So maybe it counts.

Alexander Lichter:

I have a quick question there, Daniel. When do you sleep? Like, you listen all your things like, oh, yeah. Elk and Nuxt and this and then like all these side projects. How?

Alexander Lichter:

You also have a family I heard, like friends and you go bouldering. What's your secret? Please, tell us. Tell us.

Daniel Roe:

It's fun. You make time for

Alexander Lichter:

You heard it. Right?

Daniel Roe:

You make time for the things you find fun. So it's it's not a difficult thing.

Alexander Lichter:

Fair. These these things spark joy to see if we're say it with, Marie Kondo's words. Perfect.

Michael Thiessen:

So one of our, most up upvoted questions here is, do you feel the imposter syndrome? And I think that's a very relevant question, especially, like, you know, for all of us up on stage giving talks, I'm, I'm I'm not going to put words in your mouth, but, I can speak for myself that, especially when I come to a conference like this, I was telling some other people before that I feel like I'm just a guy telling you all about the cool stuff that these people are doing. And, like, I don't I don't really know what I'm talking about, but these people do. And so in some ways, I'm always worried, like, did I just say something wrong about Nuxt layers or about Vue and, like, you know, Daniel is, like, cringing in the back or Alex is gonna, like, you know, pull me aside later and say, you know, you said something that was wrong.

Michael Thiessen:

You know? And there's always, like, this weird, like, imposter, this imposter syndrome. So that's my long winded way of, bringing up this question. So if anyone would like to take that, it is would one of you

John Leider:

I mean, when I first started Vuetify, it was very early into my programming career. And when it took off, it was definitely an imposter syndrome feeling. It went down over the years, but definitely for the first 4 or 5 when it first took off. Yeah. It was really bad.

Daniel Roe:

I can definitely say yes as well.

Sigrid Huemer:

For me as well. Yeah. It it, yeah. It haunts me a little bit. But, I I was shifting my mindset a little bit about that because, I think everyone in development has that.

Sigrid Huemer:

Like, everyone is talking about that. And, I think we can think of it, like, as a part of our job to always have this. Like everyone has it, this imposter syndrome, but you can still always look back on all the things you accomplished and the things you learned during your journey. Like, I was developing applications in my last job. So I wasn't developing well, is it still working?

Sigrid Huemer:

I wasn't developing SDKs. So that was new for me, and I felt like an imposter, and it was everything was new and like a fresh start again. But still, I could look back to what I was already working on, and I knew that I have knowledge. And all the other people have knowledge as well, but in other areas, and I can only improve from that point on. And I will always have the imposter syndrome, but it's just how development works.

Sigrid Huemer:

There will be always new things coming, and the ecosystem changes all the time. So, yeah, just roll with it and talk about your feelings with other people. That always helps.

Evan You:

I mean, I definitely also had to some level, especially in the early days when Vue just started getting popular. And I was like, wait. Like, people are really comparing Vue to stuff made by Google and by Facebook. And I think to a certain point, especially in the early days, I kind of was feeling like, oh, like, you know, those folks at Google working on Angular must know what they're doing. Like, these people working on React.

Evan You:

Like, you know, like, they're very confident when they say we're redefining best practices. I'm like, they probably know what they're doing. But I guess, like, over time, interestingly, there's a lot of people who just still prefer Vue over those other solutions. I was like, maybe we got something right too. Right?

Evan You:

So it's a process of sort of I think I guess one takeaway over over the years is, a lot of times you're presumed, you would assume a lot of sort of, in some cases, maybe you think technology or people from big companies are naturally just like they're more confident or they know better. Right? But I think in a lot of cases, that's not really the case because I think ultimately technology, whether something works or not, you have to just put it to test by real developers. And if people like this stuff or they're being productive with it, they actually build great stuff with it, then the technology works. So, so I think, like, it kind of slowly changed the way for me to sort of judge whether something is good in tech or not.

Evan You:

So a lot less based on just reputation or prior experience or anything like that, but rather more focused on the tech itself. I think that's, that has a lot to do with it.

Daniel Roe:

Could I fire in another thought here on a totally different point of view? That I think one of the things that gives impostor syndrome its, claws to really hook into you is the fear of being found out, for sort of being unmasked as like a childhood nightmare. Right? That they'll they'll all point and laugh. They all realize that I was a fraud.

Daniel Roe:

And it's it's very relationship to other people. It's not like you probably wouldn't really feel the same thing if you were on your own. And can that means that there's that we all have an opportunity to make impostor syndrome less likely for the people around us. So I mean yes we can use all these tools for ourselves but what about the people that look up to us. So some of the things that you can do I think are be vulnerable, admit when you don't know things, talk about how you learned things from other people which is also a great way to pass on techniques to learn things because we're all people who learn things all the time.

Daniel Roe:

And if you're in an environment where people where the people you look up to to are telling you about how they are in an ongoing process of learning or how they they also not just that they experience impostor syndrome because you can think well, yeah, it's fine for them to say that, but actually they can tell you they can they can be vulnerable particularly things they don't know. I think it I think you have an opportunity to help decrease imposter syndrome in other people around you, which might not do much for you, but it will make me make the whole whole environment better.

Alexander Lichter:

Really good takes there. And, I like the part of that imposter syndrom is, of course, part of, like, the the social construct of, hey, relationships to people and how, especially people that are in a focus, can make that easier. Just saying, Okay, we all Google stuff. We all do things wrong. And it's totally fine because we're also just humans.

Alexander Lichter:

And admitting that is a is a big part. I fully agree. On that note, coming from maybe it's not the full opposite but from impostor syndrome and maybe the fear of feeling like, okay, yeah, the others did so many great things. Can I keep up with that? To, big achievements.

Alexander Lichter:

So what were for each of you like big achievements maybe related to open source, to programming, job is like this is maybe the biggest achievement so far if you can pinpoint that if it's possible. It's like, yeah, that's, that changed a lot or that was that was a key, key memory, key point, turning point.

Evan You:

I guess for me, the success of, you know, having, I think the key defining moment for me, especially the first one, is the first time an offline conference that's dedicated to the technology that I created was happening. And I was I attended there physically and people are, like, coming up to me and say, hey. Like, thank you for the thing you created. You really helped me. I think that was, like, probably the moment I felt the realest, like, how the impact of some something I worked on created in the real world and, like, having real people telling me that.

Evan You:

I think that's, really, you know, powerful, and kind of it's probably the main motivation I keep doing this stuff all these years. Yeah.

Sigrid Huemer:

Still pretty early in my career, I would say. So, my biggest achievements are all these first timers. So, first time creating an SDK, first time speaking a conference. So, yeah, those are the things I, yeah, I'm really proud of.

John Leider:

Let's say mine was whenever I started getting invited to the conferences that they were having for Evan is when I felt like it was a big change of things. So yeah.

Daniel Roe:

I really struggle. I think, I was there are lots of things that I'm really proud of, but I feel awkward saying them. I don't know. Like, even, like, in school, like, I remember winning an award and and still and for a very long actually, I won an award that was this tall. So that should tell you how big a deal it was.

Daniel Roe:

That was a joke. And I still feel a great deal of pride about it. But I think in the open source world though definitely I was most excited when Sebastian reached out to me and basically said I've seen what you've been doing I really like it thank you so much for what you're doing. And now that because I think there are a lot of other things that maybe feel more like markers on a resume, but that was I really felt valued and that was a big marker for me. Maybe that's what I point out.

Alexander Lichter:

Michael, how about you?

Michael Thiessen:

Oh, my biggest achievement. Oh, I wasn't thinking that you would be asking me this, so I wasn't preparing mentally for it.

Alexander Lichter:

Surprise.

Michael Thiessen:

I don't know. I I guess I'd say similar thing to to Evan when I come to a conference like this and I have people come up to me and say, oh, I read that article. And because of that, I actually changed something in what I did, not just like, oh, I like like to post or re reposted it or whatever, but actually thought that it was useful enough to change my behavior or to change something that I was doing. And every single time that happens, it's kind of crazy to me that people would trust me enough to do that. So there you go.

Michael Thiessen:

So open source is not just about, like, the people leading, but it's also about people contributing. In fact, probably more about the contributors and how they can help push the the projects along. And the question, that many have been asking is how to get started? How do you get into contributing to open source? And I guess this, you could an you can answer this in sort of a general way or like a specific, you know, these are the kinds of issues that that might be helpful or maybe a more philosophical, approach.

Evan You:

Yeah. So I would so I have dealt with a lot of contributors in the past, and many of them became team members of the projects that we work on. And I think the natural the first thing to a lot of people asking that question is you don't need permission for contribution. Right? It's open source, so you can just go to a pull request whenever you want, I think.

Evan You:

But, on the other hand, I think whenever you do contribute, it's also important to sort of put your put yourself in the shoes of the maintainer and think about what does the project need. Like, what I think it's, sometimes it is ideal if you can find a match between your capability and what the project need. That is the ideal situation. It doesn't necessarily always happen, and I I don't think you need to force that to happen. You know, there are many different projects.

Evan You:

There will be some projects that suit your expertise better. Or if you really want to contribute to 1, I I guess you need to sort of if you feel like, oh, I'm not good enough, I think that's that's not necessarily a a good mindset. Like, it's more about, like, oh, I want to solve this problem, but I feel like I don't know how to. So what are the exact skills I need to get better at? That's kind of a fuel of self growth in a way.

Evan You:

But but you can also start small. For example, Matias, who is now the core team member on Vite, started by just contributing to the documentation. I think what what as maintainers, what we're really looking for is, like, what makes a good contributor or a good first pull request is you're showing that you have you have been looking at what the project is needing. Like, does does the project need better documentation? Or, like, in a lot of cases, first time contributors are really just fixing something that they a problem they've run into themselves when using the project.

Evan You:

Right? A small paper cut in the development experience, for example, the the log message could be more descriptive and they send a pull request to improve that, and that's a really good thing, you know. And, so yeah. And that doesn't require a lot of, like, complicated understanding of how the whole thing works. Sometimes you can be solving a really concrete and small scope problem, and that also is a good stepping stone to getting into, you know, bigger contributions in the future and build your confidence.

Evan You:

And, ultimately, I think, yeah, getting started can be tough, but once you've you've done that first step, you every time you do a slightly more ambitious pull request, you eventually, you know, get recognized and maybe likely be be invited to become a committer to a project.

Sigrid Huemer:

I think the best projects to start with, contributing to are the projects you are already using because you're already familiar with them. This can be for example a UI library or an error monitoring library and then when you find out there are pieces missing in the docs because that's probably, like, the easiest way into contribution, you can just add those docs that are missing or, look into the issues that are tagged with good first issue or in October, there was the Hacktoberfest. You can also look for that tech or just yeah. Wait for next year for Hacktoberfest and look, what you can do there.

John Leider:

I like to encourage people, for contributing to try to most open source has, like, a community type area that you can go to to talk about it, whether that be GitHub itself or another medium like Discord. So if you don't have a problem that you're trying to solve, another good thing you can do is look at some of the other problems that people are having and seeing if they even align with where you're working at. And then you can put some time towards something that is I mean, that's what I did when we first started Udify. I just sat on I think it was called Gitter at the time, and just listened for people to say there was bugs in the software, and then I'd fix it right then and there.

John Leider:

So usually, if you can't find a reason for your own self, like, okay. I'm not using any functionality where I need to contribute back, looking at other people's problems can help too.

Daniel Roe:

I totally agree with all of that. I think so in addendum rather than replacing any of that, it's also you can also totally reach out to the maintainers to ask. You really don't need permission for anything but if if you're it can feel a bit bit scary to open a PR because you don't know what someone's going to say to you. Are they going to do the the most awful thing that exists on GitHub which is click the request changes button. Honestly, the level of adrenaline that goes through my body, it doesn't matter who does it, it doesn't matter what project it is, I feel personally attacked in that moment.

Daniel Roe:

So like you might be a bit worried and there might be things that are uncertain. And you can try and decrease those uncertainties and address the worries in advance. Like with anything, any task that is daunting, anything that you can do to make it less daunting is helpful when you're taking the first step. Once you do that, it's gonna get easier and easier and easier and easier, and pretty soon you're going to be telling other people how to do it. But that first time, the thing that when it feels like a cliff, if there is any way you can make it less.

Daniel Roe:

And so asking on on Discord or even just saying, hey, has anyone else contributed to this project? Any tips? You know, getting them from other contributors or reach out to a maintainer and say, hey, I'm sorry. I was going to do this this thing. I was thinking about doing it this way.

Daniel Roe:

Does that seem okay to you? Maintainers are we're generally delighted. We're thrilled if anyone wants to contribute. It's so much it's it's such a such a nice thing. You know, the last thing in most cases that we're gonna do is come back with anything negative.

Daniel Roe:

So I can't I can't speak for anybody, but definitely for the people on this stage, I could say that. But, you know, reach out, happily ask question answer questions, even take a look at like a I'd very happily take a look at it like a pre pull request if you just have a commit somewhere I can have a look and say looks good to me you can make the real pull request. And then then that makes it a little bit less daunting but there might be other things you can think about too. Just little by little make it more approachable. You've got this.

Alexander Lichter:

Also a few things to add there maybe, if you find like a typo on the docs feel free to send a PR. It's really straightforward, right? But I have at least a feeling very often if you want to solve a specific problem because, oh, yeah, you knew you took some tools of library. It didn't work as expected. Maybe you want a different use case.

Alexander Lichter:

Write an issue, right? Explain not only, hey, I want to change this line because it doesn't work as it should. Explain like: Okay. I want This is what I want to do. It doesn't work.

Alexander Lichter:

Here's an example. Like, reproduction. Always nice. Always happy about that. Because otherwise you just tell you: Hey, do you have a production?

Alexander Lichter:

So explain your motivation as well. And that's usually a good start because sometimes not a PR, sometimes it can also be like, okay, this is already possible in different way and it can be documentation. So save yourself also a bit of hassle and basically it's like, hey, I attached it on my own like my own project. It's always nice to add this like, okay, this is so it works. In my case, it might not work in a lot of other cases because of course projects are very generalized and in your case, it's great if you, I know, disable that specific compression, but it's needed in other cases.

Alexander Lichter:

So I think that's also a good one.

Evan You:

Yeah. I kind of want to add to that because, contribution to an open source project isn't necessarily always code. I have a very good example, like, in the Vue project, we have a user, named Skirtles, and he hasn't sent in a lot of pull requests, but his impact on the project is big because, he's the kind of person who would go through a lot of, like, old issues or, like, really complicated ones where, maybe has slipped through the triage process and people haven't really replied to the issue, he would, like, look through those and give a very detailed investigation report kind of. Like, not necessarily actually fixing it, but he would share as much as he found during that process.

Evan You:

It's like, for example, like, these are the relevant issues that may have may be connected. These are, you know, these issues may be just because of this line of code, because of this commit. Right? So any kind of that additional information that's added to an issue can, you know, help the next maintainer who's going to work on it save a lot of time, save a lot of energy trying to just pinpoint the root cause. And he does that on many of those issues.

Evan You:

Sometimes we can you know, sometimes it's just like for me, like, seeing one of his comments, I know, okay. Like, I have a good start on this one.

Daniel Roe:

One other thing on docs, the, there are narratives that we sometimes accept about ourselves. When we're trying something new for the first time, we think we are imperfect, we need to improve, we're not very good at the thing. And so when something doesn't work we blame ourselves. I didn't do that right. It was my fault.

Daniel Roe:

Whereas I think often you can consider if you're following the docs and something isn't working as expected it is a bug in the documentation. And if you're new you're almost one of the only people who can ever discover that bug. And so like I know we've been talking about docs PRs in the form of sometimes you know typos and things like that but you can also think if you're making it the documentation more intuitive often you are fixing bugs and there are bugs in in written form. That you know, they're bugs in comprehension and intuition and DX. And that is an incredibly valuable thing.

Daniel Roe:

But the thing is just don't assume you're wrong. It it it might be that the docs are wrong in terms of their intuitiveness.

Alexander Lichter:

Good points there. So, yeah, a lot of things to remember and also go for it. Right? Like, as it was said before, nobody, you don't have to ask anyone to contribute. You can do it.

Alexander Lichter:

In terms of contribution, there was a very interesting question before we come to a few of rapid quick fires, for the very end of the panel because time's running, right? So if each of you would sit in the audience I mean you did, right? But like say, okay, what kind of talks would you be interested in when it comes to Vue, maybe general JavaScript? What would you be interested in hearing? That can be a specific technology, of course.

Alexander Lichter:

That can be specific angle topics. So yeah. How about that?

Evan You:

For me now, I guess, what interests me most is hearing, like, real stories of how people use Vue in larger projects and specifically the challenges or the the problems they run into because that usually informs me of what we need to do next to to improve. Because in a lot of cases, I guess, like because over the years, we've addressed these very direct problems, like user open issues that report to us, but, from my experience, the it's also quite different when, there are different category problems that you run into when you are scaling the project into, you know, a really large one. You know, like, maybe it started small, but it's growing big, and you maintain it over time with a group of developers. So there comes a whole different category of problems that may not end up being direct issues reported because it's not necessarily a bug. It's not necessarily a thing.

Evan You:

Sometimes people would open RFCs or discussion issues, but, hearing it in a more, you know, distilled form as in the form of talk would be really interesting.

Sigrid Huemer:

Yeah. Yeah. I can just follow-up on that. I think the talks, which which elaborate on your experience in a project or, yeah, in some problem are really interesting. There are just different types of talks, can be an informative talk, that goes really, in yeah, into deep and also talks about experiences and, yeah, every talk is valuable.

John Leider:

I agree with what they say. I don't really have anything to add on that.

Daniel Roe:

I really, really like deep dives into something that I might not have known otherwise. Like, you know, what the exact thing that happens when the browser first encounters a piece of HTML, like, and and, you know, precisely how the timings work. And for somebody to give that talk not just as, like, here are here's the answers, but, to tell the story of how they discovered it. Because often some of the things that are really interesting to hear aren't documented anywhere. There's just no answer, until you actually start finding out and being part of someone's journey as they find out or they deep dive something is great.

Daniel Roe:

I've heard, for example, Marc Backes has done a couple of really interesting talks on rebuilding views reactivity from scratch, which is quite fun as well in a similar kind of way of helping you understand something in-depth you might not otherwise. I also really like talks that are inspiring in the sense that they make you think outside the box and come up with some kind of, they open the horizons for you in terms of and sometimes that's an example of what someone's done. A talk I would love to hear a very specific one would be an example of somebody using LLMs to create an agent that empowers them or in some way takes time off of what they're doing. That's the kind of thing that I think we're gonna see more and more of. And the potential is really quite exciting.

Daniel Roe:

I'd love to see that talk. And anything with a story, where it's not just facts, like not screens full of facts, but a narrative that takes you through. I want to cheer for people. I want to be heartbroken when it goes wrong. Like, that's fun.

Daniel Roe:

Not the heartbroken, but the fact that it comes right in the end is the the payoff.

Michael Thiessen:

Our next question in the quick fire is, what is your favorite Vue feature? So we'll start with Daniel. Well, all the way very quick.

Daniel Roe:

Okay. Quick fire. That wasn't quick fire. I'm so sorry about that.

Alexander Lichter:

Now! Shoot!

Daniel Roe:

I I would say, fine grained reactivity.

John Leider:

I like in, Vue 3. They have the new v model support for various you can use it for whatever. It doesn't have to be just model value.

Sigrid Huemer:

Composables?

Evan You:

I would say reactivity too. Yeah.

Alexander Lichter:

Nice. Okay. Then we do the other way around. It's a little bit of ping pong. Options API or composition API?

Alexander Lichter:

Composition. Really?

Sigrid Huemer:

Composition.

John Leider:

Yeah. Composition.

Daniel Roe:

This isn't a question. Composition.

Michael Thiessen:

Next question. Ref or reactive?

Daniel Roe:

For what?

Michael Thiessen:

For when you're writing the composition API.

Daniel Roe:

If I have to pick, ref.

John Leider:

Ref for sure, but shallow ref unless you need deep.

Sigrid Huemer:

Ref. Ref.

Alexander Lichter:

Yeah. It's an easy one. Okay. Let's let's tackle the beta tabs versus spaces.

Evan You:

I use spaces, but I'm fine with either, to be honest.

Sigrid Huemer:

Tabs. Because there is just one reason to prefer tabs. It's because of accessibility. Yeah. If that wouldn't be the reason, I wouldn't care.

Daniel Roe:

Spaces. All my code is in spaces but I think I'm gonna have to switch to tabs.

Michael Thiessen:

Your favorite editor, code editor to be specific.

Daniel Roe:

VS Code.

John Leider:

Yeah. VS Code all the way.

Sigrid Huemer:

WebStorm

Evan You:

VS code.

Alexander Lichter:

I know a lot of people who are very happy. It was not only VS code. It's it's great. Okay. Let's do a few more and then we only have to wrap it up.

Alexander Lichter:

So, do we enjoy conferences more in person or remote?

Evan You:

Definitely in person.

Sigrid Huemer:

In person?

John Leider:

Yeah. In person for sure.

Daniel Roe:

In person.

Michael Thiessen:

Do you prefer rebase or merge in in Git?

Daniel Roe:

So

Alexander Lichter:

Quickfire.

Daniel Roe:

Rebase.

John Leider:

Rebase.

Sigrid Huemer:

Rebase.

Evan You:

Squash then merge.

Alexander Lichter:

Yeah. Very good. Everybody happy here. Yes. Alright.

Alexander Lichter:

Let's do let's do 2 more, for learning. Podcast, video or blog post?

Evan You:

That's tough. For different occasions, I think. Yeah. Podcasts are good on flights.

Sigrid Huemer:

Blog posts.

John Leider:

Just a video, I think.

Daniel Roe:

You said for learning, so I'm gonna say blog post.

Michael Thiessen:

Sweet. Good mix. And the last one here, your favorite way of writing CSS.

Daniel Roe:

CSS? Vanilla CSS.

Alexander Lichter:

Okay.

Daniel Roe:

Not not Sass.

Evan You:

But like

Alexander Lichter:

like with a framework, like handcrafted.

Daniel Roe:

I'm a fan these days of UNO. UNO CSS is pretty nice.

John Leider:

Since Vuetify has built in utility classes, I'd have to say that.

Sigrid Huemer:

Actually, just plain CSS. I yeah. I'm I'm not a fan of Tailwind so far. I I don't know.

Alexander Lichter:

We're we're getting there. Yeah.

Evan You:

I actually like Tailwind, but I don't get to write a lot of CSS these days. So Lucky. When I write small chunks of CSS, it's just style scoped, and that's it.

Alexander Lichter:

Okay. Let's do one more thing. We'll just say all together on 3. What's your favorite front end framework? 123.

Everyone:

Vue.

Alexander Lichter:

Wonderful. Thanks everybody. Thanks for the great panelists here. That was our lovely panel discussion on DejaVue.

Alexander Lichter:

If you wanna hear more of the podcast, check it out, our weekly episodes with many amazing guests here. We had a few people on already, few people coming up. So definitely check it out and, now it's, I think, time for the raffle. So thank you everybody.

Alexander Lichter:

One more round of applause. Yeah, please.