Skip to main content
The Runtime

The Runtime

By Rafael Kennedy

The runtime is a podcast devoted to asking questions about why we build software the way we do. It has a focus on web development, but will explore widely, looking at how different software is designed, and what makes it great.
Available on
Apple Podcasts Logo
Google Podcasts Logo
Pocket Casts Logo
RadioPublic Logo
Spotify Logo
Currently playing episode

001 - CLSource

The RuntimeJun 25, 2021

00:00
25:60
015 - JT on Nushell
Nov 08, 202130:48
015 - James Long on ActualBudget

015 - James Long on ActualBudget

Rafael is Joined by James Long to talk about ActualBudget, a "privacy focused" personal finance application with some unique technical characteristics. They talk about some of the benefits of offline-first applications from a product perspective, and some of the interesting and unexpected things about developing an application that diverges from the standard Server-Client SaaS model. They also go deep into the weeds to talk about absurd-sql, a project where sqlite is implemented using indexedDB instead of the filesystem as a persistence layer.

James Long on twitter: https://twitter.com/jlongster
Actual Budget: https://actualbudget.com/
Patrick McKenzie: https://twitter.com/patio11
The blog post about absurd-sql: https://jlongster.com/future-sql-web
LogSeq: https://logseq.com/
Yjs: https://github.com/yjs/yjs

Nov 01, 202144:05
014 - Bartek Iwańczuk on deno

014 - Bartek Iwańczuk on deno

Rafael is joined by Bartek Iwańczuk, a core member of the deno team, to discuss some of the things that make deno such an exciting tool for development. They talk about why the team placed such an emphasis on conforming to web platform standards, the decision to move away from typescript in internal deno code, and the delicate balance between creating a new system and tech stack, while not alienating users who love npm and the node ecosystem.

Links:

deno: https://deno.land/
Bartek on Github: https://github.com/bartlomieju
Bartek on Twitter: https://twitter.com/biwanczuk
Design doc where deno opts to use Js for internal deno code: https://docs.google.com/document/d/1_WvwHl7BXUPmoiSeD8G83JmS8ypsTPqed4Btkqkn_-4/preview?pru=AAABcrrKL5k*nQ4LS569NsRRAce2BVanXw#
10 Things I Regret About Node.js: https://youtu.be/M3BM9TB-8yA
Import maps: https://github.com/WICG/import-maps
Rusty V8: https://github.com/denoland/rusty_v8
DNT - Deno to Node Transform: https://github.com/dsherret/dnt
Deno Deploy: https://deno.com/deploy/
Rust: https://www.rust-lang.org/
Boa: https://github.com/boa-dev/boa
Nushell: https://github.com/nushell/nushell

Oct 16, 202131:45
013 - Haad and Mark Henderson on OrbitDB

013 - Haad and Mark Henderson on OrbitDB

Rafael is joined by Mark Henderson and Haadcode to talk about OrbitDB, a distributed database / data mesh for use in peer to peer applications. They talk about what it is like developing in the peer to peer field, talk about developing an oplog CRDT, complain a little bit about safari and browser storage limitations, and discuss how one of the core innovations in developing for p2p applications is finding the capacity to "think in a distributed way".


- https://orbitdb.org/
- Equilibrium: https://equilibrium.io/en/
- Jon Sarkin's Art: jonsarkin.com
- Distributed (c): https://distributedc.org/
- A Post about Watchit: https://dev.to/geolffreym/watchit-2b88
- Watchit App: https://watchitapp.site/
- Mark on Twitter: https://twitter.com/aphelionz
- OrbitDB on github: https://github.com/orbitdb/orbitdb.org
- OrbitDB on Matrix: https://riot.im/app/#/room/#orbit-db:matrix.org

Oct 08, 202130:54
012 - Caleb Porzio on Alpine.js

012 - Caleb Porzio on Alpine.js

Rafael is joined by Caleb Porzio to discuss AlpineJs, a rugged minimal javascript UI framework. They get deep into the weeds about walking DOM trees, event listeners, and performance and benchmarking.

AlpineJS: https://alpinejs.dev/
Fireship.io video: https://www.youtube.com/watch?v=cuHDQhDhvPE&t=26s
Phoenix LiveView: https://hexdocs.pm/phoenix_live_view/Phoenix.LiveView.html, https://dockyard.com/blog/2018/12/12/phoenix-liveview-interactive-real-time-apps-no-need-to-write-javascript
Laravel Livewire: https://laravel-livewire.com
hyperactiv: https://github.com/elbywan/hyperactiv
Lit: https://lit.dev/
Morphdom: https://github.com/patrick-steele-idem/morphdom
Esbuild: https://esbuild.github.io/
Caleb's Course on Making VS Code Awesome: https://makevscodeawesome.com/

Sep 10, 202145:03
011 - Rosano on Zero Data Apps

