143: Rich Harris - Svelte and Defending the Modern Web

Full Stack Radio

Episode | Podcast

Date: Wed, 22 Jul 2020 14:40:15 +0000

<p>Topics include:</p><ul> <li>What is Svelte and how is it different than other JS frameworks in the space?</li> <li>What special behavior does the Svelte compiler layer on top of vanilla JS syntax and why?</li> <li>Why the lack of render functions in Svelte isn't a real problem in practice</li> <li>What are you giving up when you choose to build your application with something like Rails instead of JavaScript?</li> <li>Why should we be trying to write our applications in a single language, and why should it be JS?</li> <li>What's wrong with striving to write an application entirely in a language like Ruby instead of entirely in JS?</li> <li>Why HEY doesn't really make a good argument against the modern web</li> <li>Thoughts on bundle sizes, code-splitting, and why aggressive code-splitting is still better than frequent round trips to a server-rendered app</li> <li>How Svelte and Sapper handle SSR</li> <li>Why page transitions are the killer argument for building SPAs if we want to be able to compete with native experiences</li> <li>Should we be thinking about JavaScript applications as native applications in terms of offline-support and eventual consistency, or should we keep thinking of them as webpages that depend on the network?</li> </ul><p>Links:</p><ul> <li><a href="https://svelte.dev/">Svelte</a></li> <li><a href="https://sapper.svelte.dev/">Sapper</a></li> <li><a href="https://macwright.com/2020/05/10/spa-fatigue.html">"Second-guessing the modern web"</a></li> <li><a href="https://dev.to/richharris/in-defense-of-the-modern-web-2nia">"In defense of the modern web"</a></li> </ul><p>Supporting the show:</p><p><br />I decided to stop taking sponsors for the show because I think advertisements are annoying and no one wants to listen to them.</p><p>If you do want to support the show, the best way to do it is to purchase one of my products:</p><ul> <li> <a href="https://tailwindui.com">Tailwind UI</a>, a collection of professionally designed, fully responsive HTML components built with Tailwind CSS.</li> <li> <a href="https://refactoringui.com/book">Refactoring UI</a>, a book and video series I put together with Steve Schoger on designing beautiful user interfaces, without relying on a designer.</li> <li> <a href="https://adamwathan.me/advanced-vue-component-design">Advanced Vue Component Design</a>, a course on designing simpler, more flexible Vue components that are both more powerful and easier to maintain.</li> <li> <a href="https://course.testdrivenlaravel.com">Test-Driven Laravel</a>, a massive video course on designing robust Laravel applications with TDD. Learn how to build a real-world application from scratch without writing a single line of untested code.</li> <li> <a href="https://adamwathan.me/refactoring-to-collections">Refactoring to Collections</a>, a book and video course that teaches you how to apply functional programming principles to break down ugly, complex code into simple transformations — free of loops, complex conditionals, and temporary variables.</li> </ul>