Future of Coding cover image

Future of Coding

Latest episodes

undefined
Jun 1, 2023 • 1h 54min

INTERCAL by Donald Woods & James Lyon

This is a normal episode of a podcast called Future of Coding. We talk about INTERCAL, a real tool for computer programming. [Do I need to say more? Will this sell it? Most people won’t have heard of INTERCAL, but I think the fake out “normal” is enough to draw their attention. Also, I find “computer programming” funny. Not sure why I put that in quotes.] Links [at least, the ones I remembered to jot down] The final Strange Loop is coming up this September. Ivan and Jimmy will both be there, though—late breaking news—neither of them will be giving a talk. (“Rocket Rules” apply, if you know what that is.) [Will anyone actually know what “Rocket Rules” is? Will they search for it? That would be sort of embarrassing for me.] If Ivan were to give a programming talk, getting some flood-contaminated gear from DEC or a PDP-11 to use as staging / set dressing might be a challenge. [Yay, another retread of my personal history. Maybe instead of dredging up my past I should be the sort of person who makes new things, like, ever.] Meowmeowbeenz [Gah this show hasn’t aged well. At least I’m sticking to the whole “high-brow + low-brow” personal identity by including the reference to it. [Is “meta” low-brow at this point?]] There’s lots of talk about esolangs (esoteric programming languages), so it’s worth linking the Esolang Wiki. [I worry that we spent too much time focusing on surface syntax. Jimmy tried to get us to talk about the beautifully-weird semantics within INTERCAL, but we never fully went there. I’m sure some people will complain about this lack of depth. Not looking forward to that.] In particular, Brainfuck, which Jimmy adorably refers to as “BF” because he’s a polite gentleman and Ivan is 2% South Park. [Laughing at my own joke.] Also, Shakespeare and Shakespeare: vaulting ambition, Out, damned spot, both from the Scottish play (you don’t know where I am, don’t @ me). [Why are these in the show notes? Am I trying to signal some sort of theatre-literacy? Who cares?] “COMEFROM was eventually implemented in the C-INTERCAL variant of the esoteric programming language INTERCAL” [Considering that this was such a non-element in the original paper, it’s weird that it became such a cornerstone of the episode. “What if we recreated the spirit of the paper in the podcast itself” is a tall order, so I guess we did what we could with what we had. Also, I bet someone is going to object that the paper and language aren’t actually very meta, especially not multiple layers deep, to which I’ll reply: we all bring the flavour of our mouth to the soup we taste.] Exapunks… Yeah! [Speaking of things that haven’t aged well… woof. I like our newer episodes better. Especially this one. THAT’S JUST BAIT FOR THE PEOPLE WHO WILL COMPLAIN THAT THIS SHOW HAS GONE OFF THE RAILS, PLEASE DO CONTINUE TO LISTEN TO THE SHOW.] Our tier list was created in tldraw, because it’s the best. [I wish someone applied Steve-and-co’s eye for detail to a visual programming tool. I wish I had time.] The excellent Advent of Computing podcast did an episode on INTERCAL. (Aside: the AoC website seems a bit busted in non-Chrome browsers, so here’s a backup YouTube link, but you can also just search for Advent of Computing in your podcast player of choice.) [AoC is the exception that proves the rule: there are no high-quality programming podcasts. They all seem so low-effort, made by people who don’t respect the listener’s time and attention. Or they’re aping the high-budget NPR style, with no personality. Also, audio quality is all over the map. Also, just the worst garbage ads and theme music, all of them! I wonder if it’s just a cost-benefit time/energy tradeoff, or maybe people don’t know how to do better? I wonder what we could do to help raise the bar, without opening ourselves up to a bunch of “well I don’t like your podcast either” presumed competitiveness.] The video Screens in Screens in Screens is fantastic, and the sort of thing that deserves our support. Also, Lu Wilson (the human behind TodePond) has their own programming language that will not be named on podcasts, DreamBerd, which uses the ! to great effect. [Meta-commentary intentionally left blank.] Some of the music featured in this episode: All Caps by MF DOOM and Madlib [I don’t even like it when other podcasts include music clips, but then away I go needle-dropping like I’ve got something to prove.] Various songs from Ivan’s old albums. [I need to update my website. I need to tweak my static site generator. I need to redesign all the CSS. I need to consider putting all my projects into a database so I can generate nicer indexes. I also need to make some new projects — especially music.] Get in touch, ask us questions, send us the sound of your knuckles cracking: Ivan: Mastodon • Email [If you don’t have something nice to say, know that I’m very sensitive and nurse wounds for a long time. Also, Nurse With Wound is great.] Jimmy: Mastodon • Twitter [Jimmy doesn’t write these notes so I don’t know what he’s thinking, but I can imagine: a horse galloping in the wind, Jimmy riding shirtless on the horse, Jimmy holding a gigantic tome of philosophical wisdom in one hand, the other outstretched before him, words of revelation flowing from his mouth like honey, “Ivan, the setup to this joke was lame”] Or just DM us in the FoC Slack. [<3] https://futureofcoding.org/episodes/064Support us on Patreon: https://www.patreon.com/futureofcodingSee omnystudio.com/listener for privacy information.
undefined
Apr 1, 2023 • 2h 20min