011 - Rosano on Zero Data Apps

Rafael is joined by Rosano to discuss Zero Data Apps, a category of applications designed not to hold customer data, but to manipulate customer data that is under the customer's control.

Project Cambria (This will be featured on an upcoming episode of the podcast): https://www.inkandswitch.com/cambria.html
Gordon Brander's newsletter: https://subconscious.substack.com/
Linus Lee's website: https://thesephist.com/
Linus Lee's twitter: https://twitter.com/thesephist
Comradery: https://comradery.co/
Hyperdraft: https://hyperdraft.rosano.ca/en/
Joybox: https://joybox.rosano.ca/
Rosano's newsletter: https://cafe.rosano.ca/
Rosano on twitter: https://twitter.com/rosano

There are some audio quality issues with this episode. Hopefully they aren't too apparent, but apologies in advance. 

Sep 03, 202134:25
010 - Paul Frazee on CTZN

010 - Paul Frazee on CTZN

Rafael is joined by Paul Frazee (@pfrazee) to discuss the now-shuttered CTZN peer to peer social network and some of the things it got right and wrong. They also talk about the importance of thinking about governance as we design the systems that govern our lives, and the social contract theory of cloud deployments.

CTZN (the alpha release): https://ctznry.com/
Hypercore Protocol: https://hypercore-protocol.org/
Hyperbee: https://github.com/hypercore-protocol/hyperbee
"The most incredible git blame ever created": https://ctzn.network/dev-vlog
Apple's subversion of privacy: https://www.theverge.com/2021/8/10/22613225/apple-csam-scanning-messages-child-safety-features-privacy-controversy-explained, https://appleprivacyletter.com/
Rust: https://www.rust-lang.org/
WebAssembly: https://webassembly.org/
Deno (again): https://deno.land/
Holochain: https://holochain.org/

Aug 27, 202151:06
009 - Boris Mann on Fission and the Webnative SDK

009 - Boris Mann on Fission and the Webnative SDK

Rafael is joined by Boris Mann to discuss Fission.codes and the Webnative SDK. They talk about the goals behind the webnative platform, and about some of the hard problems that people encounter trying to handle authorization and encryption in decentralized systems, and the ways those are being addressed by fission.


Webnative SDK: https://github.com/fission-suite/webnative

Tailscale: https://tailscale.com/

WireGuard: https://www.wireguard.com/

UCAN (User Controlled Authorization Networks): https://whitepaper.fission.codes/authorization/id-overview

Macaroons (stacked cookies): https://storage.googleapis.com/pub-tools-public-publication-data/pdf/41892.pdf

Simon Willison: https://simonwillison.net/, https://twitter.com/simonw

James Long: https://twitter.com/jlongster

James Long video on Actual Budget architecture: https://vimeo.com/522581747

Geoffrey Litt: https://www.geoffreylitt.com/

Rosano: https://rosano.ca/en/

Rosano on Zero Data Apps: https://fission.codes/blog/building-zero-data-apps-entrepreneurship-rosano/

Remote Storage API: https://remotestorage.io/

OpenCollective: https://opencollective.com/

#BuildSoftwareTogether: https://twitter.com/hashtag/buildsoftwaretogether


Note: The original upload of this episode contained a section of un-edited audio conversation at the beginning of the episode. It has now been removed.

Aug 20, 202132:38
008 - Feross Aboukhadijeh on Wormhole

008 - Feross Aboukhadijeh on Wormhole

Rafael is joined by Feross Aboukhadijeh, the author and maintainer of WebTorrent, StandardJS, and hundreds of other open source projects, to talk about his new file-sending app, Wormhole. Feross gets into the weeds about encryption and threat models, and talks about some of the complexities around creating a simple interface accross many different devices and browsers.

Links to things mentioned in the episode:

- Wormhole: https://wormhole.app/
- Wormhole Roadmap: https://wormhole.app/roadmap
- Wormhole Discord Server: https://discord.gg/de6FscsK5Z
- Chakra UI: https://chakra-ui.com
- Paul Frazee: https://twitter.com/pfrazee
- Socket.dev: https://socket.dev/

Aug 13, 202141:09
007 - Ryan Carniato on SolidJS

007 - Ryan Carniato on SolidJS

Rafael is joined by Ryan Carniato, the Author of SolidJS, a frontend reactive UI library. They discuss some of the similarities and differences between different UI frameworks, and talk about what things SolidJS has taken from react.

- Solid: https://www.solidjs.com/
- Solid Router: https://github.com/solidjs/solid-app-router
- Solid Discord Server: https://discord.com/invite/solidjs
- remix run: https://remix.run/
- replay io: https://replay.io/
- vite: https://vitejs.dev/
- astro: https://astro.build
- Builder IO: https://www.builder.io/
- mitosis (fka JSX Lite): https://github.com/BuilderIO/mitosis
- Miško Hevery: http://misko.hevery.com/, https://twitter.com/mhevery
- StencilJS: https://stenciljs.com/
- GlueCodes: https://www.glue.codes/
- Ryan Carniato: https://twitter.com/ryancarniato

