Developer Voices

Developer Voices

By Kris JenkinsNewsTechnologyTech News
Download on the App Store

Developer Voices episodes

  • Testing TVs At Scale With Elixir (with Dave Lucia)

    Integration testing is always a tricky thing, fraught with problems setting up the right environment and attempting to control the system’s state. That’s particularly true when you’re dealing with a mix of software and hardware, and even worse when you don’t have control of what the hardware can do.

    This week I’m joined by Dave Lucia of TVLab’s, who’s building systems for testing television software at scale, and it’s a problem that needs a huge variety of techniques to crack it. He’s using cameras, real time video processing, Erlang & Elixir and a host of other tools to make it possible to test a fleet of televisions on demand.

    Sometimes good systems revolve around a single big idea; this time it’s a large combination of solutions, coordinated by the BEAM, that gets the job done.

    --

    TVLabs: https://tvlabs.ai/

    Flipper Zero: https://flipperzero.one

    ATSC 3.0 “NextGen TV”: https://en.wikipedia.org/wiki/ATSC_3.0

    Support Developer Voices on Patreon: https://patreon.com/DeveloperVoices

    Support Developer Voices on YouTube: https://www.youtube.com/@developervoices/join

    Kris on Bluesky: https://bsky.app/profile/krisajenkins.bsky.social

    Kris on Mastodon: http://mastodon.social/@krisajenkins

    Kris on LinkedIn: https://www.linkedin.com/in/krisjenkins/

    1 hr 17 min
  • Programming As An Expressive Instrument (with Sam Aaron)

    Sam Aaron is the creator of Sonic Pi, one of the most unusual software platforms you’ll encounter. It’s a live-coding playground for making music. A tool that lets you write code that defines sounds and musical phrases, and build up a hole program that plays anything from a short bleep to a whole nightclub set. And Sam’s creator has been using it live for years, weaving drum & bass nights out of thin air, all driven by the Ruby-esque he writes.

    In this episode we go through Sam’s career path and design journey as we look at what it takes to make a programming language with enough expressivity and productivity to produce music at the speed of Sam’s imagination.

    --

    Sam’s Sonic Pi Course: https://www.patreon.com/posts/new-introductory-115404746

    Sonic Pi: https://sonic-pi.net/

    SuperCollider: https://supercollider.github.io/

    Overtone: https://github.com/overtone/overtone

    Power Gloves: https://en.wikipedia.org/wiki/Power_Glove

    Web Audio API: https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API

    Tau5: https://www.patreon.com/posts/announcing-sonic-112605951


    Support Developer Voices on Patreon: https://patreon.com/DeveloperVoices

    Support Developer Voices on YouTube: https://www.youtube.com/@developervoices/join


    Kris on Bluesky: https://bsky.app/profile/krisajenkins.bsky.social

    Kris on Mastodon: http://mastodon.social/@krisajenkins

    Kris on LinkedIn: https://www.linkedin.com/in/krisjenkins/


    1 hr 51 min
  • Elm & The Future of Open Source (with Evan Czaplicki)

    Evan Czaplicki—the creator of the Elm programming language —joins me to discuss the state and future of Elm, the friendly, type-safe functional programming language. On many fronts Elm has been a huge success: it’s been popular with new and seasoned programmers alike; it’s helped push several language ideas into the mainstream; it’s been a key part of several successful software businesses and he even found himself employed as a kind of Language Designer in Residence. And yet, the material rewards of a successful open-source project were…lacking. Was he naive? Can an open-source developer stay true to open-source principles and still make a decent living? Is open source being exploited by commercial software businesses? These topics and more tumble out of what has to be the first question in the podcast: What’s happening with Elm?

    --

    Support Developer Voices on Patreon: https://patreon.com/DeveloperVoices

    Support Developer Voices on YouTube: https://www.youtube.com/@developervoices/join

    ElmLang: https://elm-lang.org/

    The Economics Of Programming Languages: https://www.youtube.com/watch?v=XZ3w_jec1v8


    Kris on Bluesky: https://bsky.app/profile/krisajenkins.bsky.social

    Kris on Mastodon: http://mastodon.social/@krisajenkins

    Kris on LinkedIn: https://www.linkedin.com/in/krisjenkins/

    51 min
  • Programmers, ADHD, And How To Manage Them Both (with Chris Ferdinandi)

    This week we’re going to look at the most essential piece of firmware in a programmer’s toolkit - the brain. I’m joined by Chris Ferdinandi to explore what it’s like to be a programmer with ADHD. It’s an unusual topic for the channel, but the more I spoke to him, the more I wanted to know what coding is like when your brain is wired differently, how we can work more effectively with people with ADHD, and critically, how you manage coders with ADHD. And the answer to that comes full circle, in understanding how coders with ADHD manage themselves…

    –

    ADHDFTW Homepage: https://adhdftw.com/developer-voices/

    Do I Have ADHD? https://adhdftw.com/do-i-have-adhd/

    Support Developer Voices on Patreon: https://patreon.com/DeveloperVoices

    Support Developer Voices on YouTube: https://www.youtube.com/@developervoices/join

    Chris on Mastodon: https://mastodon.social/@cferdinandi

    Chris on BlueSky: https://bsky.app/profile/cferdinandi.bsky.social

    Kris on Mastodon: http://mastodon.social/@krisajenkins

    Kris on LinkedIn: https://www.linkedin.com/in/krisjenkins/

    Kris on BlueSky: https://bsky.app/profile/krisajenkins.bsky.social

    1 hr 40 min
  • MicroServices For Better And Worse (with Ian Cooper and James Lewis)

    What have we learned from more than a decade of deploying microservices? Was it a good idea? Are we any better at figuring out what a microservice is, or where its boundaries lie? Does splitting things up create fragmentation problems? And is it too late to put the genie back in the bottle? This week we’re going to look at all these questions and more as we reflect on the lessons learnt from this big architectural idea.

    This interview was recorded live at GOTO Copenhagen, with two microservice experts and thinkers: James Lewis of Thoughtworks and Ian Cooper of JustEat. 

    –

    Residuality Theory: https://leanpub.com/residuality


    Support Developer Voices on Patreon: https://patreon.com/DeveloperVoices

    Support Developer Voices on YouTube: https://www.youtube.com/@developervoices/join


    Ian on Mastodon: https://mastodon.social/@[email protected]

    James on BlueSky: https://bsky.app/profile/boicy.bsky.social

    Kris on Mastodon: http://mastodon.social/@krisajenkins

    Kris on BlueSky: https://bsky.app/profile/krisajenkins.bsky.social

    Kris on LinkedIn: https://www.linkedin.com/in/krisjenkins/

    Kris on Twitter: https://twitter.com/krisajenkins

    48 min
  • Pony: High-Performance, Memory-Safe Actors (with Sean Allen)

    Pony is a language born out of what should be a simple need - actor-style programming with C performance. On the face of it, that shouldn’t be too hard to do. Writing an actor framework isn’t trivial, but it’s well-trodden ground. The hard part is balancing performance and memory management. When your actors start passing hundreds of thousands of complex messages around, either you need some complex rules about who owns and frees which piece of memory, or you just copy every piece of data and kill your performance. Pony’s solution is a third way - a novel approach to memory management called reference capabilities.

    In this week’s Developer Voices, Sean Allen joins us from the Pony team to explain what reference capabilities are, how Pony uses them in its high-performance actor framework, and how they implement a garbage collector without stop-the-world pauses. The result is a language for performant actors, and a set of ideas bigger than the language itself…

    –

    Pony: https://www.ponylang.io/

    The Pony Tutorial: https://tutorial.ponylang.io/

    The Pony Playground: https://playground.ponylang.io/

    Azul Garbage Collector: https://www.azul.com/products/components/pgc/

    Shenandoah Garbage Collector: https://wiki.openjdk.org/display/shenandoah/Main

    A String of Ponies (Distributed Actors Paper): https://www.doc.ic.ac.uk/~scb12/publications/s.blessing.pdf

    Garbage Collection with Pony-ORCA: https://tutorial.ponylang.io/appendices/garbage-collection.html

    –

    Support Developer Voices on Patreon: https://patreon.com/DeveloperVoices

    Support Developer Voices on YouTube: https://www.youtube.com/@developervoices/join

    Kris on Mastodon: http://mastodon.social/@krisajenkins

    Kris on LinkedIn: https://www.linkedin.com/in/krisjenkins/

    Kris on Twitter: https://twitter.com/krisajenkins

    1 hr 14 min
  • Architecting a Rust Game Engine (with Alice Cecile)

    This week we take a look at Bevy, a new game engine written in Rust. And in particular, we look at a core component of Bevy that has something to teach you even if you never write a game: its Entity Component System, or ECS. An ECS is an approach to managing complex systems with large numbers of moving parts, that takes some inspiration from the Relational Database world, and a little from Functional Programming to build something entirely unique and surprisingly high-performance.

    Joining us to explain all is Alice Cecile. She’s part of the Bevy foundation, which is charting a course from data-management and rendering tool to fully-featured game development environment. A journey they’ve made huge progress on, but still expect to take another decade to come to full fruition. We look at the core ECS, and the wider project-management approaches they need to make the journey.

    –

    Support Developer Voices on Patreon: https://patreon.com/DeveloperVoices

    Support Developer Voices on YouTube: https://www.youtube.com/@developervoices/join


    Bevy: https://bevyengine.org/

    Bevy Examples: https://bevyengine.org/examples/

    Flecs (C++): https://github.com/SanderMertens/flecs

    Tiny Glade (game): https://store.steampowered.com/app/2198150/Tiny_Glade/


    Alice on Mastodon: https://mastodon.gamedev.place/@alice_i_cecile

    Kris on Mastodon: http://mastodon.social/@krisajenkins

    Kris on LinkedIn: https://www.linkedin.com/in/krisjenkins/

    Kris on Twitter: https://twitter.com/krisajenkins

    1 hr 19 min
  • Writing a CAD Language in Rust (with Adam Chalmers)

    Given how many languages have been written in C over the years, it’s not surprising to see new languages being written in Rust. What is surprising about this week’s guest is the domain he’s writing for: Computer Aided Design (CAD). Could Rust be sneaking its way into the CAD world too?

    Joining me to discuss the design and implementation of a CAD programming language is Adam Chalmers. He works at Zoo, developing KCL - a language that looks like JavaScript, runs on Rust, and offers users a seamless hybrid experience of both coding and point-and-click modelling. So, how does that all fit together?

    In this episode we look at the design and implementation of a programming language in Rust; how KittyCAD creates that hybrid environment for text-based programming and point-and-click modelling; and how we can learn to write our own Rust-interpreted languages.

    –

    Adam’s Blog: https://adamchalmers.com/

    Adam’s Guide To Writing Parsers: https://www.youtube.com/watch?v=QF3kMyzMC40

    Zoo’s Modelling App: https://zoo.dev/modeling-app

    Mechanical CAD: https://zoo.dev/blog/mechanical-cad-yesterday-today-and-tomorrow

    A Lego brick in KCL: https://zoo.dev/docs/kcl-samples/lego

    Winnow: https://docs.rs/winnow/latest/winnow/

    Nom: https://docs.rs/nom/latest/nom/

    Factorio: https://www.factorio.com/

    Satisfactory: https://store.steampowered.com/app/526870/Satisfactory/

    Crafting Interpreters: https://craftinginterpreters.com/

    Coding in Antarctica: https://brr.fyi/


    Support Developer Voices on Patreon: https://patreon.com/DeveloperVoices

    Support Developer Voices on YouTube: https://www.youtube.com/@developervoices/join


    Adam on Mastodon: https://mastodon.social/@[email protected]

    Kris on Mastodon: http://mastodon.social/@krisajenkins

    Kris on LinkedIn: https://www.linkedin.com/in/krisjenkins/

    Kris on Twitter: https://twitter.com/krisajenkins

    1 hr 23 min
  • Text User Interfaces in Rust (with Orhun Parmaksız)

    For some kinds of application, there is no faster or cheaper way to build a user interface than in the terminal. Sure, it’s not going to suit every kind of user out there, but for those of us that are happy on the command line, rich Text User Interfaces (or TUIs) open all the exploration and discoverability benefits of a GUI are a fraction of the development time.

    This week we’re looking at a Rust TUI library with the excellent name ‘ratatui’. We’re joined by Orhun Parmaksız, one of the lead developers and a huge TUI enthusiast on a quest to see how far Text UIs can be pushed.

    –

    Ratatui: https://ratatui.rs/

    Ratatouille Tutorials: https://ratatui.rs/tutorials/

    Tui Realm: https://github.com/veeso/tui-realm

    Awesome Ratatui: https://github.com/ratatui/awesome-ratatui

    RTL SDR: https://www.rtl-sdr.com/about-rtl-sdr/

    Rust Snake AI: https://github.com/bones-ai/rust-snake-ai-ratatui

    SystemCtl-Tui: https://github.com/rgwood/systemctl-tui

    GitU: https://github.com/altsem/gitu

    …and GitUi: https://github.com/extrawurst/gitui

    GitCliff Changelog Tool: https://git-cliff.org/

    ATAC (Postman in the Terminal): https://github.com/Julien-cpsn/ATAC

    BubbleTea (TUIs in Golang): https://github.com/charmbracelet/bubbletea

    Imgcat (images in the terminal): https://github.com/danielgatis/imgcat

    TachyonFX: https://github.com/junkdog/tachyonfx

    ASCIITheatre: https://ascii.theater/

    Rio Terminal: https://raphamorim.io/rio/

    –

    Support Developer Voices on Patreon: https://patreon.com/DeveloperVoices

    Support Developer Voices on YouTube: https://www.youtube.com/@developervoices/join

    Kris on Mastodon: http://mastodon.social/@krisajenkins

    Kris on LinkedIn: https://www.linkedin.com/in/krisjenkins/

    Kris on Twitter: https://twitter.com/krisajenkins

    1 hr 7 min
  • Designing The Lustre Web Framework (with Hayleigh Thompson)

    Lustre is a web framework that takes a lot of inspiration from Elm, some from React, and a surprising amount from Erlang’s actor model, to provide a library that blurs the lines between executing on the client, or on the server.

    Support Developer Voices on Patreon: https://patreon.com/DeveloperVoices

    Support Developer Voices on YouTube: https://www.youtube.com/@DeveloperVoices/join

    –

    Lustre: https://hexdocs.pm/lustre/index.html

    Gleam: https://gleam.run/

    Join the Gleam Community: https://gleam.run/community/

    Processing (AV Framework for Java): https://processing.org/

    Vue.js: https://vuejs.org/

    Svelte: https://svelte.dev/

    Elm: https://elm-lang.org/

    Elm Table: https://package.elm-lang.org/packages/gribouille/elm-table/5.3.0/

    Hayleigh on Twitter: https://x.com/hayleighdotdev

    Kris on Mastodon: http://mastodon.social/@krisajenkins

    Kris on LinkedIn: https://www.linkedin.com/in/krisjenkins/

    Kris on Twitter: https://twitter.com/krisajenkins

    1 hr 5 min