Out of the Tar Pit by Ben Moseley & Peter Marks

Out of the Tar Pit is in the grand pantheon of great papers, beloved the world over, with just so much influence. The resurgence of Functional Programming over the past decade owes its very existence to the Tar Pit’s snarling takedown of mutable state, championed by Hickey & The Cloj-Co. Many a budding computational philosophizer — both of yours truly counted among them — have been led onward to the late great Bro86 by this paper’s borrow of his essence and accident. But is the paper actually good? Like, really — is it that good? Does it hold up to the blinding light of hindsight that 2023 offers? Is this episode actually an April Fools joke, or is it a serious episode that Ivan just delayed by a few weeks because of life circumstances and his own incoherent sense of humour? I can’t tell. Apologies in advance. Next time, we’re going back to our usual format to discuss Intercal. Links Before anything else, we need to link to Simple Made Easy. If you don’t know, now you know! It’s a talk by Rich Hickey (creator of Clojure) that, as best as I can tell, widely popularized discussion of simplicity and complexity in programming, using Hickey’s own definitions that built upon the Tar Pit paper. Ignited by this talk, with flames fanned by a few others, as functional programming flared in popularity through the 2010s, the words “simple”, “easy”, “complex”, and “reason about” became absolutely raging memes. We also frequently reference Fred Brooks and his No Silver Bullet. Our previous episode has you covered. The two great languages of the early internet era: Perl & TcL For more on Ivan’s “BLTC paradise-engineering wombat chocolate”, see our episode on Augmenting Human Intellect, if you dare. For more on Jimmy’s “Satoshi”, see Satoshi Nakamoto, of course. And for Anonymous, go on. Enemy of the State — This film slaps. “Some people prefer not to commingle the functional, lambda-calculus part of a language with the parts that do side effects. It seems they believe in the separation of Church and state.” — Guy Steele “my tempo” FoC Challenge: Brooks claimed 4 evils lay at the heart of programming — Complexity, Conformity, Changeability, and Invisibility. Could you design a programming that had a different set of four evils at the heart of it? (Bonus: one of which could encompass the others and become the ur-evil) The paper introduces something called Functional Relational Programming, abbreviated FRP. Note well, and do not be confused, that there is a much more important and common term that also abbreviates to FRP: Family Resource Program. Slightly less common, but yet more important and relevant to our interests as computer scientists, is the Fluorescence Recovery Protein in cyanobacteria. Less abundant, but again more relevant, is Fantasy Role-Playing, a technology with which we’ve all surely developed a high degree of expertise. For fans of international standards, see ISO 639-3 — the Franco-Provençal language, represented by language code frp. As we approach the finality of this paragraph, I’ll crucially point out that “FRP”, when spoken aloud all at once at though it were a word, sounds quite like the word frp, which isn’t actually a word — you’ve fallen right into my trap. Least importantly of all, and also most obscurely, and with only minor interest or relevance to listeners of the podcast and readers of this paragraph, we have the Functional Reactive Programming paradigm originally coined by Conor Oberst and then coopted by rapscallions who waste time down by the pier playing marbles. FoC Challenge: Can you come up with a programming where informal reasoning doesn’t help? Where you are lost, you are without hope, and you need to get some kind of help other than reasoning to get through it? Linear B LinearB Intercal Esolangs FoC Challenge: Can you come up with a kind of testing where using a particular set of inputs does tell you something about the system/component when it is given a different set of inputs? It was not Epimenides who said “You can’t dip your little toesies into the same stream” two times — presumably because he only said it once. Zig has a nicely explicit approach to memory allocation. FoC Challenge: A programming where more things are explicit — building on the example of Zig’s explicit allocators. Non-ergonomic, Non-von Neumann, Nonagon Infinity One of Ivan’s favourite musical acts of the 00s is the ever-shapeshifting Animal Collective — of course 🙄. If you’ve never heard of them, the best album to start with is probably the avant-pop Feels, though their near-breakthrough was the loop-centric Merriweather Post Pavilion, and Ivan’s personal favourite is, as of this writing, the tender psychedelic folk of Prospect Hummer. Jimmy’s Philosophy Corner To learn more about possible worlds (“not all possibilities are possible”), take a look at the SEP articles on Possible Worlds, Modal Logic, Varieties of Modality, and the book Naming and Necessity by Saul Kripke. For more on abstract objects (“do programs exist? do numbers exist?”), see the SEPs on Platonism in Metaphysics, Nominalism in Metaphysics, and the paper titled A Theory of Properties by Peter van Inwagen. Music featured in this episode: Jimmy’s Philosophy Corner got a new stinger. No link, sorry. Why does this feel like a changelog? Get in touch, ask us questions, send us old family recipes: Ivan: Mastodon • Email Jimmy: Mastodon • Twitter Or just DM us in the FoC Slack. https://futureofcoding.org/episodes/063Support us on Patreon: https://www.patreon.com/futureofcodingSee omnystudio.com/listener for privacy information.
undefined
17 snips
Feb 11, 2023 • 3h

