Screaming in the Cloud - Slide Into The Future Of Presentations with Anthony Fu

Episode Date: May 28, 2024

Welcome to another episode of Screaming in the Cloud, where we're joined by Anthony Fu, a framework developer at Nuxt Labs and the creator of Slidev. Anthony has diversified the way presentat...ions are crafted by integrating coding directly into slide development. In this episode, Corey and Anthony discuss the benefits of using markdown to craft slides, the challenges associated with traditional presentation tools like Keynote, and the open-source contributions that have propelled the development of this innovative software. Anthony also shares his inspiration for creating a tool that streamlines and enhances the presentation creation process for both developers and non-developers.Show Highlights: (00:00) Introduction (03:13) The origins of Slidev  (04:47) The challenges with traditional presentation tools and the advantages of using Markdown for slides(06:04) How Slidev simplifies slide creation for presentations (07:01) Corey shares his surprise at the utility of Slidev for non-frontend developers (09:56) Addressing the challenges of aligning text and images in presentations (11:09) Anthony discusses his design philosophy for Slidev(15:14) Balancing feature requests and maintaining simplicity for Slidev(16:38) Anthony explains the importance of community contributions to Slidev (20:13) They discuss implementing new features into Slidev's evolution(24:15) Anthony’s insights into the open-source philosophy behind Slidev (27:09) Slidev's approach to redistributing sponsorships to support its dependencies through Open Collective(31:46) Corey mentions contributing to Slidev's documentation to make it more accessible(33:41) Closing remarks & where to connect with Anthony About Anthony Fu:Anthony is a fanatical open sourceror. Core team member of Vue, Nuxt, and Vite. Creator of Vitest, Slidev, VueUse, UnoCSS and Elk. Working at NuxtLabs. Links referenced:Slidev: https://sli.dev/ Slidev Github: https://github.com/slidevjs/slidevAnthony Fu’s Personal Website: https://antfu.me/Anthony Fu on LinkedIn: https://www.linkedin.com/in/antfu/?originalSubdomain=fr Anthony Fu on Twitter: https://x.com/antfu7NuxtLabs: https://nuxtlabs.com * Sponsor Prowler: https://prowler.com