About Developer Voices

From the publisher's feed

Deep-dive discussions with the smartest developers we know, explaining what they're working on, how they're trying to move the industry forward, and what we can learn from them.

You might…

More shows like Developer Voices

Software Engineering Radio - the podcast for professional software developers by team@se-radio.net (SE-Radio Team)

Software Engineering Radio - the podcast for professional software developers

275 Listeners

The Changelog: Software Development, Open Source by Changelog Media

The Changelog: Software Development, Open Source

286 Listeners

Software Engineering Daily by Software Engineering Daily

Software Engineering Daily

622 Listeners

Talk Python To Me by Michael Kennedy

Talk Python To Me

581 Listeners

Syntax - Tasty Web Development Treats by Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers

Syntax - Tasty Web Development Treats

982 Listeners

CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

CoRecursive: Coding Stories

188 Listeners

Machine Learning Street Talk (MLST) by Machine Learning Street Talk (MLST)

Machine Learning Street Talk (MLST)

97 Listeners

Dwarkesh Podcast by Dwarkesh Patel

Dwarkesh Podcast

554 Listeners

Two's Complement by Ben Rady and Matt Godbolt

Two's Complement

30 Listeners

devtools.fm: Developer Tools, Open Source, Software Development by Andrew Lisowski, Justin Bennett

devtools.fm: Developer Tools, Open Source, Software Development

26 Listeners

Software Unscripted by Richard Feldman

Software Unscripted

29 Listeners

Oxide and Friends by Oxide Computer Company

Oxide and Friends

66 Listeners

Latent Space: The AI Engineer Podcast by Latent.Space

Latent Space: The AI Engineer Podcast

103 Listeners

Rust in Production by Matthias Endler

Rust in Production

25 Listeners

Fallthrough by Fallthrough Media

Fallthrough

13 Listeners