Regular Programming

Regular Programming

By Lars Wikman, Andreas EkerootTechnology
Download on the App Store

Regular Programming episodes

  • About Ending Things

    The End.

    Links

    • LADOK
    • Sanne Kalkman - companies should hire junior developers
    • Münchenbryggeriet
    • The art of gathering
    • Dead dog party
    • Nobody wants this
    • Neon genesis evangelion
    • Ghost in the shell: stand alone complex
    • Serial experiments Lain
    • Hackers
    • Black mirror
    • William Gibson
    • Burning chrome
    • Neil Stephenson
    • The Bridge trilogy
    • s-CRY-ed
    • Fullmetal alchemist
    • Hellsing
    • Samurai Champloo
    • Black lagoon
    41 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.

    Links

    • Power glove
    • Ghost in the shell 2
    • Stand alone complex
    • Unlimited power!
    • For-comprehensions
    • Nerveshub
    • REST
    • Squiggle
    • The lenses paper - Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire
    • Not hot dog
    • Domain-driven design
    • Event sourcing
    • CQRS
    • Saga - event sourcing pattern
    • Data lake
    • Data lakehouse
    • Ecto
    • Penny Arcade - On discomfort
    • Prince of Persia: The sands of time
    43 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.

    Links

    • GPL
    • BSD license
    • MIT license
    • Apache license
    • LGPL
    • AGPL - Affero license
    • OSI
    • Open source licenses tried in court
    • Source-available
    • Cockroach
    • BSL - business source license
    • FOSDEM
    • Oxide & friends on how they handle the CockroachDB thing
    • Forking
    • Terraform
    • Opentofu
    • Elasticsearch
    • Opensearch
    • Redis
    • Valkey
    • The Redis-Valkey-story
    • The XZ backdoor
    • Andres Freund - The Microsoftie who found the issue
    • Visual studio code
    • VSCodium
    • Gitpod
    • code-server
    • Embrace, extend, extinguish
    • Docker
    • Podman
    • Hashicorp
    • Salt
    • Ansible
    • Terraform
    • Stallman
    • Compis
    • Apple II
    • MySQL
    • CLA - contributor license agreement
    • Kelsey Hightower
    • VLC
    • Winamp
    • Slackware
    • Debian
    • Coding freedom - book by Gabriella Coleman (full PDF)
    • FreeBSD
    • Ideell förening
    • Moomin dad
    • Snufkin
    • Pettson
    • Jussi Björling
    • Gramophone player
    46 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.

    Links

    • Alan Perlis
    • A language that does not affect the way you're thinking is not worth knowing
    • Domain-specific languages
    • Rails
    • Phoenix
    • Elixir
    • Erlang
    • Prolog
    • Gleam
    • Elm
    • The CodeBEAM Gleam keynote by Hayleigh Thompson and Louis Pilfold is not out in video form yet
    • Ant (the build system)
    • Bash
    • XLST - Extensible Stylesheet Language Transformations
    • Xquery
    • SAX parser
    • SweetXml
    • Exercism course on Gleam
    • Lustre web framework
    • Sprocket web framework - Gleam-style implementation of Liveview
    • OTP
    • AtomVM
    • Cardputer
    • REPL - read-eval-print loop
    • NIF
    • GHC - the Haskell compiler
    • Lua
    • Dave Lucia and Robert Virding talking about Lua on the BEAM - also not out in video form yet
    • The Konami code
    • Uiua
    • ZFS
    • Evan - creator of Elm - in Kodsnack 604
    • Smalltalk
    • Pony
    43 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.

    Links

    • Rust
    • C
    • D latches
    • Gymnasiet - roughly upper secondary school or high school
    • C++
    • Autotools
    • Autoconf
    • Linux from scratch
    • Slackware
    • Debian
    • Makefiles
    • Bash
    • GNU Make
    • Buildroot
    • Cmake
    • Zig
    • TOML
    • Isaac who does Zigler for Elixir
    • POSIX
    • Win32 API:s
    • Libuv
    • SIMD
    • B-tree
    • Redis
    • Erlang NIF
    • Cocoa - the wild Elixir community member integrating stuff
    • OpenCV
    • Pythonx - run Python from within Elixir
    • Lua
    • Luerl
    • LFE - Lisp flavoured Erlang
    • Fennel - lispier Lua
    • Chicken Scheme
    54 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.

    Links

    • Functional programming
    • Haskell
    • Lazy evaluation
    • Lambda calculus
    • Turing machines
    • Alonzo Church
    • Gödel - "A German guy" who formalized the definition general recursive functions
    • Immutability
    • Pure functions
    • Witchcraft
    • Continuation passing
    • Partial application
    • Currying
    • The ML language family
    • Why the lucky stiff
    • Sam Aaron
    • Sonic pi
    • Roc
    • Clojure
    • AST - abstract syntax tree
    • UV
    • The UV company: Astral
    • Memoization
    • Singleton
    38 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.


    Links

    • Proof of Andreas speaking in public
    • Sverok
    • Beamer - write your slides in LaTeX
    • Lars' Gigcity Elixir talk
    • José Valim
    • Chris McCord
    • Øredev
    • Lars' Øredev talk
    • Lars Lisbon talk - Lively LiveView
    • Code BEAM Berlin
    • Jon Carstens
    • Null modem
    • Erlang clusters
    • Wireguard
    • Open source summit
    • Another brick in the wall
    28 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? 

    Links

    • DX - developer experience
    • Elm
    • Language server
    • Elixir's brand new official language server team unifies the work of the previous separate teams
    • The Elm language server
    • Mix - Elixir build tool
    • Nerves
    • NervesHub
    • Nerves Cloud
    • Buildroot
    • Vintage - network configuration and management for Nerves devices
    • REPL - Read-evaluate-print loop
    • Ccache
    • IEx - Elixir's interactive shell
    • Hyllie
    • Øredev
    • Yocto
    • SKF
    • Bredbandsbolaget
    • NervesHubLink
    • OTP
    • Smalltalk
    • Lisp machines
    • Beam Radio
    • Bryan Hunter
    • Rebar3
    35 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? 

    Links

    • Lönegaranti - wage guarantee
    • Uppsägningstid - notice period
    • Aria
    • Hyllie
    • Øredev
    • Frank Hunleth talking about Nerves
    • Nerves
    • Raspbian
    • Raspberry pi 3
    • Raspberry pi zero
    • Adafruit
    • Inky pHAT e-ink display
    • Lars' ported Inky library
    • Buildroot
    • Yocto
    • NervesHub
    • Josh Kalderimis
    • Travis CI
    • Nerves Cloud
    • Milwaukee
    • Delaware
    • Stripe Atlas
    • Heartbleed
    • Shellshock
    • Stagefright
    • Row hammer
    • CrowdStrike
    • Flickswitch
    • SmartRent
    29 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.


    Links

    • CRUD - Create, read, update, delete
    • Django
    • Ruby on rails
    • Phoenix
    • Ash
    • RethinkDB
    • Mnesia
    • Plausible analytics
    • Timescale
    • Clickhouse
    • Nervesconf
    • Alex McLain
    • Nerves
    • CubDB
    • RocksDB
    • DynamoDB
    • The DynamoDB paper
    • Ecto
    • OAuth
    30 min

About Regular Programming

From the publisher's feed

Conversations about programming. By Andreas Ekeroot and Lars Wikman, funded by Underjord.io.

More shows like Regular Programming

Radiolab by WNYC Studios

Radiolab

43,815 Listeners

Accidental Tech Podcast by Marco Arment, Casey Liss, John Siracusa

Accidental Tech Podcast

2,144 Listeners

Kodsnack by Kristoffer, Fredrik, Tobias

Kodsnack

1 Listeners

Allt du velat veta by Acast - Fritte Fritzson

Allt du velat veta

11 Listeners

Elixir Wizards by SmartLogic LLC

Elixir Wizards

22 Listeners

Thinking Elixir Podcast by ThinkingElixir.com

Thinking Elixir Podcast

32 Listeners

Developers! - mer än bara kod by Madeleine Schönemann och Sofia Larsson

Developers! - mer än bara kod

0 Listeners