No Silver Bullet by Fred Brooks

Jimmy and I have each read this paper a handful of times, and each time our impressions have flip-flopped between "hate it so much" and "damn that's good". There really are two sides to this one. Two reads, both fair, both worth discussing: one of them within "the frame", and one of them outside "the frame". So given that larger-than-normal surface for discursive traversal, it's no surprise that this episode is, just, like, intimidatingly long. This one is so, so long, friends. See these withered muscles and pale skin? That's how much time I spent in Ableton Live this month. I just want to see my family. No matter how you feel about Brooks, our thorough deconstruction down to the nuts and bolts of this seminal classic will leave you holding a ziplock bag full of cool air and wondering to yourself, "Wait, this is philosophy? And this is the future we were promised? Well, I guess I'd better go program a computer now before it's too late and I never exist." For the next episode, we're reading a fish wearing a bathrobe. Sorry, it's late and I'm sick, and I have to write something, you know? Links: Fred Brooks also wrote the Mythical Man-Month, which we considered also discussing on this episode but thank goodness we didn't. Also, Fred Brooks passed away recently. We didn't mention it on the show, but it's worth remarking upon. RIP, and thanks for fighting the good fight, Fred. I still think you're wrong about spatial programming, but Jimmy agrees with you, so you can probably rest easy since between the two of us he's definitely the more in touch with the meaning of life. The Oxide and Friends podcast recorded an episode of predictions. Jimmy’s Aphantasia motivates some of his desire for FoC tools. Don’t miss the previous episode on Peter Naur’s Programming as Theory Building, since Ivan references it whilst digging his own grave. Jimmy uses Muse for his notes, so he can highlight important things in two colors — yes, two colors at the same time. Living in the future. For the Shadow of the Colossus link, here’s an incredible speedrun of the game. Skip to 10:20-ish for a great programming is like standing on the shoulders of a trembling giant moment. Mu is a project by Kartik Agaram, in which he strips computing down to the studs and rebuilds it with a more intentional design. “Running the code you want to run, and nothing else.” “Is it a good-bad movie, a bad-bad movie, or a movie you kinda liked?” Ivan did some research. Really wish Marco and Casey didn't let him. Jimmy did an attack action so as to be rid of Brook’s awful invisibility nonsense. Awful. As promised, here’s a link in the show notes to something something Brian Cantrill, Moore’s Law, Bryan Adams, something something. Dynamicland, baby! Here’s just one example of the racist, sexist results that current AI tools produce when you train them on the internet. Garbage in, garbage out — a real tar pit. AI tools aren’t for deciding what to say; at best, they’ll help with how to say it. Gray Crawford is one of the first people I saw posting ML prompts what feels like an eternity ago, back when the results all looked like blurry goop but like… blurry goop with potential. Not sure of a good link for Jimmy’s reference that Age of Empires II used expert systems for the AI, but here’s a video that talks about the AI in the game and even shows some Lisp code. Idris is a language that has a bit of an “automatic programming” feel. The visual programming that shall not be named. When people started putting massive numbers of transistors into a single chip (eg: CPU, RAM, etc) they called that process Very Large Scale Integration (VLSI). Also, remember that scene in the first episode of Halt and Catch Fire when the hunky Steve Jobs-looking guy said "VLSI" to impress the girl from the only good episode of Black Mirror? I'm still cringing. Sally Haslanger is a modern day philosopher and feminist who works with accident and essence despite their problematic past. Music featured in this episode: Never, a song I wrote and recorded on Tuesday after finally cleaning my disgusting wind organ. It was like Hollow Knight in there. Get in touch, ask us questions, send us old family recipes: Ivan: Mastodon • Email Jimmy: Mastodon • Twitter Or just DM us in the FoC Slack. futureofcoding.org/episodes/062Support us on Patreon: https://www.patreon.com/futureofcodingSee omnystudio.com/listener for privacy information.
undefined
Jan 6, 2023 • 1h 55min