Transcript
Discussion (0)
Starting point is 00:00:00 If you say that users, that people get this tool for free, but I also get a contribution for free. And that's the amazing part of open source is that everybody is helping for everybody. Welcome to Screaming in the Cloud. I'm Corey Quinn. And if you've been listening to this show for longer than 10 seconds, you've probably figured out that I have an ongoing love affair with the sound of my own voice. What you might not know is that I give a lot of conference talks over the years, because the secret to giving a great conference talk is to give a bunch of crappy ones first.
Starting point is 00:00:36 And for most of that time, I've been using Keynote until relatively recently, when I stumbled, mostly through blind luck over an open source project that more or less changed the entire way that I view slide deck creation. Anthony Fu by day is a framework developer at Nuxt Labs, but is also the creator of SlideDev, which has frankly revolutionized the way that I create content to more or less do talks that are stand-up comedy with slides. Anthony, thank you so much for taking the time to speak with me. Yeah, thank you for having me. Prowler works wherever you do.
Starting point is 00:01:13 It's an open-source powerhouse for AWS, Azure, GCP, and Kubernetes. From security assessments to compliance audits, Prowler delivers with no hidden corners, just transparent, customizable security. Trusted by engineers and loved by developers, Prowler lets you start securing your cloud with just a few clicks with beautiful, customizable dashboards and visualizations. No unnecessary forms, no fuss, because honestly, who has time for that? Visit prowler.com to get your first security scan in minutes. One of the things that I've always been worried about when I've been using Keynote
Starting point is 00:01:51 historically, that sort of started me on my journey of, is there a better way to make slides, has been that iCloud is great. I did a whole post a while back before this was an easy thing to do about how I present conference talks entirely from an iPad, but I'm critically dependent on Keynote's ability to sync files. Sync isn't a backup. I'm an old-school Unix admin, where, what is the expression? Two is one and one is zero when it comes to number of copies of things. So being able to crack things in something that looked like version control was what started. And I've discovered Reveal.js relatively quickly because everyone's been using that for ages.
Starting point is 00:02:27 And it's great if you're a front-end developer. I am absolutely not. What SlideDev does that revolutionized it for me, or I guess radicalized me, if you want to use that expression, is it made it so much easier to write the content of my slides in Markdown, which is how I generally tend to write things anyway, in terms of rough draft or script approach.
Starting point is 00:02:49 And then with a little bit of markup scattered throughout, that content becomes slides, that those notes become speaker notes, and you can make each slide look however you want. With a couple of the VS Code extension that's been associated with the project, you can drag and drop things in different orders. And you can export it in a bunch of different ways too. I can't express just how revolutionary this thing is. Where did it come from? All right.
Starting point is 00:03:14 I'm very glad to hear that. I would say that still Keynote is a great tool. And I was enjoying using it. And me as a developer, we usually do like tech related work, right? And it's often that you want to put some code inside your slides. I don't know why, but I tried PowerPoint or Google Slides or Keynote. They don't really get the building features, like you insert a session of code that's appropriately highlighted.
Starting point is 00:03:45 So that's one of the main pain points I have. And also, the other way is I want to open my, like I want to share my talk, I want to share the content, and I also want to share my slides. Well, that's a very intuitive way of thinking. It's like I'll time I have to change something or like I want to fix a typo, it's like, I need to go back to the file. You can commit it into version control, but it's still a binary file, so you don't get a div. And it's quite hard. So for me, it's like, it's also part of a way for me to escape from preparing the talk. You know, it's like you have to do a lot of things. You have to do a lot of things.
Starting point is 00:04:22 You have to do a lot of things. You have to do a lot of things. You have to do a lot of things. You have to do a lot of things. You like it's also part of a way for me to escape from preparing the talk you know it's like you have when you have something in in your mind like there's a deal that line but you're trying to uh how do you say for cascades for cascation from what you're going to do it's like okay i'm, I'm skipping away from preparing it. So in the end, I think, okay, maybe that's just solve this problem. If I could use my knowledge as a content developer to build something that's, build a tool, build a better slide tool that's with the technique,
Starting point is 00:04:57 with the technology I'm familiar with. And in that way, I could also like doing like syntax highlighting and maybe also having some interactive components, which would be relatively hard if you want to do it in Keynote or something. So that's how I started. And then I also find there's a way, it's like I have a,
Starting point is 00:05:19 I don't know if it's a perfectness, and it's like I try to keep everything aligned and I feel very, I don't know, itchy when some like two texts is not aligned. So I spend a lot of time like align styles, align text. And you know, that's the benefit of Keynote is like you can drag and drop. You don't need to write a single line of code. That's very great. But sometimes like it's easy to misalign a lot of things. So then I think, okay, the first thing I don't want to be bothered by those stylish things when I'm thinking about the content.
Starting point is 00:05:52 So usually I will start a markdown to write about my thoughts and the outline of my talk. And then I think, okay, how about let's just make it as a part of your slide, right? So you can prepare the content and you do a lot, a little bit like organizations and you slice them into different sections and then directly becomes a slide. So that's how it works. And I'm actually surprised to hear that you are not a front-end developer, but you enjoy using it because I was marketing it as... I was titling it as a slide
Starting point is 00:06:28 for developers because I was trying to solve the problem that developers have in tech talks. And also, I don't want to make it as a keynote as what you see and what you get, which is super difficult to get. Well, that's because we have all the capabilities of
Starting point is 00:06:44 web. So if you are a front-end developer, you can have basically a full canvas for you to play whatever you want. So I was imagining that that's for mostly front-end developers and surprised to hear that you're also enjoying that. I don't do front-end at all. I had one talk that crossed over into the front end space i think in 2017 or 2018 i gave a talk terrible ideas and get which is a universal form of shared
Starting point is 00:07:12 suffering that developers of every stripe can appreciate and i was invited to give it at the front end conference in zurich which was a fantastic experience i've been giving the talk in the early afternoon and every person's slides who went before me were gorgeous. They were just these beautiful, artful things. And I had at that point, this is before I had a custom theme done, I was doing this just in Helvetica text in black on a white background. And I have two hours to improve it. So what do I do? Well, I changed the font over to Comic Sans. Because if you're going to have bad design, lean into that bad design in some
Starting point is 00:07:47 of the worst possible ways. It hadn't occurred to me until you just said this, but the biggest pain with giving that talk was swiping back and forth between the slides and the demos that I had rigged in a series of Docker containers that I would just show people from the terminal. Duh! I could embed
Starting point is 00:08:03 exactly that into SlideDev now and not have to leave the app at all. That is absolutely something that would transform how you could do technical demos. It's honestly part of the reason I stopped doing a lot of technical demos, just because it's so hard to bobble back and forth between this is the presentation slide,
Starting point is 00:08:22 now we're looking at this thing in the terminal, and people forget that in terminal, when you have a dark theme, it looks great on a monitor, but crappy on a bunch of projectors. I mean, you even have a simple toggle in the presenter display to go between light and dark mode, assuming the theme supports it. I mean, you thought of basically everything that I would want from a slide framework system. The hardest part, as you say, for me at least, is understanding how front-end works. CSS, as far as I can tell, is dark magic.
Starting point is 00:08:51 Yeah, I mean, CSS is hard. And even, I don't know, even for a senior content developer, it's still magic. And you don't really expect what the outcome is. And also, it behaves different on different processes and also i think that's basically a good side effect of like creating slider in that way it's like you kind of having a good separation of your content and your style and so you can apply a scene
Starting point is 00:09:19 with the exactly same content but because it's Markdown, so you move each element, and it can style each element with CSS coming from the theme, or it can also have JavaScript having some interactive components. So the same content or same slide, which is the slide.md Markdown file, that you can change the theme from matter,
Starting point is 00:09:42 and it can directly change how it looks without changing any content of it. So that decouples from the content and the style, which is some of the slightly users kind of enjoying that kind of features. Yeah, the biggest challenge I've had with it is, I think just captured in what you said a minute ago, where this is envisioned as being something
Starting point is 00:10:02 that is aimed squarely at front-end developers, which I am very much not. So there's a lot of things that are instinctively, I think, understood in the documentation when you talk about these things that I, without having any experience in front-end myself, I struggle with. And I feel like, am I missing something? Is there a documentation issue here somewhere? I feel like I need missing something is there a documentation issue here somewhere I feel like I need to start sitting down with folks who know what's going on in this and then submit an absolutely massive pull request to the documentation to basically explain it to people who have never worked with some of these concepts before because I can't shake the feeling
Starting point is 00:10:38 that this is sitting this is sitting on something transformative here easy example is that there's a you have the slides, you have a global top and a global bottom option that get rendered in view when creating these things. Something I'm still not entirely clear on, because remember, I'm bad at CSS, is when you say top, are we talking along the Y-axis or are we talking the Z-axis
Starting point is 00:10:58 as far as what is in front of the slides as an overlay and behind it? Are we talking literal top as in the highest point on the screen on your desk and bottom being the thing next to your keyboard? Yeah, I never thought about that way. Yeah, it's a Z-index. So top is above all your content and bottom is underneath all your content. And the thing, it can be useful in a few cases. It's like, for example, if you want to have a shared component, like a footer to show the page, that you can do it with a top, for example.
Starting point is 00:11:33 We also see that people are doing crazy things. And I have a friend that he made, like connecting his mic to a local deployed AI whisper to transcribe speech to text and then display the subtitle at the real time, the caption with the global top. So it always shows some components with the word that he was saying with that component.
Starting point is 00:12:03 And the components, global top and global bottoms, they are singleton. So when you change the slides, they still keep the same. They still keep in the same position and you can share all the temporary data as all the states are shared. So that's how it's supposed to do. One of the challenges I ran into was that my existing theme
Starting point is 00:12:24 that I've been using in Keynote for ages has something like 25 different slide templates in it. But a lot of them are simply the same layout with different color filters. In some cases, it's a different resolutions. In some cases as well, there are different title slide options. There are different section breaks and the rest. But so many of these elements get reused that it feels like just doing a straight implementation of those things into, all right, time to build out 25 different slide layouts is just an absurd way to think about it. Incidentally, you are the only thing I have found in this entire space that really does layouts properly, which is this is going to be a full screen image slide, maybe with some words over the top of it. This next one is going to be a list of some text on the left side and image on the right or vice versa. And it's it has a framing already there in place. All you have to do is point at the right image file and you're off to the races.
Starting point is 00:13:18 That idea of using AI for a live transcript of that is genius. There's a button you can click in this thing that automatically pops up, fires up your camera and drops it into, by default, the lower right corner that you can just drag and drop and put anywhere on the screen. So if you're doing this, presumably for some sort of live stream type of event, just every time I look at this thing, I come away astounded, first, that it exists. And secondly, that this is an open source offering and not a paid product. I keep expecting to stumble over the upsell opportunity. And now here's the commercial version of it, but I haven't seen it. I really enjoy open source in a way. I want to work in open source full-time. And that's
Starting point is 00:14:00 how I did. I mean, my company is generous enough that they are an open source company. So my team, what I'm at is like, I'm working full-time on open source. And also I think that to not make it as a product, a commercial product, actually, I don't know, for myself, it's like I kind of save a lot of energy to kind of doing the management or like doing the stuff of commercial stuff.
Starting point is 00:14:28 Well, I also make it more general available to everyone and also everyone can benefit from it. And also I can benefit from anyone as well. It's like people send PRs to fix or to improve a lot. And actually a lot of reasons features are driven by the community, by the open source. And if you say that users, that people get these tools for free,
Starting point is 00:14:52 but I also get a contribution for free. And that's the amazing part of open source is that everybody's helping for everybody. And that's something that I really enjoy doing. And that's how Slido will be. I hear you. I come from the open source world myself, and I think we all stand on the shoulders of giants. I am curious how you handle merging in feature requests that don't necessarily align with your vision of things. A recent version that is in the current beta, last I checked, unless there's been a release in the last 10 minutes, because this, I have to say, you are
Starting point is 00:15:28 extremely prolific at putting new features and versions out. There's a, there's a draggable component that took me a minute to understand what it was, but in slide design work, you can drop an object onto a slide by default in some random position you can then move it during the the preparation of the event and then just lock in its position going forward which is amazing i i have a template that always has a background full image that optionally has a speech bubble great that i can wind up putting there with text overlaying the uh the rest of the image but if it's always in the same place it starts to get repetitive so being able to move that around in different ways to predefined places, in some cases to, to, so it doesn't obscure the important part of the image is something that is,
Starting point is 00:16:13 that is incredibly handy. But I also saw you commenting that, well, you don't, or I think it was you that commented, it may have been someone else, because there's a thriving community around this, that the idea is that this is more about flow and being able to generate things on the go and not be incredibly overloaded on one particular theme or one particular, I guess, prescriptive implementation of the content. How do you stand on it? I think that in a way that's making decisions, taking features or not, it's always about trade-offs, I think.
Starting point is 00:16:48 As a maintainer, as a developer, you need to consider what's the benefit of a new feature and what's the cost of maintaining this. And if there is introducing too much complexity, it has a better way to abstract it or extract it as another library so we can use it. And then for us, the complexity goes down because we shift the complexity to the libraries. way to kind of abstract it or like extract it as another library so we can use it and then for us the complexity goes down because we shift the complexity to the libraries and also there's another way to do that you know it can be obvious that you you think this is a
Starting point is 00:17:17 good idea and you can take it but sometimes it's like there's like a ambiguous it's like this feature does seems good but you don't use it, right? And you don't need it. Or it may not be a very good idea or may not be the cost of having these features may not be general enough for everybody to use and probably only fix them specific case, which in a way makes sense,
Starting point is 00:17:41 but we couldn't fix everybody's specific case. So we need to find a more universal way. So I'm thinking that doing software development, especially in open source, from my point of view, is that having a plugin API is really important. So it allows you to have a community that's built around it and while that's having a different opinion to exist and different solutions to exist.
Starting point is 00:18:06 And also, we also have some cases like when some features that we are not certain to merge it into the core project itself, and we encourage people to implement it in a plugin API. And we can improve that plugin API along the way to have more capability for them to do what they want. And also that when they have plugins and then the plugin can be tried by the community as well. And when the plugins or the solution that is mature enough by verified by community to say everybody agree this is a good idea
Starting point is 00:18:42 and the implementation is good, the trade-off is good. And we can probably actually merging these plugins back to the core and everybody can benefit. Well, we don't pay the cost of iterations or trying different ideas. And so because it's been done already by the plugin as a standalone tool, so it's okay for a plugin to introduce breaking change that will be easier to migrate. And so eventually we're going to benefit
Starting point is 00:19:09 the whole ecosystem as well. And also you kind of free yourself from maintaining all the possibility combinations or all the possibility tools for different scenarios. So yeah, that's kind of what I'm seeing, is having a plugin API and also take a balance of doing the trade-off.
Starting point is 00:19:32 Tired of big black boxes when it comes to cloud security? I mean, I used to work at a big black rock and decided I was tired of having a traditional job, so now I do this instead. But with Prowler, you're not just using a tool, you're joining a movement. A movement that stands for open, flexible, and transparent cloud security across AWS,
Starting point is 00:19:56 Azure, GCP, and Kubernetes. Prowler is your go-to-everything from compliance frameworks like CIS and NIST to real-time incident response and hardening. It's security that scales with your needs. So if you're tired of opaque, complicated security solutions, it's time to try Prowler. No gatekeepers, just open security. Dive deeper at prowler.com. One thing that I found interesting is that when I go, in fact, I've mentioned for a long time now, the only two programming languages that I really specialize in are brute force and enthusiasm. It turns out that they can carry you surprisingly far, more far recently with the advent of a lot of the coding assistant work that's being done. As an open source maintainer myself, I get free access to Copilot, but I pay for it in a heartbeat. And I recently got to kick the tires a bit on the new GitHub workspace
Starting point is 00:20:40 component, where it effectively will plan out how to make changes that you define in an issue that are fascinating. It misses a lot of the nuance around some of the front-end work I've noticed. It doesn't seem to be fully aware of the local project's coding conventions. It tends to, oh, I'm just going to implement the same thing 15 different times and ignore instructions, you know, like some of the worst developers I've ever worked with in person. Same type of approach. But it's neat that it has given me enough of a direction and someone to talk to or something to talk to when I get completely stuck and out of my depth where, frankly, I'd be embarrassed to ask the question to a community of, what is a view component exactly and how would
Starting point is 00:21:20 I use one? Well, it turns out the magic robot from the future will talk to me and explain it to me. And unlike Stack Overflow, it won't criticize me for having asked a question that's already been answered or insult me in the answer for not knowing the correct way to ask it. Yeah, that's true.
Starting point is 00:21:36 Yeah, I think that's a very good way to have people to learn stuff and also like to talk to, I don't know, to ask questions i think that's something that's in open source is like we have as a maintainer we have we have limited energy to answer all the questions well that's the boat can solve the problems and yeah i think that's something i think i think for us it's like i'm using Copilot quite a lot. And I actually kind of learned, I don't know, maybe a bad habit to try to type something and wait for it. And wait for a few seconds for Copilot to complete.
Starting point is 00:22:17 And sometimes it does, sometimes it doesn't. So I waste a few seconds just sitting there. And that's an interesting thing. One of the things that really surprised me when I started using Copilot for this sort of thing is when I'm now, instead of using my traditional app that I write things in Markdown as a general rule, I've been using Drafts and trying out Obsidian these days. But now that I'm using VS Code to write conference talks, it starts trying to effectively tab complete some of my conference points that I'm making in the talk, which is funny because I'll periodically be casting shade at Cisco, for example. And it'll come out.
Starting point is 00:22:54 I said once, well, there's a reason that Cisco and it spun for a second spot out. WebEx, rather. Sorry. How do I frame this? I said there's a reason that Zoom and that Tab Completed became a verb during the pandemic and WebEx did not, because Cisco is a sad corporate dinosaur that has no friends and has absolutely no idea what it's doing. It's like, that is exactly the tone of the other stuff I've put in this talk. This is perfect. The challenge, of course, is it also gets repetitive and isn't, for whatever reason, trained on being a polished script writer for a public talk. For some reason, that doesn't seem to be the GitHub's training algorithms approach
Starting point is 00:23:31 to make the building a coding assistant. But it is fun. It's terrific at some of the boilerplate. It's great at, in many cases, intuitively figuring out what goes where. Now I'm tempted, once I get my theme stuff beaten together, to effectively write a slide dev markdown processing tool, maybe in Python or something else, where I can start passing specific things to it.
Starting point is 00:23:54 And it will then, for example, oh, you're calling an image here that is hosted remotely somewhere. I don't trust other people's computers to be working during a talk, and I can't ever trust the internet. So great, it's going to go through, grab that image,
Starting point is 00:24:06 store it locally, and then rewrite the, uh, the path to be the appropriate place for all I know. That's already a plugin. Someone has developed. I just haven't gone deep enough into that piece of it yet. Yeah,
Starting point is 00:24:15 that's totally doable. Yes. And that's also like, I think Copilot is working, you know, it's hard to imagine that's for example, like Copilot or like really similar stuff doesn't work, you know, it's hard to imagine that, for example, like Copilot or like really similar stuff doesn't work in your Keynote or in your PowerPoint yet, right?
Starting point is 00:24:33 And they probably got trying to introduce a lot of things, but still that's, it's quite limited. And also maybe only text books. But for Slider, it's like, because everything is in markdown, and also in one markdown. So Copilot sometimes can provide suggestions based on the content you have, or because it's a plain text.
Starting point is 00:24:54 So it's possible for Copilot to also stress you to provide suggestions to having some links or some element styles that you couldn't really have in a traditional way and that's also quite interesting for me and well that's i actually use a lot for copilot i can i think i can select one paragraph and i can there's like a in vs code there's you
Starting point is 00:25:20 can right click and there's a ask for pilot button and then you can type a font to say improve my sentence or correct my grammars and it can replace that sentence and with the with these suggestions and you can kind of review it and to make some modification that's within your editor within whenever you save is automatically reflects to your slides, which is saving a lot of time if you go back from your tools and copy the paste to charge GPT and going back. And that's actually a very good workflow. I wouldn't imagine this initially. That's not my goal, but it's a good side effect.
Starting point is 00:26:03 One of the things that I find that the coding assistants don't tend to get quite right yet is context beyond what you've just highlighted when you ask it the question. In many cases with slide dev, for example, it will be grabbing a custom layout in the theme that I'm currently working on that in turn overrides the default behavior in the base layout that is in the slide dev included NPM package, which is buried in node modules. But it just sits there and theorizes what might be in those things. It's like, listen, computer, it's on disk. It's right here. Why don't you go check? Isn't that the thing computers are supposed to be really good at? It lacks the project conventions and
Starting point is 00:26:43 context at times. Other times I see things like Google's Gemini or Duet stuff do it reasonably well. So I get the sense this is very much a temporary problem that a year or two from now will sound like an ancient issue that no one thinks about anymore. Yeah, I think that should be the case. It should be temporary, and over time it will get improved, And you should be able to know more context about your project. I'm pretty looking forward to that. One last topic I want to get into before we wind up calling it an episode. What I found fascinating is that you have on the SlideDev page a sponsor this project banner and a bunch of people sponsoring it.
Starting point is 00:27:20 What's interesting to me about that is not that, hey, if you like this thing, give money. Great. Yes, I understand that part of it very well. But the fact that you don't keep any of it yourself, you pass it onward to your dependencies, I believe via open collective. Tell me about that. Yeah. And so, um, that that's, uh, this is some initiative that I'm trying to do recently since very recently. And the case is that, for trying to do recently, since very recently. And the case is like, for example, you know SlideDev. SlideDev has a domain and nice logo, documentations,
Starting point is 00:27:53 and everything is integrated. But I didn't build it on my own, and we didn't build it of our own. I learned a lot of help from the open source community, people helping, sending PR PRs and improving features. And also the project itself is depending on a whole lot of dependencies.
Starting point is 00:28:12 And we use libraries to parse markdowns, and we use Vue to render the things, and we use CSS framework, and we use a lot of things. And we use icons from some designers as well. But when we're talking about Slidy, we're talking as a whole. But to say, even if you sponsor Slido, right? Or if Slido ever had a paid feature, you pay for Slido for the features,
Starting point is 00:28:37 we are not the people that should take all the credit because we are standing on the shoulders of the giant, right? And so there's a whole lot of hidden trees, dependency trees behind the scene may not have a front-facing name or front-facing logo, something that you might be aware of. So what I'm trying to see is
Starting point is 00:28:59 we as front-facing tools and end-users tools that's taking some sponsorship and people's thanks for our work. And actually, we shouldn't take all the monies for ourselves, but also we should help for the dependencies,
Starting point is 00:29:18 those kind of hidden, but still very important, very crucial dependencies to help them to be sustainable in the long term. So I started this collective, an open collective, that we collect the money and we will do, like every month we will forward all our fund
Starting point is 00:29:36 to our dependencies selectively. And we will do the research for you and we will see which dependencies that need more funds and we will do the research for you and we will see which dependencies that need more funds and we will distribute them every month to make sure that if you're enjoying the work we do, like Slido or any other projects I'm maintaining
Starting point is 00:29:56 it, and if you're enjoying that and you sponsor this organization, we will distribute and we will make sure that our dependency can still keep sustainable so as the front facing the top level, the most top level tools that you benefit from. So yeah, I have a blog post explaining more about these situations and how and why we are trying to solve it.
Starting point is 00:30:20 I'm glad you mentioned it. No, we'll definitely throw a link to that in the show notes. Is the best place to sponsor through the GitHub sponsor function? Is it through Open Collective itself? I'm a little behind the times on sponsoring open source stuff, which by the time this airs, rest assured, I will be a sponsor of SlideDev. Yeah, thank you.
Starting point is 00:30:37 And so it'll be the best to directly sponsor Open Collective. And so the case is like, so Open Collective is actually for us is a workaround or it's a platform. But I mean, the initiative is universal. So we're just trying
Starting point is 00:30:56 to do it universally. We do it. But Open Collective, the benefit of Open Collective is like when you forward the fund you have to another organization is fee-free because it's in the same financials. And in GitHub, sponsors is a little bit tricky because it goes
Starting point is 00:31:12 to your bank account and then you pay with your own credit card. So there's some like a round trip going on. So in a way, I think that Open Collective's models fit more for our method of doing the sponsorship. I call it sponsorship forwarding. It's like we take sponsorship, we forward to the dependency. So this way, it's also like Open Collective be very transparent, and you can see how each money is and where it goes. So yeah, definitely check it out. And thank you. Excellent.
Starting point is 00:31:46 You can expect also to, this is the kind of donation you probably don't want. Specifically, you can expect pull requests inbounding from me in the somewhat near future on just some of the documentation stuff. One thing I've found for better or worse
Starting point is 00:32:00 is I am very often the dumbest person in any given room, but that's not a global truth. I'm never the only dumb person who doesn't understand something. So when I encounter a bug that I have to work through, it's rare that I'm the only person that has that experience.
Starting point is 00:32:18 So I'm very interested in seeing what I can do as far as making some of this stuff a little bit more approachable to folks without a front-end background. And it may very well be that this is in no way, shape, or form your target user audience. But man, I'm glad this exists and I want it to continue to exist.
Starting point is 00:32:36 Yeah, thank you. It's not dumb at all. But I mean, yeah, I think it's my fault. It's like I didn't expect. But yeah, thank you. I was thinking that would be very helpful for people from the other background. Yeah, I think I'm probably very biased
Starting point is 00:32:50 in a way. It's like when we're talking about, like when we're trying to explain something, I already have the context that I'm aware of these things happening. But I don't always know that's when the listener have their context
Starting point is 00:33:03 or maybe this can be too detailed or maybe this can be too detailed or maybe this can be too advanced with there's like too much requirements happening and I sometimes would ignore them. So that's definitely helpful. So thank you and thank you for willing to do it. Of course, it's easy to say someone should fix this. Well, be the change you want to see. I am thrilled to throw something foolish into a pull request. If I'm wrong, which happens a lot, someone at least has something to talk
Starting point is 00:33:29 about rather than at least the curse of every author I've ever spoken to of just the empty page with nothing on it yet. So telling a story and it's not quite the right one, you can refine later. Thrilled to do it and looking forward to it. I really want to thank you for not just building the product, but also taking the time to speak with me about it. If people want to learn more, where's the best place for them to find you? My website is antfu, which is the short initial of my ant, ant Anthony, and fu is my surname. And then antfu.me, which is my website.
Starting point is 00:34:00 And you can also find me on Twitter, it's antfu7. And GitHub is antfu. Yeah, so that's basically my ID. Excellent. And we will, of course, put links to that in the show notes. Thank you so much for your time. I appreciate it. Yeah, thank you. Anthony Fu, Framework Developer at Nuxt Labs and creator of the SlideDev framework, as well as several other things. I'm cloud economist Corey Quinn, and this is Screaming in the Cloud. If you enjoyed this podcast,
Starting point is 00:34:27 please leave a five-star review on your podcast platform of choice. Whereas if you hated this podcast, please leave a five-star review on your podcast platform of choice, along with an angry, insulting comment telling me why I'm terrible, presumably in an 80-slide PowerPoint presentation.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.