Conversations about programming. By Andreas Ekeroot and Lars Wikman, funded by Underjord.io.
Listen to episodes
60 recent
January 20, 2025Episode 6540 min
About Ending Things
The End.LinksLADOKSanne Kalkman - companies should hire junior developersMünchenbryggerietThe art of gatheringDead dog partyNobody wants thisNeon genesis evangelionGhost in the shell: stand alone complexSerial experiments LainHackersBlack mirrorWilliam GibsonBurning chromeNeil StephensonThe Bridge trilogys-CRY-edFullmetal alchemistHellsingSamurai ChamplooBlack lagoon
December 23, 2024Episode 6442 min
About the Least Powerful Abstraction
Imagine Andreas going around making annoying electronic sounds all the time.Strike that. Andreas and Lars discuss using less power - less fancy abstractions - to make things easier to understand. Andreas likes to do a de-powering pass to code.Avoid making something which is more general than is useful.Lars goes into the lure of event sourcing - going for very high data resolution - it might come in handy! - at the cost of a lot of other things - how do we prevent duplicate user names?You've got to love a JSON blob.Finally, Lars derails Andreas' arrow of time and discussion of locking things down early when possible.LinksPower gloveGhost in the shell 2Stand alone complexUnlimited power!For-comprehensionsNerveshubRESTSquiggleThe lenses paper - Functional Programming with Bananas, Lenses, Envelopes and Barbed WireNot hot dogDomain-driven designEvent sourcingCQRSSaga - event sourcing patternData lakeData lakehouseEctoPenny Arcade - On discomfortPrince of Persia: The sands of time
November 25, 2024Episode 6345 min
About Licenses
How do people learn about licenses?If you entered into software in a certain way, it's easy to assume that everyone is a part-time license attorney. But how do other people pick up license knowledge? And what does one really need to know?Licenses underpin open source but seem kind of dull. But they are also a cool and special thing about the software industry.Lars provides his licenses 101 thoughts and looks forward to becoming open source grandpa.LinksGPLBSD licenseMIT licenseApache licenseLGPLAGPL - Affero licenseOSIOpen source licenses tried in courtSource-availableCockroachBSL - business source licenseFOSDEMOxide & friends on how they handle the CockroachDB thingForkingTerraformOpentofuElasticsearchOpensearchRedisValkeyThe Redis-Valkey-storyThe XZ backdoorAndres Freund - The Microsoftie who found the issueVisual studio codeVSCodiumGitpodcode-serverEmbrace, extend, extinguishDockerPodmanHashicorpSaltAnsibleTerraformStallmanCompisApple IIMySQLCLA - contributor license agreementKelsey HightowerVLCWinampSlackwareDebianCoding freedom - book by Gabriella Coleman (full PDF)FreeBSDIdeell föreningMoomin dadSnufkinPettsonJussi BjörlingGramophone player
October 28, 2024Episode 6242 min
About Learning New Languages
Everyone's favorite idempotent podcast returns to discuss learning new languages and concepts. Can mixing and matching new concepts and syntax help or hinder language adoption? A new concept but a familiar syntax might make a language easier for all the drifting Javascript developers to grab on to.Lars considers picking up a lisp at some point.It's harder to pick up new languages when you're mainly keen on building. Lars is very much in a building phase. He has problems, but they are his problems.Lars is currently learning - among other things - by working with other people, putting himself out there, and arranging a conference.LinksAlan PerlisA language that does not affect the way you're thinking is not worth knowingDomain-specific languagesRailsPhoenixElixirErlangPrologGleamElmThe CodeBEAM Gleam keynote by Hayleigh Thompson and Louis Pilfold is not out in video form yetAnt (the build system)BashXLST - Extensible Stylesheet Language TransformationsXquerySAX parserSweetXmlExercism course on GleamLustre web frameworkSprocket web framework - Gleam-style implementation of LiveviewOTPAtomVMCardputerREPL - read-eval-print loopNIFGHC - the Haskell compilerLuaDave Lucia and Robert Virding talking about Lua on the BEAM - also not out in video form yetThe Konami codeUiuaZFSEvan - creator of Elm - in Kodsnack 604SmalltalkPony
October 14, 2024Episode 6153 min
About C
Wherein the wonders of C are explored.But first, let Andreas tell you what's so great about Chalmers' approach to teaching computer engineering. Spoiler: starting with Haskell, close to math.The tooling around C: cultural mystery meat.Lars tries out a shocking plan for a productive framework for C!It's very cool to be able to just poke memory. Memory, arrays, structs, and strings are discussed. Strings are a bundle of fun. Arrays are desugared.Finally, a dive into the wonderful world of interoperability, both with and without C directly involved.LinksRustCD latchesGymnasiet - roughly upper secondary school or high schoolC++AutotoolsAutoconfLinux from scratchSlackwareDebianMakefilesBashGNU MakeBuildrootCmakeZigTOMLIsaac who does Zigler for ElixirPOSIXWin32 API:sLibuvSIMDB-treeRedisErlang NIFCocoa - the wild Elixir community member integrating stuffOpenCVPythonx - run Python from within ElixirLuaLuerlLFE - Lisp flavoured ErlangFennel - lispier LuaChicken Scheme
September 30, 2024Episode 6037 min
About Defining Functional Programming
What is functional programming?Andreas grabs his whiteboard and his Turing machine, and starts from laziness, while Lars thinks of immutability, functions, and data.Is syntax important for being functional or not?The functionalness of various languages are delved into, from Haskell to Rust via Python, Go, and Ruby. And, of course, the evil version of Elixir.A good pipeline can be really nice.Oh, and you shouldn't use witchcraft anymore.LinksFunctional programmingHaskellLazy evaluationLambda calculusTuring machinesAlonzo ChurchGödel - "A German guy" who formalized the definition general recursive functionsImmutabilityPure functionsWitchcraftContinuation passingPartial applicationCurryingThe ML language familyWhy the lucky stiffSam AaronSonic piRocClojureAST - abstract syntax treeUVThe UV company: AstralMemoizationSingleton
September 2, 2024Episode 5927 min
About Giving Talks
Lars wants a less demanding way to prepare for giving talks, but he doesn't have the time right now.Andreas knows a cheat code for public speaking. Lars uses slides like a blunt instrument.How should you wield your slides? How do you weigh information content against entertainment value? Should you try to reach precisely everyone with your talk? Many slides, or few? Lars has the questions, and some of the answers, at least for himself.Last but not least, Lars reveals his current way of preparing for talks. It ideally involves getting quite bored.LinksProof of Andreas speaking in publicSverokBeamer - write your slides in LaTeXLars' Gigcity Elixir talkJosé ValimChris McCordØredevLars' Øredev talkLars Lisbon talk - Lively LiveViewCode BEAM BerlinJon CarstensNull modemErlang clustersWireguardOpen source summitAnother brick in the wall
August 19, 2024Episode 5834 min
About Developer Experience
What are people talking about when they talk about developer experience? Pretty colors in the terminal?What is worth improving, what is not? Lars has thoughts about all of developer experience, not least the one of Nerves. How flaky do you accept, for how fast?Revealed: why all Andreas' Elm programs are one line long.Also: Why not attend the Øredev developer conference in Malmö this November? LinksDX - developer experienceElmLanguage serverElixir's brand new official language server team unifies the work of the previous separate teamsThe Elm language serverMix - Elixir build toolNervesNervesHubNerves CloudBuildrootVintage - network configuration and management for Nerves devicesREPL - Read-evaluate-print loopCcacheIEx - Elixir's interactive shellHyllieØredevYoctoSKFBredbandsbolagetNervesHubLinkOTPSmalltalkLisp machinesBeam RadioBryan HunterRebar3
August 5, 2024Episode 5728 min
About Endings and Beginnings
Andreas' place of work ceased to exist.It was mostly a relief.The main worry is about resting and recovering enough before whatever comes next begins. All the learnings about how not to do certain things live on.The right way of doing those things still remains to be learned.Lars is on the other end of the spectrum: beginning completely new things. Figuring out where exactly Delaware is, finding a Nerves-shaped Elixir hole, wading through Python scripts, and so much more.Also: Why not attend the Øredev developer conference in Malmö this November? LinksLönegaranti - wage guaranteeUppsägningstid - notice periodAriaHyllieØredevFrank Hunleth talking about NervesNervesRaspbianRaspberry pi 3Raspberry pi zeroAdafruitInky pHAT e-ink displayLars' ported Inky libraryBuildrootYoctoNervesHubJosh KalderimisTravis CINerves CloudMilwaukeeDelawareStripe AtlasHeartbleedShellshockStagefrightRow hammerCrowdStrikeFlickswitchSmartRent
July 8, 2024Episode 5629 min
About Non-CRUD
CRUD - a classic term among supposedly simple web apps. But, not always the right move? Not always all that mappable to the actual problem?Discussed: picking spicy architectures, non-CRUD data storage needs, slovely solutions, dirty refunds, and doing the OAuth dance.Hey, thing happened!Finally: a story where pubsub was reasonable, and some telemetry.LinksCRUD - Create, read, update, deleteDjangoRuby on railsPhoenixAshRethinkDBMnesiaPlausible analyticsTimescaleClickhouseNervesconfAlex McLainNervesCubDBRocksDBDynamoDBThe DynamoDB paperEctoOAuth
Is this your show?
Claim this listing to keep it up to date, reach guests who want to pitch you, and manage bookings with Guestify.