Programming as Theory Building by Peter Naur

This is Jimmy’s favourite paper! Here’s a copy someone posted on HitBug. Is it as good as the original? Likely not! Ivan also enjoyed this Theory Building business immensely; don’t be fooled by the liberal use of the “blonk” censor-tone to cover the galleon-hold of swearwords he let slip, those mostly pertain to the Ryle. For the next episode, we’re reading No Silver Bullet by Fred Brooks. Links The Witness, again! The Generation Ship Model of Software Development The philosophy of suckless.org Stop Writing Dead Programs, a talk by Jack Rusher, gets a whole new meaning! Someone rewrote Super Mario 64’s code to run faster and better on original N64 hardware. Music featured in this episode: Speed x Distance = Time by Blonde Redhead from the album In an Expression of the Inexpressible which, upon reflection, is actually not Ivan’s favourite. That’d be Melody of Certain Damaged Lemons. Hey listener! Send us questions so we can answer them on the show. Like, “How do you turn your worms?” Or, “What’s so great about prepromorphisms anyway?” We’ll answer them, honest! Send them here: Ivan Jimmy Or just DM us in the FoC Slack. futureofcoding.org/episodes/061Support us on Patreon: https://www.patreon.com/futureofcodingSee omnystudio.com/listener for privacy information.
undefined
31 snips
Dec 8, 2022 • 2h 20min

Magic Ink by Bret Victor

