Runtime Arguments

Jim McQuillan & Wolf

Conversations about technology between two friends who disagree on plenty, and agree on plenty more.

  1. 18 DE ABR.

    26: Why You'll Never Switch Editors (And What You're Missing)

    You already have an editor. You already love it. Nothing we say is going to change that — and we know it. But your editor shapes how you think about editing, which means there are problems it could solve for you that you've never even thought to have. We walk through the real differences between editors, IDEs, and the technologies underneath them — TreeSitter, LSPs, the Debug Adapter Protocol — and talk honestly about what actually matters: syntax awareness that doesn't break, language intelligence that works across editors, and where AI fits into all of it. No editor wars, no winner declared. Just two guys who've been doing this for decades explaining why the landscape looks the way it does. What we cover: The spectrum from Notepad to full IDE — and where VS Code actually fallsModal editing (Vim, NeoVim, Helix) vs. chord-based editing (Emacs) vs. point-and-click (the entire rest of the world)TreeSitter: why regex-based syntax highlighting is broken and what replaced itLSPs: the protocol that turned simple editors into language-aware toolsEditors as complete environments — Emacs, Smalltalk, and the "world" conceptAI integration: editor-first (Cursor, VS Code) vs. AI-first (Claude Code)Muscle memory, sunk costs, and why switching editors is like moving to AustraliaCan JetBrains (or any company that lives on editor/IDE sales) survive when free tools keep getting better? Links: TreeSitter (https://tree-sitter.github.io/tree-sitter/) — incremental parsing library, originally built at GitHub for AtomLanguage Server Protocol (https://microsoft.github.io/language-server-protocol/) — the protocol that decoupled language intelligence from editorsHelix (https://helix-editor.com/) — modal editor with TreeSitter and LSP built inAlabaster theme (https://github.com/tonsky/sublime-scheme-alabaster) — Tonsky's minimalist syntax theme that highlights what mattersXKCD #927: Standards (https://xkcd.com/927/) — the comic about inventing yet another standard (re: IPv8)Hosts: Jim McQuillan can be reached at jam@RuntimeArguments.fm Wolf can be reached at wolf@RuntimeArguments.fm Follow us on Mastodon: @RuntimeArguments@hachyderm.io If you have feedback for us, please send it to feedback@RuntimeArguments.fm Checkout our webpage at http://RuntimeArguments.fm Theme music: Dawn by nuer self, from the album Digital Sky

    1h 16min
  2. 4 DE ABR.

    25: The X Window System and Wayland

    If you've been using Linux on the desktop you almost certainly have been using the X Window System. In this episode we dive into what that is, where it came from and what kinds of choices you have. We get into the toolkits like GTK and Qt and talk about desktop environments like Gnome and KDE. Then we get into the future, namely Wayland. If you want to run an X client application on a remote server, you need to have an Xserver running local. If your desktop is MacOS, you can install Xquartz. If it's Windows, you can install Xming.  If your desktop is Linux, you already have an Xserver running (or maybe you have Wayland, in which case you can run Xwayland). The following command will log you into a remote system where you can run an X client application and have it display on your local desktop: ssh -X user@example.com If you echo your $DISPLAY environment variable, you should see something like: localhost:10.0 That's telling the X client app to send it's data using the X protocol to the your local desktop and proxy it over SSH. The next step is run on an X app. It's easy, just run it: xterm A terminal window should pop up on your local desktop. Hosts: Jim McQuillan can be reached at jam@RuntimeArguments.fm Wolf can be reached at wolf@RuntimeArguments.fm Follow us on Mastodon: @RuntimeArguments@hachyderm.io If you have feedback for us, please send it to feedback@RuntimeArguments.fm Checkout our webpage at http://RuntimeArguments.fm Theme music: Dawn by nuer self, from the album Digital Sky

    1h 8min
  3. 21 DE MAR.

    24: Bayes' Rule - The Formula For Learning Everything

    If you've ever debugged a program, looked for lost socks or tried to figure out why red spots are developing on your skin, then Bayes' rule was almost certainly used to help you on your journey. Even if you don't know anything about it. Humans have evolved to solve problems but along the way, we as a species sometimes fall for traps or fail to consider all the evidence when figuring things out. In this episode, Wolf explains what Bayes' rule is, how we use it and how we could use it better to solve our mysteries. One sentence Bayes' Rule is the formula that tells you how to update what you believe when you get new evidence — it combines what was already true with what you just learned. The math The probability of A given B equals the probability of B given A, times the probability of A, divided by the probability of B P(A | B) = P(B | A) * P(A) / P(B) Key concepts Bayes' Rule — the formula for updating what you believe when you get new evidenceRepresentativeness heuristic — substituting "how well does this match?" for "how likely is this?" (ignoring base rates)Base rate neglect — the tendency to ignore population-level frequencies when evaluating specific casesPrior / likelihood / posterior — what you believed before, how likely the evidence is, what you should believe nowSystem 1 / System 2 — Kahneman's framework for fast intuitive thinking vs. slow deliberate reasoningThe Tom W problem From Kahneman's Thinking, Fast and Slow, Chapter 14. A personality description that tricks you into ignoring base rates. The Sin of Representativeness — Unearned Wisdom The cab problem Also from Kahneman. A witness, a hit-and-run, and the surprising math of why 80% reliability doesn't mean 80% probability. Kahneman's Bayesian inference example Books: Daniel Kahneman, Thinking, Fast and Slow (2011) — the Tom W problem, the cab problem, System 1/System 2, representativenessSharon Bertsch McGrayne, The Theory That Wouldn't Die (2011) — the history of Bayes' theorem from its discovery through the frequentist wars to its modern resurgenceDouglas Hofstadter, Gödel, Escher, Bach: An Eternal Golden Braid (1979) — a Pulitzer-winning exploration of how self-reference and formal systems connect mathematics, art, and musicErnest Nagel and James R. Newman, Gödel's Proof (1958) — a concise, accessible walkthrough of Gödel's Incompleteness Theorems for non-mathematiciansHistorical: Thomas Bayes (1701–1761) — Presbyterian minister who first derived the theorem; never published it. Richard Price submitted it posthumously.Pierre-Simon Laplace — independently derived and generalized Bayes' work; arguably did the heavier mathematical liftingTools (if you want to go deeper): PyMC — Python library for Bayesian statistical modelingBayes' theorem — WikipediaThinking, Fast and Slow — WikipediaHosts: Jim McQuillan can be reached at jam@RuntimeArguments.fm Wolf can be reached at wolf@RuntimeArguments.fm Follow us on Mastodon: @RuntimeArguments@hachyderm.io If you have feedback for us, please send it to feedback@RuntimeArguments.fm Checkout our webpage at http://RuntimeArguments.fm Theme music: Dawn by nuer self, from the album Digital Sky

    1h 8min
  4. 7 DE MAR.

    23: Containers - What's in the box????

    Containers have become the standard way for deploying applications on servers and the web and sometimes even on the desktop. In this episode we dive into what containers are, how they work, how to build them and what you can do with them. Whether you are using containers in your development environment, deploying on servers in your data center or as a cloud service, containers save time, handle dependencies, increase security and just make things easier and better in so many ways. We discuss several commands to build and run containers and we've included examples here: Dockerfile example: ------------------------------------------------------------------------------------------------------- FROM ubuntu RUN apt update && apt install -y apache2 ENTRYPOINT [ "/usr/sbin/apachectl", "-D", "FOREGROUND", "-k", "start" ] ------------------------------------------------------------------------------------------------------- Build the image using the above Dockerfile:     docker buildx build --tag my_container ./ Run the container:     docker run -p 8080:80 -d my_container Now, point your web browser at http://localhost:8080 (assuming you did this on your desktop) Display a list of running containers:     docker compose ls Attach to a running container and get a shell:     docker exec -it [container name] /bin/bash Stop a container:     docker container stop [container name] Start it running again:     docker container start [container name] Remove a container (after stopping it)     docker container rm [container name] Hosts: Jim McQuillan can be reached at jam@RuntimeArguments.fm Wolf can be reached at wolf@RuntimeArguments.fm Follow us on Mastodon: @RuntimeArguments@hachyderm.io If you have feedback for us, please send it to feedback@RuntimeArguments.fm Checkout our webpage at http://RuntimeArguments.fm Theme music: Dawn by nuer self, from the album Digital Sky

    1h 41min

Classificações e avaliações

5
de 5
3 avaliações

Sobre

Conversations about technology between two friends who disagree on plenty, and agree on plenty more.

Você também pode gostar de