Aug 06, 202146:60
006 - David Luecke (daffl) on FeathersJS

006 - David Luecke (daffl) on FeathersJS

Rafael is joined by David Luecke, the Author of FeathersJS, a nodeJS backend framework that focuses on quickly developing real-time web apps. They discuss some of the way feathers has evolved over time, some of the ways abstracting away boiler-plate can actually result in concretely more flexible and performant products, and how David thinks about the division between core and peripheral modules. David also speaks very excitedly about deno, and some upcoming projects dealing with peer to peer applications.

Links:

- Feathers: https://feathersjs.com/
- Deno: https://deno.land/
- IPFS: https://docs.ipfs.io/
- Fission: https://fission.codes/

Jul 30, 202145:57
005 - Encelo on nCine

005 - Encelo on nCine

Rafael is joined by Angelo Theodorou (aka encelo), An Amiga and demoscene lover, an Arch Linux and 3d graphics enthusiast, and a game industry programmer, to talk about a decade-long passion project called nCine. This interview was inspired in part by an article entitled "Ten years of nCine" that was a retrospective on working on a game engine / library since 2011, and the way the project evolved since it was started.

nCine: https://ncine.github.io/
nCine Discord: https://discord.gg/495ab6Y
Ten years of nCine: https://encelo.github.io/2021-06-21-ten-years-ncine/
ImGui: https://github.com/ocornut/imgui
Nuklear GUI: https://github.com/Immediate-Mode-UI/Nuklear
RenderDoc: https://renderdoc.org/
Tracy: https://github.com/wolfpld/tracy
Tiled Map Editor: https://www.mapeditor.org/
Doxygen: https://www.doxygen.nl/index.html
Spooky Ghost: https://encelo.itch.io/spookyghost

Jul 23, 202129:43
004 - Aviv Beeri on DOME Engine

004 - Aviv Beeri on DOME Engine

Rafael is joined by Aviv Beeri, a hobbyist game developer, and the developer of DOME Engine, a framework for making 2D games using the Wren programming language.

- DOME Engine: https://domeengine.com/
- DOME Engine Discord Server: https://discord.gg/Py96zeH
- Wren Language: https://wren.io/
- Handmade Hero: https://handmadehero.org/
- Aviv on Twitter: https://twitter.com/avivbeeri
- Some of Aviv's games: https://avivbeeri.itch.io/

Jul 16, 202127:45
003 - André Staltz on Manyverse

003 - André Staltz on Manyverse

Part 2:

Rafael is again joined by André Staltz this time to discuss Manyverse, a mobile social media application built upon an open communications protocol called scuttlebutt.

- manyver.se
- Reinventing the social web: https://www.youtube.com/watch?v=8GE5C9-RUpg
- Translating Manyverse: https://manyverse.crowdin.com/manyverse-app

Jul 09, 202139:21
002 - André Staltz on Cycle.js

002 - André Staltz on Cycle.js

Part 1:

Rafael is joined by André Staltz to discuss Cycle.js, a front-end framework built around the principles of functional and reactive code.

- https://cycle.js.org/
- xstream: https://github.com/staltz/xstream
- most: https://github.com/cujojs/most
- https://github.com/staltz/cycle-native-navigation
- https://github.com/staltz/cycle-native-navigation-web

Jul 02, 202127:50
001 - CLSource

001 - CLSource

In this first episode, Rafael is joined by CLSource to discuss how he took over the jasonette project after it's original maintainer disappeared, and they talk about creating a mobile application framework focused on low barriers to entry for small businesses.


Links:

- Jasonelle: https://jasonelle.com/, https://github.com/jasonelle/jasonelle
- Dome Engine: https://domeengine.com/
- Book by Bob Nystrom: https://gameprogrammingpatterns.com/
- Process Wire: https://processwire.com/
- Wren Programming Language: https://wren.io/, https://github.com/wren-lang/wren
- Masonite Framework: https://github.com/MasoniteFramework/masonite
- CLSource on Soundcloud: https://soundcloud.com/clsource

Jun 25, 202125:60
Episode 0 - Introducing The Runtime

Episode 0 - Introducing The Runtime

Hello Everyone! I want to invite you to join me for a new podcast I'm calling "The runtime". Each week I will be joined by people who design, build, and work with software, and I'm going to ask them questions about why they built it the way they did, what mistakes they wish they could go back and change, and what they learned along the way. I hope to keep things bite sized, but to go as deep into the weeds as my guests will take me. So if you, like me, are fascinated by how people solve problems with code, and avoid problems with design, I hope you'll learn a lot from these conversations, and have a lot of fun along the way.

Jun 14, 202100:52