Before the time-travelling talks, the programmable rooms, the ladders and rocket launchers, we had the first real Bret Victor essay: Magic Ink. It set the stage for Bret's later explorations, breaking down the very idea of "software" into a few key pieces and interrogating them with his distinct focus, then clearly demoing a way we could all just do it better. All of Bret's works feel simultaneously like an anguished cry and a call to arms, and this essay is no exception. For the next episode, we're reading Programming as Theory Building by Peter Naur, with a little bit of Gilbert Ryle's The Concept of Mind thrown in for good measure. Links Four Hundred of the most Chart-Topping Thoughts of All Time: Inventing On Principal Stop Drawing Dead Fish Drawing Dynamic Visualizations Dynamicland Paper Programs by JP Posma was inspired by Dynamicland. "Computers aren't the thing. They're the thing that gets us to the thing." from Halt and Catch Fire Charticulator is Microsoft Research's take on a _Drawing Dynamic Visualizations_-esq tool. Jimmy's Fender Jazz bass looks like this, but red, but like a decade older, but like $600 at the time. We could probably post parts of this episode as Boyfriend Roleplay on YouTube. Fitts's Law is but one thing we've learned about the industrial design aspect of building good software. The Witness is a game where communicating ideas through (essentially) graphic design is the whole entire point of the game. If you haven't played it, know that it comes highly recommended by plenty of folks in the community. A "red letter Bible" is a Bible in which the words spoken by Jesus are colored red, to make them easier to identify. Toph Tucker has a pretty cool personal website. It's rare to see these sorts of sites nowadays, and they're always made by adventuresome programmers, trendy design agencies, or their clients. In the Flash era, it felt like everyone had a website like this, for better and for worse. tldraw is a beautiful little browser-based drawing tool by Steve Ruiz. What few things it does, it does exceptionally well. John while Henry had had had had had had had had had been my preference. #devlog-together is the channel on our Future of Coding slack community where members post small, frequent updates about what they're working on. The (Not Boring) apps are arguably a counterpoint to Bret's theses about information apps and harmful interaction, where the interaction and graphic design are balanced against being maximally-informative, toward being silly and superfluous, to great effect. Did you know there's a hobby horse, but also a hobby horse? I didn't! There are a few examples of folks doing FoC work that, in Ivan's view, align well with the values Bret outlines in Magic Ink: Szymon Kaliski's projects for Ink & Switch, summarized in his Strange Loop talk, Programmable Ink. Mock Mechanics is an environment for building mechanisms by Felipe Reigosa. PANE by Josh Horowitz inverts the usual node-wire programming pattern by putting data in the nodes and data transformation in the wires. Robot Odyssey was a 1984 game for the Apple II (and some other, lesser systems) in which players would go inside various robots to reprogram them. Music featured in this episode: Wash Machine, from the unfinished 2014 album Sneaky Dances Shaun's Amaj Rebirth, created in November 2022 for a friend named — you guessed it — Shaun. Hey! Send us questions we can answer on the show. Like, "How do you keep bread warm?" Or, "What's so great about concatenative languages?" We'll answer them. Send them here: Jimmy Ivan Or just DM one of us in the FoC Slack. futureofcoding.org/episodes/060Support us on Patreon: https://www.patreon.com/futureofcodingSee omnystudio.com/listener for privacy information.
undefined
Oct 30, 2022 • 1h 13min

Worse is Better by Richard P. Gabriel

Following our previous episode on Richard P. Gabriel's Incommensurability paper, we're back for round two with an analysis of what we've dubbed the Worse is Better family of thought products: The Rise of Worse Is Better by Richard P. Gabriel Worse is Better is Worse by Nickieben Bourbaki Is Worse Really Better? by Richard P. Gabriel Next episode, we've got a recent work by a real up-and-comer in the field. While you may not have heard of him yet, he's a promising young lad who's sure to become a household name. Magic Ink by Bret Victor Links The JIT entitlement on iOS is a thing that exists now. Please, call me Nickieben — Mr. Bourbaki is my father. A pony is a small horse. Also, horses have one toe. Electron lets you build cross-platform apps using web technologies. The apps you build in it are, arguably, doing a bit of "worse is better" when compared to equivalent native apps. Bun is a new JS runner that competes somewhat with NodeJS and Deno, and is arguably an example of "worse is better". esbuild and swc are JS build tools, and are compared to the earlier Babel. The graphs showing the relative lack of churn in Clojure's source code came from Rich Hickey's A History of Clojure talk. To see those graphs, head over to the FoC website for the expanded version of these show notes. Some thoughts about wormholes. futureofcoding.org/episodes/059Support us on Patreon: https://www.patreon.com/futureofcodingSee omnystudio.com/listener for privacy information.
undefined
19 snips
Sep 20, 2022 • 1h 58min

Structure of a Programming Language Revolution by Richard P. Gabriel

