44 episodes

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

Regular Programming Lars Wikman, Andreas Ekeroot

    • Technology

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

    About Mingling

    About Mingling

    It seems a mingle is a thing, and not just in Swedish! But what do we want to get out of them, how do we go into them, and how do we create good ones?
    Do you want resonance or hole-poking when you tell people about your plan to arm toddlers with nuclear weapons? Do you want to successfully mingle nerds, or just hit the snacks hard?
    The foood, the cake, the coffee, and the old classmates. Too hot, too loud, too crowded.
    Links

    Mingle (noun)
    Ben Orenstein
    Tuple
    Thougtbot podcasts - The bike shed and Giant robots. Ben was on episode 183 of The bike shed and episode 136 of Giant robots.
    Øredev
    The art of gathering
    The Whova app
    Quotes

    Interesting and fun
    Arm toddlers with nuclear weapons
    We don't trust solutions
    Excitement and resonance
    Intensively and excitedly and indefinitely
    The active rubberduck strategy
    Talking to fish in a barrell
    Successfully mingle nerds
    Hit the snacks pretty hard

    • 37 min
    About Performance

    About Performance

    Performance: we wish the incentives were there to focus on it more often.
    Lars would like more opportunities and incentives to focus on making things fast, rather than just making them not slow. Unfortunately, things tend to line up so that fast enough and more features are in focus. Plus, performance and optimization can be very context sensitive and age out without anyone really noticing.
    Also pondered: IRC, Gentoo, and the eldritch horrors buried within the x86 architecture.
    Links

    Grep

    os.walk() in Python
    Why GNU grep is fast
    Ripgrep
    Ag - the silver searcher
    Travelling salesman problem
    Bin packing
    Mnesia
    ORM
    Project Euler
    Fibonacci numbers

    D. Richard Hipp - the guy behind SQLite

    Changelog episodes with Richard
    XKCD and IRC
    IRC
    IRCCloud
    Matrix and Element
    Elm
    SVG
    Canvas
    Neovim
    Lisp
    Arch
    Nix
    Gentoo
    Funtoo
    Dart
    Flutter

    Skia - the graphics library under Flutter
    Linked list
    Pointers

    CISC - Complex instruction set computer

    RISC - Reduced instruction set computer
    io_uring
    Quotes

    Given up on old man Elixir
    Gotta go fast
    I never really needed it
    Grep, naively
    All the problems at the same time
    Travelling knapsack problem
    My ORM-infected brain
    Measuring things and muttering under my breath
    I have a hobby, I do job interviews
    Tools by toolmakers for toolmakers
    I'm the IRC guy
    Machine-whispering optimization

    • 37 min
    About Developing Speed

    About Developing Speed

    CTOs want the ability to get prototypes built and out into production fast. Others preach the gospel of building things properly. How fast can you be? How much can you perpare before you hit the ice? And one you built and shipped that prototype, how can you get any kind of speed trying to maintain and evolve something where many corners were cut for speed?
    How do we want things to work then? Having an algebra for things might be nice. A sprinkling of interface, things that break noisily, and nice toolboxes to work with structs are all discussed.
    Links

    The Scott - Amundsen race to the South pole

    Accelerate, by Nicole Forsgren
    Parse, don't validate
    Mnesia
    Deep modules
    Pure functions
    Plug
    Elm
    Bruce Tate
    CRC - Create reduce convert
    Ecto
    Roc

    Happy Path Programming. Episode 47 features Richard Feldman and Roc

    Richard Feldman, creator of Roc
    Quotes

    The gospel of building things properly
    The key to speed on the ice
    Before you hit the ice
    Bare maps
    Every step made sense
    The original intent very easily gets lost
    The curse of all software
    Strive for maintainability
    It must not sprawl
    A little sprinkling of interface
    At dawn, we roadmap
    Things that break noisily
    A quantity unitless
    The simple case of HTTP

    • 38 min
    About System Design

    About System Design

    Did they do design, or did they just do a system?
    Distributed systems are hard in many ways. Andreas describes a system communicating between backends and mobile phones in exciting ways with many exciting possibilities for errors. Like data format changes, loss of messages, having 1.5 source of truths, and of course ordering.
    In certain cases, nobody likes an optimist.
    The discussion then moves to discuss the working well-windows for various networking solutions, before diving into WebRTC and finishing up with the various dangers of auto.
    Links

    Recursion
    Eventual consistency
    Pubsub
    RethinkDB
    Event sourcing
    React native
    Android studio

    Mnesia - a "distributed, soft real-time database management system" written in Erlang

    Dirty reads and writes

    Websockets
    QUIC
    UDP
    TCP
    WebRTC
    NAT
    HTTP live streaming
    Lars' ElixirConf talk
    Zoom H4
    Zoom H4n pro
    Quotes

    Working with systems and feeling the pain 
    Coping with system design
    Eventually consistent, on a good day
    Eventually sourced
    A disappointment to work with
    Your internal representation of the user
    This is the shape of the data, deal with it
    1.5 source of thruths
    Oh, it's an optimist
    I don't like optimists at all
    Optimist databases
    Within its working well-window
    Outside of the working well-window
    A crash of servers
    Bad connections over long distances
    I don't do math

    • 38 min
    About Conferences

    About Conferences

    Lars went to ElixirConf EU. Going to a conference can be a credibly incredible experience. Elixir has more clarity than Erlang.
    Lars also gave a talk, a fact he was comfortably uncomfortable with. Giving a talk also comes with benefits such as being able to talk to fish in a barrel. But why did he choose to make the whole talk a demo? What is the goal of it all?
    Gotta build things! Dive in, make stuff.
    Links

    ElixirConf EU
    Lars' conference report blog post
    Code BEAM
    Sverok

    Pieter Hintjens about giving talks by talking to the audience
    Windows 98 (not 95) demo fail
    Lars' presentation code

    Voice Driven Development: Who needs a keyboard anyway? - presentation by Emily Shea
    Hugging Face
    Quotes

    Born during ElixirConf
    Less clarity to it
    Genservers and stuff
    Mainstream Elixir
    Comfortable with that discomfort
    Talking to fish in a barrel
    A buddy from the internet
    The first one I bothered to count
    Your loose coupling to anything
    What do you hypothetically know?

    • 31 min
    About Text Editors

    About Text Editors

    Text editors - which ones do we enjoy, which ones have we used, and what do we actually want and need in them?
    Andreas has read about vim, sed and awk. Lars is quite comfortable in vim, but finds Visual studio code more than acceptable enough. 
    Andreas is excited to show Lars how to use Vim properly. Lars considers advanced setups something of a hellscape.
    Lars has held a lecture about functional programming and wishes to provide a path for new .Net developers (dotnet dots?) to become free software zealots.
    They both share their history of editors.
    There are dreams of ergonomic editing - of code as well as text in general - on mobile devices.
    Any other editors we should be trying? No, but you could hack together collaborative vim editing. 
    Links

    Humble bundle

    Learning the Vi and Vim Editors - book
    Vim
    The Anarchist Cookbook
    Thunderdome
    Monad

    ex - line editor which inspired vi
    ed

    sed & awk - book
    AWK
    sed
    Sublime text
    Zed
    Neovim
    Tmux
    I3
    GNOME
    Pop!_OS
    KDE
    Treesitter
    ElixirLS

    FZF - fuzzy finder for the command line
    Ripgrep
    Functional programming
    Monads
    Fakeroot
    Notepad.exe
    Borland Delphi
    Notepad++
    Eclipse
    Intellij
    Android studio
    Xcode
    Write/Wordpad
    Nano
    Pico
    Gedit
    Kate
    Netbeans
    Atom
    Scratch
    GNU Screen
    Live Share for Visual Studio Code
    Quotes

    Learning violent vim
    Like Thunderdome, but nobody leaves, ever
    I could do that with monads instead
    C's strange cousin
    There's a new sed on the block
    The power of just good enough
    Two terminals beside each other
    It's all a mess in here
    My sword and lots of configuration files
    The dotnet dots
    Quitters don't use Vim
    Real code is done on the server
    Notepad the way I want it to work
    A load-bearing note
    Exciting and fun, and incredibly unsafe

    • 30 min

Top Podcasts In Technology

Lex Fridman
The New York Times
Jason Calacanis
NPR
Ben Gilbert and David Rosenthal
Jack Rhysider

You Might Also Like

Therése & Anton
Kristoffer, Fredrik, Tobias
Lars Wikman
Elixir Outlaws
Madeleine Schönemann och Sofia Larsson
Adi Iyengar, Allen Wyma, Sascha Wolf