Svelte Radio
The Svelte Summit Hypisode
We talk about the upcoming Svelte happening of the year: Svelte Summit. On October 18th at 2PM GMT you'll be able to tune-in on the Svelte Society YouTube channel. We have 18 talks lined up. Don't miss it! If you want to get a reminder, sign up to the newsletter.
Show Notes: SVELTE SUMMIT
Transcription:
[00:00:00] KA: Hey, everyone. Welcome to another episode of Svelte Radio. We have a special episode today about the upcoming event, Svelte Summit. But before we begin, we are going to introduce ourselves. So I’m Kevin. I run Svelte School. Then we have Shawn and Antony.
[00:00:19] SW: I’m Shawn. I work at AWS and I recently rewrote my blog in Elder.js. It’s fully done now.
[00:00:27] A: Hi. I’m Antony. I’m the CTO of Beyonk and I’m also a Svelte maintainer.
[00:00:33] KA: All right, cool. Svelte Summit, are you guys excited?
[00:00:37] AJ: A part.
[00:00:37] SW: Very. I’m very excited.
[00:00:39] KA: Awesome.
[00:00:40] SW: Awesome.
[00:00:40] KA: I am as well. We have so many great talks lined up. And compared to the Svelte Society data we had a couple months ago or half a year ago, it was a long time ago. We only got like 12 proposals. But this time we got around 40, so we’re growing. That’s great. I guess we can talk a bit about some of the talks. Let's start with the –
[00:01:06] SW: Yeah. I guess I also wanted to like reflect a little bit on like the journey that we took to get here. Like all three of us, we started Svelte meet ups in the cities that we lived in a year ago. Actually, the first time I came about the name Svelte Society was like at the very first meet up in New York where just kind of like introducing it to people. Then I said like in one year we could have like a – It was like a very tentative question mark, but I knew that the name was right.
[00:01:37] KA: It does work well, yeah.
[00:01:40] SW: So maybe we could’ve bought the domain back then, but I think it all worked out. I didn’t have confidence or faith that I could do it, so definitely like a lot of credit goes to Kev for being the lead organizer for all this. This is amazing that you actually got all these people together and organized all this, so massive kudos to Kev.
[00:02:00] AJ: Absolutely, yeah.
[00:02:01] KA: Thanks. Thank you. It is actually quite a lot of work when you think about it, or rather it's like comes and goes, like the workload. So at times, you have a lot to do and then – For example, this week I’m going to have a lot to do because I have to edit all the talks together into one big talk, and you have to like do the website and all of the stuff. But for next time, we’re probably just going to reuse the website or a variation of it at least. I think it works well. It looks good. Wolfer did a great job on the design as well.
[00:02:38] SW: Yeah, and community conferences are definitely driven by volunteers, and I imagine every framework, every programming language runs into this when they’re just getting off the ground. And it takes people like you, people like us, to just volunteer and not wait for some other person to do it.
[00:02:56] KA: Yeah. It’s very easy to just wait for something to happen. But if everyone does that, it’s never going to happen, right? So it’s a lot of fun as well.
[00:03:07] SW: That's one thing I noticed, like being involved in the community opens a lot of doors. You get to meet a lot of people, talk to a lot of people that you probably otherwise wouldn't have talked to, so that’s also fun.
[00:03:18] KA: Yeah.
[00:03:19] AJ: I also think it’s quite –
[00:03:20] KA: Even the guests that we’ve had on even on this podcast has been pretty good actually.
[00:03:25] AJ: Yeah. No, I think it’s quite new. It’s something to organize and meet up in your town kind of thing. It was difficult for me because it’s not something I’ve really done or thought I could do before. But I think that taking that to a sort of global scale is a lot more difficult, and it’s something that I probably still don’t think I could do. So, yeah, like Shawn says, well done, Kev. I think that’s something that you really sort of pushed the bar there.
[00:03:48] KA: I think it’s funny because in some ways I think it’s easier, and then others it’s harder for some reason.
[00:03:53] AJ: Yeah. It’s the others.
[00:03:55] SW: I was about to say that because when I was – I think we organized like maybe five or six Svelte Society in New York before everything shut down, and I was responsible for booking the venue, like getting everyone in the door. Sometimes, the instructions to get in the building were bad, and then people would be calling me and emailing me. Then at the same time, like being emcee or I try to sort of form out that job but sometimes I’ll be the fall back. Then also speaking because it's hard to find speakers, and then also being responsible for AV like recording it and putting online because I think the majority of the talk’s audience is always going to be online. So they always want to promote the YouTube and all that stuff like that. In one sense, like doing it online gets rid of all the physical stuff, so you can just post it to YouTube.
[00:04:40] KA: Yeah, exactly. So this time around, we also have sponsors. That’s a pretty big milestone I suppose.
[00:04:47] SW: Yes.
[00:04:48] KA: Thank you, Daddy Bezos and – All right, let’s talk about the speakers or rather their talks. I was thinking we could start with Svelte at the Edge, powering Svelte apps with Cloudflare Workers. Have you guys worked with Workers?
[00:05:07] AJ: I haven't. I haven't, no.
[00:05:09] KA: I think they’re sort of like – I guess you could call them just serverless functions with a twist because they’re like web workers.
[00:05:19] AJ: Yeah, it seems like title functions that sort of a lot like serverless are like on other platforms but more like kid of – I guess they have a lot less power than a real serverless function, but it makes them ideal for just sort shipping out to edge nodes everywhere.
[00:05:35] KA: I think this talk is by Luke Edwards and I think he’s going to talk about server-side rendering Svelte on the Edge, which is a pretty cool idea. I'm super excited to see it, yeah.
[00:05:49] AJ: I'm always interested in what you can pump into a tiny little function. Low-power device is fascinating to me, so this is kind of like I guess virtual low-power devices, like running your website on a Pi.
[00:06:03] SW: That’s fancy. Yeah, I know. I think having worked in Netlify, Netlify also released – Well, Netlify announced Edge functions recently, which are kind of in a similar category to Workers. The thing I caution people – So like what specifically is less powerful, right? So we’re talking like lower memory. But I think that the main restriction that people should be aware of is that the response time has to be very fast. It used to be acceptable for lambda function or for like a serverless function to respond in 300 milliseconds, and you can go up to 15 minutes if you want to. But for Edge function, you need to respond probably in less than 10 milliseconds or like on that order of magnitude, right? Because everything in there is serving every asset that you request. So if you run a slow-running function, then your website delivery is going to be very slow, which also means that you can do a lot of logic in there. But you can do some, and I think that’s where people are going to push the boundaries.
I just want to caution people. This isn't like let me take one serverless function and just shove it at the Edge, and it will be magically faster. No. Antony’s right. This is a embedded device that it happened to be running closer to your sort of viewer’s location. So you can do things like internationalization, like same URL send people to different managers based on the IP or their browser just sort of headers.
But then also, the thing that Cloudflare is really, really innovating on, which no one else is doing is KV stores and durable objects. So they have compute. That's the thing. That’s workers. But when you add in some form of persistence, so KV stores are eventually consistent, and durable objects are strongly consistent. Then you get to do some things like authentication at the Edge and whatever, like just storing basic bits of data.
[00:07:49] KA: That’s actually pretty interesting. I was this week and I was tinkering with actually doing like building my own authentication service. Yes, I know you shouldn’t do that. But mostly for learning, right?
[00:08:00] SW: Yeah.
[00:08:02] KA: It’s pretty cool because you can store the sessions in KV probably and you can also store like user information, so you’ll have like – Then the thing with Cloudflare is you can just park your domain there and then you would just have your Worker on the route and you automatically get authentication for free sort of.
[00:08:26] AJ: It’s interesting actually. I will say one thing, Shawn. There is another service too in KV, and it’s actually a really attractive proposition. Begin.com are doing it as well. But, yes, it’s something I agree that’s been missing from a lot of providers for a long time. The [inaudible 00:08:40], for instance, doesn't have it and it's so valuable and I think it's a really interesting innovation, like you said.
[00:08:45] SW: The funny thing is that – So Begin’s KV is actually just DynamoDB and like everyone could do this. It’s just that no one's like aggressive enough. Brian LeRoux and Ryan Block at Begin are extremely aggressive with serverless technology.
Then it gets down to like latencies, right? Cloudflare, the marketing that they have with KV is that it’s really sort of distributed, whereas the DynamoDB one I haven't done any benchmarks. It may not be as distributed as CloudFlare’s offering is, with the corresponding impact on latency. But most people don't care, so that’s fine.
[00:09:23] JK: All right. So Svelte at the Edge then. Let’s move onto the next talk, Elder.js. You’re building search engine optimized friendly sites with Svelte and Elder.js. That's a mouthful. Svelte Summit is actually built on Elder.js.
[00:09:39] SW: Really?
[00:09:40] KA: Yeah. I had a great time building it. I think Nick is going to pretty much show us how to get started with Elder.js, which is great. It has some concepts that are a bit hard to grasp at first, but that have become clear pretty quickly. I don't know if you have any thoughts on that.
[00:09:58] AJ: I think this is also interesting to me because I don’t have time to experiment with all these new frameworks and sort of engines. As much as I don’t really do video tutorials, I think having a visual tutorial can be really interesting because I definitely want to static generate everything I have, but it's not always easy.
[00:10:18] KA: Yeah. It’s usually that hard.
[00:10:20] SW: The thing about Elder.js is that Nick has a very particular way of thinking. That's the way that he freezes it. I've talked a lot with him as I sort of ran into issues. So you kind of have to like kind of buy into that idea. But otherwise it's very well-written. It’s very well-documented. I have rewritten my sites. It is a lot less js than even my separate site because it's using the islands architecture. It doesn't rehydrate the entire DOM, even though nothing changes in the DOM. It only rehydrates the parts of the DOM that changes, and I think that's something that Jason Miller at Google is kind of really pushing. So this will be an important crowning of Elder.js as a real thing.
[00:10:58] AJ: Yeah.
[00:10:58] KA: Yup. It’s going to be awesome. All right. But then we have REPLicant by Peter Allen. The in-house penguin you could also call him I guess.
[00:11:09] SW: He has a real name. I thought we’re not – I thought we just –
[00:11:12] KA: Yeah. I don’t know if he does.
[00:11:14] AJ: He uses it for talks I believe. It’s like he’s talking. It’s like his talk name. I’m not sure it’s his real name. It’s just like a pseudonym for talks.
[00:11:21] SW: I’m not –
[00:11:21] KA: I’m not sure it’s the real picture as well.
[00:11:24] SW: Yeah. I think he just hires the guy to play him but he’s actually a penguin.
[00:11:30] AJ: That’s a sneaky move. Yeah, a pen name.
[00:11:31] KA: I think this talk is going to be on how you pretty much build a REPL, which is something I have no idea how to do. And it sounds super advanced, so that's going to be a lot of fun.
[00:11:46] SW: Isn’t there ongoing work to spit out the REPL from the Svelte site?
[00:11:49] AJ: It’s kind of already split up because a REPL – I mean, it’s I can’t remember what it’s called – like, that but it’s already split out, and somebody actually opened a PR of the document exactly how to set up an isolation, which is really good because it is tricky to do that.
[00:12:03] KA: Yeah. I’m using it on Svelte School But I got the idea from one of Peter's talks. He used the REPL in one of this talks, so I kind of just copied the way he did it sort of, and it works.
[00:12:16] SW: He’s one of these developers that builds just like very impressive projects to serve his own needs. Then you find it and you’re like, “How come this is not better known?” So I think hiss Bristol. I think, that was his talk at Bristol JS or Bristol something.
[00:12:32] AJ: Bristech.
[00:12:33] SW: Bristech. I highly recommend people check out that talk because he made his own slide deck because that's what developers do with the REPL embedded inside, with live reloading and all that. Yeah, and [inaudible 00:12:45] was also really good. Look at the ducks and look at the penguin walking around. Pretty exciting any time penguin puts out stuff.
[00:12:52] KA: Yeah. Super satisfying to go to the website and look at the penguin walk back and forth for sure.
[00:12:57] SW: It’s so cute.
[00:12:59] KA: All right, so next talk. This obviously is my favorite talk, right? Unlocking the power of Svelte actions.
[00:13:06] SW: Yup.
00:13:08] KA: This is going to be a fun one I think. I'm hoping to learn a lot because I love actions. I’m going to learn more.
[00:13:14] SW: Who is speaking inter alia? Who’s that?
00:13:16] KA: This is Kirill Vasiltsov, where I probably butchered his name but yeah. It’s going to be interesting. I'm not entirely sure what we’ll learn about, but it says custom events and extending DOM attributes, sharing animation logic. So that sounds fun.
[00:13:37] AJ: I mean, this is just a guarantee to get picked for the conference, right?
[00:13:43] KA: Picked? Why? No, no, no. He’s guaranteed to be picked because [inaudible 00:13:47].
[00:13:48] SW: This is conference organizer optimization, COO.
[00:13:54] JK: Talk during development.
[00:13:57] SW: I think the more everyone understands the usefulness of actions and the more we congeal on a set of actions that everybody uses, then the more we can sort of build it in, and I’m still hopeful for some built-in actions. Having to look up like click outside and simple actions like that, those are as useful as animations. We should have them built in.
[00:14:17] JW: Yeah, let's – I should probably do like library for the RFC and see if –
[00:14:24] AJ: Yeah, that’s true. That’s true. I’m doing that.
[00:14:25] JK: Something happens with that. If not, then the the library will exist anyway, right?
[00:14:30] AJ: Yeah. So I think that actions are underappreciated because obviously, I mean, that’s super useful there, adding behavior to Svelte without having to actually edit Svelte itself or try and get a sort of PR approved that changes or increases API footprint, which is obviously not something we like doing. But, yeah, unlike animations, you don’t really hear them that often. It’s weird and I guess the reason being you can do the stuff you do in actions outside of actions. But you really shouldn't because it's just great to have it as a sort of reusable tool. I think that having a talk on that is going to really benefit people because it will help them understand exactly how easy it is because it really is a few lines of code to essentially you always svelte it into something that does your bidding, rather than having to try and work within its constraints.
[00:15:14] KA: The Zen of Svelte by Morgan Williams.
[00:15:18] SW: What is that?
[00:15:19] KA: This is interesting. So he feels that svelte is the most Pythonic front-end framework-ish kind of. Yeah, I don't know much about Python. Let’s see what this is about.
[00:15:35] SW: There's a popular sort of rules. I think every major language has these like the Zen of Python or like the rules of Java or something. I think Zen of Pyhton is probably the most one-on-one. I mean, I struggle here with like the analogy because Python is a very different animal, but it’s also a language, and sometimes you could probably draw some useful rules. So this is a lightning talk, right? That can be a prick.
[00:16:03] KA: I don’t remember actually. I think so, yeah.
[00:16:05] AJ: Is it?
[00:16:06] KA: Yeah. It is.
[00:16:09] SW: The Excel sheet.
[00:16:10] AJ: I mean, Python is one of these things that gets continuous hype, even though it’s sort of one of the eldest languages that’s there really that’s still unused today. So it's interesting to see how this sort of relates to something that's relatively quite new.
[00:16:25] JW: All right, next talk. Introduction to Svite or Suite.
[00:16:29] AJ: I don’t know, yeah. Or Svite or Svite. I don’t know what it’s called.
[00:16:32] KA: I guess we’ll learn at the talk, right? So Dominik is going to talk about how to use Svite pretty much and what you can do with it. It’s also lightning talk.
[00:16:43] SW: Yup. For those who might want to prepare for this, check out Vite from Evan You from the Vue ecosystem. It’s spelled V-I-T-E. Basically, it’s one of those DEV tool bundlers that doesn't bundle during development but then bundles during production, and that kind of gives you the benefit of hot reloading extremely quickly. It’s because you don’t have to rebuild the whole thing. But then in production, you can still build. And I think Evan You kind of built it out for Vue and React, and then Dominic kind of built the Svelte plug-in and then called it Svite.
[00:17:14] KA: Yeah. It’s actually really nice to work with. You get up and running really quickly.
[00:17:19] SW: I’ve haven’t used it that much and I probably should use it more. It’s just that like I always want to go straight to Sapper or Elder, the static rendering thing.
[00:17:27] KA: Yeah. But for like small applications, it’s like if you want to make – It probably works for bigger ones as well. But if you just want something up and running, it’s great.
[00:17:36] SW: The other thing I want to really get into is this –
[00:17:36] AJ: I mean, I use it for docs.
[00:17:39] SW: For docs, yeah. That makes sense. There is Svelte docs which I think the React ecosystem really benefits from having a tool like DocuSource which has kind of really taken over documentation and it's really – I mean, it’s good. It's a good API. Everyone understands it. It has syntax highlighting markdown, like all the standard stuff that you might want out of a documentation solution. I think Svelte probably should try to get towards that. But right now, we have a bunch of different tools.
[00:18:09] AJ: As a newer framework, you’re going to start with a whole bunch of stuff, and then do goodwill to kind of sort of shine and become large, enhanced, and advanced on what they are. So I think it’s totally reasonable that right now you’re going to have 100 ways to do the same thing.
[00:18:23] KA: Yup, sure.
[00:18:24] AJ: Like routing.
[00:18:26] KA: Like routing, yeah. And there's actually going to be a talk about that. We can probably talk about that now. So that's the – It’s a lightning talk about picking a router by Alessandro. He's the guy that wrote one of these routing libraries, so that’s going to be fun. I think there are there are so many routers to pick and choose from.
[00:18:47] AJ: Absolutely, yeah.
[00:18:47] KA: It’s going to be interesting. Yup. Then we have a talk by Ron Oh. I’m not sure how to pronounce that. Names are hard. And the title of talk is The Web à la Mode. So the description is the web is a mouthwatering platform, fashionably served with a side of sweet reactivity. Take a wild ride exploring what it has to offer you and how Svelte ties it all together. This is bound to be a fun talk, right?
[00:19:17] SW: Yeah, it has to be at least from the description. It's a fun title. Maybe Ron is pretty interested in cooking I guess. I don't know what à la mode actually means.
[00:19:27] KA: No. I took a sneak peek at this talk because I do have the talk, so I can actually watch them already. But it does have something to do with food, so that’s fun. I think it's some kind of pancake or something. I'm a bit unsure. Let's see how on Sunday.
[00:19:44] SW: Yeah.
[00:19:46] KA: All right. Then Li Hau’s talk, demystifying Svelte transitions. This is another one of those things that are – You kind of use the built-in transitions, but having custom transitions is interesting. So I think Li Hau’s talk is about how it works under the hood, which is always fun to understand.
[00:20:08] SW: Yeah. His blog has been just how Svelte works under the hood, like you have to buy the handbook.
[00:20:12] KA: Yeah, that’s amazing.
[00:20:14] SW: So he’s really taking this idea and exploring it. I think transitions is one of those black boxes thing. I never know what to put in the options. There’s just a whole bunch of like – I guess it's like CSS like in-line styling or something. But then I don't know how to transition things in and out nicely. I think there's that step change between when I look at the docs and I see all these different transitions, and then I try to apply them in like realistic settings. It just doesn't look great.
[00:20:45] KA: Yeah. Maybe watching this talk will make you understand how to use them as well. I don’t know.
[00:20:51] SW: I remember one time I had a margin collapsing, which is a really bad issue. It would just jump when the transition ended.
[00:21:01] AJ: Talks are really fascinating because it's – I think one of the problems Svelte has is the internals are so complex. It is something that’s so different to anything else really that’s out there, and I think it’s just a great community service provider but really how that it’s just basically just to explain as best as possible in a kind of introductory beginner sense how that all works. So I'm pretty excited about this talk actually because it's definitely something that I need to learn more about, and it seems like an uphill slope sometimes, so yeah.
[00:21:33] KA: All right. So those are some of the talks that we’re going to see at Svelte Summit. We’re going to announce more of them as we get closer, and there’s a mailing list that you can join on sveltesummit.com. Hit the sign up button and you can just enter your email and you will get updates. I’m going to send out the first email today or tomorrow. We’ll see. Yeah, that’s it.
[00:21:56] SW: Extra details as well. You can also hit to the YouTube where we’re going to be putting a premier and you can – If you already use YouTube, you can just hit the sign up or like notify me button or something or hit the bell, like they say, on YouTube. I think it’s YouTube. We have a vanity URL. I think it’s youtube.com/sveltesociety. It’s pretty easy to remember.
[00:22:16] KA: Yeah. And then –
[00:22:18] SW: It’s 2:00 PM, right? Sorry, go ahead.
[00:22:19] KA: Yeah, yeah. On Sunday, 2:00 PM GMT, so that’s – I think you said 10:00 EST.
[00:22:25] AJ: Yup.
[00:22:25] SW: 10:00 EST, 10:00 PM Singapore time. And whatever that is in British time, like 3:00 PM.
[00:22:31] AJ: EST. Yeah, 3:00 PM. But also GMT is UTC, right? So it’s – It’s, ignore all the other time zones. UTC is the only important one.
[00:22:40] KA: Yeah. All right. There’s one thing I saw thing morning that was pretty cool. Someone posted about having rebuilt their site in Sapper going from Gatsby and reducing the amount of code by 40%.
[00:22:53] SW: Wasn’t that you?
[00:22:55] KA: No, no.
[00:22:54] SW: You were reporting someone else.
[00:22:56] KA: Yes.
[00:22:56] SW: Okay. I thought that was you.
[00:22:58] KA: No. That was pretty cool to hear. On that note, let’s end this show, and we’ll meet up again in a couple weeks again and talk about how Svelte Summit actually was. All right.