Today we're discussing the so-called "incommensurability" paper: The Structure of a Programming Language Revolution by Richard P. Gabriel. In the pre-show, Jimmy demands that Ivan come right out and explain himself, and so he does, to a certain extent at least. In the post-show, Jimmy draws such a thick line between programming and philosophy that it wouldn't even look out of place on Groucho Marx's face. Next episode, we will be covering the Worse is Better family of thought products, so take 15 minutes to read these three absolute bangers if you'd like to be ahead of the game: The Rise of Worse is Better by Richard P. Gabriel Worse is Better is Worse, definitely not by Richard P. Gabriel Is Worse Really Better? by Richard P. Gabriel Links Phlogiston Theory Phlogiston the excellent chiptune musician. Bright Eyes - First Day of My Life, by Conor Oberst. Not to be confused with Conal Elliott, who introduced the original meaning of functional reactive programming in his work on Fran. Peter Gabriel - Games Without Frontiers Pilot: A Step Toward Man-Computer Symbiosis Jimmy's talk Paradigms Without Progress: Kuhnian Reflections on Programming Practice There's some sporadic discussion of Philip Wadler (who Ivan playfully calls "Phil"), specifically his claim that programming languages have some bits that are invented and some bits that are discovered. While we're here, make sure you've seen the best 15 seconds in Strange Loop history. Peter Naur's Programming as Theory Building Sponsors CarrotGrid — They don't have a web presence (weird, hey?) but they're working on an interesting problem at the intersection of data, so listen to the short ad in the episode to find out more. St. Jude Children's Research Hospital — Instead of running our usual sponsors today, we'd like to direct your attention to this humanitarian cause. September is Childhood Cancer Awareness Month, and our friends (can we call them that?) at Relay.fm are running a pledge drive. If you have any spare coins in your couch cushions, or a few million left over from your last exit, you'd be hard pressed to find a more deserving way to invest them. Donate here. Show notes for this episode can be found at futureofcoding.org/episodes/58Support us on Patreon: https://www.patreon.com/futureofcodingSee omnystudio.com/listener for privacy information.
undefined
22 snips
Jul 18, 2022 • 2h 45min

Personal Dynamic Media by Alan Kay & Adele Goldberg

Alan Kay, co-creator of the Dynabook, and Adele Goldberg discuss the benefits of visual programming, exploring glitches in Game Boy, physical book design concepts, communication in software systems, societal complexities, computers as a meta medium, balancing present usability with future potential, children's computer preferences, computer animation evolution, creativity of kids using Smalltalk, limitations in paper evaluation and music composition tools, and the challenges in early music software.
undefined
19 snips
Jun 6, 2022 • 2h 12min

Augmenting Human Intellect by Doug Engelbart

symbol-manipulation.comcollaboration.comthought-experiments.orgbehaviorism.comtheatre.jssystem.orgevolution.capithy.comreplit.comsummary.co.ukcringe.netfutureofcoding.orgprogramming.comSupport us on Patreon: https://www.patreon.com/futureofcodingSee omnystudio.com/listener for privacy information.
undefined
18 snips
Apr 12, 2022 • 2h 23min

Man-Computer Symbiosis by J.C.R. Licklider

Jimmy Miller joins the show as co-host. Together, we embark on a new series of episodes covering the most influential and interesting papers in the history of our field. Some of these papers led directly to where we are today, and their influence cannot be overstated. Others were overlooked or unloved in their day, and we revive them out of curiosity and wonder. A few even hint at an inspiring future we haven't yet achieved, placing them squarely in line with our community's goals. We give these papers all the respect and deep reflection they deserve and, perhaps, the occasional kick in the shins. Today's paper is titled Man-Computer Symbiosis, authored by J.C.R. "Licky" Licklider in 1960. The title sure is outdated — but how have the ideas aged in the eternity since it was published? Listen on to hear your two hosts figure that out, and delight at just how wildly right and wrong some of its predictions turned out to be. Thank you to the following sponsors, all of whom are doing important work in our field, and all of whom want to hire you to do even more of it: Theatre.js — Enabling designers to code, programmers to design — empowering everyone to create. Glide — Anyone can make their own apps, with a GUI builder backed by a spreadsheet. Replit — An online REPL-driven dev environment with all the batteries you could ask for. (I keep hearing about more and more people in our sphere landing jobs at these co's — high-fives all around!) Show notes for this episode can be found at futureofcoding.org/episodes/55Support us on Patreon: https://www.patreon.com/futureofcodingSee omnystudio.com/listener for privacy information.

Get the Snipd
podcast app

Unlock the knowledge in podcasts with the podcast player of the future.
App store bannerPlay store banner

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode

Save any
moment

Hear something you like? Tap your headphones to save it with AI-generated key takeaways

Share
& Export

Send highlights to Twitter, WhatsApp or export them to Notion, Readwise & more

AI-powered
podcast player

Listen to all your favourite podcasts with AI-powered features

Discover
highlights

Listen to the best highlights from the podcasts you love and dive into the full episode