Discover the future of software from the people making it happen.Listen to some of the smartest developers we know talk about what they're working on, how they're trying to move the industry forward, and what you can learn from it. You might find the solution to your next architectural headache, pick up a new programming language, or just hear some good war stories from the frontline of technology.Join your host Kris Jenkins as we try to figure out what tomorrow's computing will look like the best way we know how - by listening directly to the developers' voices.

What can game programming teach us about databases? (with Tyler Cloutier)

January 17, 2024 1:05:31 94.35 MB Downloads: 0

The world of game programming might seem a million miles away from regular programming. But they still have to deal with the same kinds of data, scale and concurrency problems that we’re all familiar with in the software world. What makes games interesting, is that under the hood they’re solving those same problems, often with some novel ideas about the solutions.So this week we’re off to the massive open world that is game development, to see what we can learn that might make our programming lives easier in the non-gaming space. Joining us for that is Tyler Cloutier, the founder of Clockwork Labs. They’re building SpaceTimeDB, a curiously-distributed database to be the platform underlying their new MMORPG BitCraft. In digging down into the architecture of SpaceTimeDB we pick Tyler’s brain for nuggets of information on event sourcing, request/response vs. subscriptions, transactions, security and much more. All in an effort to make the programmers and data scientists’ lives easier.--SpaceTimeDB: https://spacetimedb.com/BitCraft: https://bitcraftonline.com/“4X games” defined: https://en.wikipedia.org/wiki/4XPlan 9 O.S.: https://en.wikipedia.org/wiki/Plan_9_from_Bell_LabsTyler on LinkedIn: https://www.linkedin.com/in/tylercloutier/Kris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/Kris on Mastodon: https://mastodon.social/@krisajenkins

Is Odin, "programming done right"? (with 'Ginger' Bill Hall)

January 10, 2024 1:00:04 86.49 MB Downloads: 0

Odin’s creator, Bill Hall, makes some bold claims about the language, including that it’s “programming done right”. Before that starts a war on the internet, we’d best ask him to explain what that means, and how Odin tries to achieve it. And while we get deep into the details, overall his answer seems to be, “By gathering masses of feedback and then refining C until it feels joyous again.Of all the C-like languages we’ve looked at on Developer Voices, Odin seems to be the most at-ease with its progenitor. It’s not trying to be a revolutionary new way of thinking about systems programming; it’s just trying to rethink C for modern conventions. If Bill’s hit his goals, it might be the most comfortable way to get a language that’s C, but C done better…–Odin: https://odin-lang.org/Odin Packages: https://pkg.odin-lang.org/Newsqueak [pdf]: https://swtch.com/~rsc/thread/newsqueak.pdfEmberGen: https://jangafx.com/software/embergen/Raylib: https://www.raylib.com/RayLib bindings for Odin: https://github.com/odin-lang/Odin/tree/master/vendor/raylibVerse language: https://dev.epicgames.com/documentation/en-us/uefn/verse-language-referenceAlgorithms + Data Structures = Programs: https://en.wikipedia.org/wiki/Algorithms_%2B_Data_Structures_%3D_ProgramsBill on Twitter: https://twitter.com/TheGingerBillKris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/--#podcast #software #softwareprogramming #programming #odin #odinlang

Can Event-Driven Architecture make Software Design Easier? (with Bobby Calderwood)

January 03, 2024 1:09:59 100.79 MB Downloads: 0

This week’s guest describes Event Sourcing as, “all I’m going to use for the rest of my career.” But what is Event Sourcing? How should we think about it, and how does it encourage us to think about writing software?In this episode we take a close look at systems designed around the idea of Events, with guest Bobby Calderwood. Bobby’s been designing (and helping others design) event based architectures for many years, and enthusiastically recommends it not only as a system-design technique, but as a way of solving business problems faster and more reliably.During this discussion we look at the various ways of defining event systems, what tools we need to implement them, and the advantages of thinking about software from an event-based perspective. Along the way we discuss everything from Clojure, Bitemporality & Datomic to Kafka and more traditional databases - all in the service of capturing real-world events and building simple systems around them.–EventStoreDB: https://developers.eventstore.com/The CloudEvents standard: https://cloudevents.io/Datomic: https://www.datomic.com/Adam Dymitruk’s Event Modelling Explanation: https://eventmodeling.org/Bobby’s Event Modelling course: https://developer.confluent.io/courses/event-modeling/intro/Bobby on Twitter: https://twitter.com/bobbycalderwoodBoddy on LinkedIn: https://www.linkedin.com/in/bobbycalderwood/Kris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/–#software #softwarepodcast #programming #eventsourcing #eventdrivenarchitecture #kafka

How Lisp is designing Nanotechnology (with Prof. Christian Schafmeister)

December 27, 2023 0:52:58 76.27 MB Downloads: 0

One of our oldest languages meets one of our newest sciences in this episode, as we talk with Professor Christian Schafmeister, an award-winning nanotech researcher who's been developing a language and a design suite to help research the future molecular machines.In this episode Christian gives us a quick chemistry lesson to explain what his research is trying to achieve, then we get into the software that's doing it: A new flavour of Common Lisp. But why Lisp? What advantages does a 60 year old language design offer? How does he strike a balance between high-level language features and the need for exceptional performance and parallelism?  And what tricks does his development environment have that modern IDEs could still learn a thing or two from?--Clasp (the Lisp): https://github.com/clasp-developers/claspCando (the design language): https://github.com/cando-developers/candoThe Feynman Prize: https://en.wikipedia.org/wiki/Feynman_Prize_in_NanotechnologyAlphafold: https://alphafold.ebi.ac.uk/More on LEaP: https://ambermd.org/tutorials/pengfei/Interactive Development of Crash Bandicoot: https://all-things-andy-gavin.com/2011/03/12/making-crash-bandicoot-gool-part-9/ Christian's Research Group: https://www.schafmeistergroup.com/Kris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/--#programming #software #lisplang #commonlisp #nanotech

Roc - A Functional Language looking for those Software Sweetspots

December 20, 2023 1:01:48 88.99 MB Downloads: 0

Sometimes, what a programming language makes harder is just as important as what it makes easier. For a simple example, think of GOTO. We’ve been wisely avoiding it for decades because it makes confusing control flow desperately easy. Types and tests are other examples - they’re as much about specifying what shouldn’t work as what should. And perspective is what makes this week’s topic particularly interesting: Roc is a language that’s functional, fast, friendly, and extremely interested in making your life easier by enabling some possibilities and restricting others.So this week we’re joined by Richard Feldman, the creator of Roc. He’s been an advocate of the Elm programming language for years, for its tight focus on taking the best bits of Functional Programming to the browser. And in recent years he’s been inspired to build his own language, taking that philosophy to other places and platforms.But which bits are “the best bits”? And how do they change when the domain you’re coding for changes? How is Roc built and how would we build systems in it? Let’s find out…--Roc’s homepage: https://www.roc-lang.org/Richard’s GOTO Copenhagen 2021 talk: https://www.youtube.com/watch?v=3n17wHe5wEwRichard on Twitter: https://twitter.com/rtfeldmanKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/Kris on Mastodon: https://mastodon.social/@krisajenkinsKris on Twitter: https://twitter.com/krisajenkins

If Kafka has a UX problem, does UNIX have the answer? (with Luca Pette)

December 13, 2023 1:19:29 114.47 MB Downloads: 0

One of the recurring themes in the big data & data streaming worlds at the moment is developer experience. It seems like every major tool is trying to answer this question: how do we make large-scale data processing feel trivial?In some places the answer is any library you like as long as it’s Python. In other realms, a mixture of Java and SQL shows promise. But as this week’s guest—Luca Pette—would say, the Unix design metaphor has plenty to give and keep on giving.So in this episode of Developer Voices we look at TypeStream - his Kotlin project that provides a shell-like interface to data pipelines, and is gradually expanding to make integration pipelines as simple as `cat /dev/kafka | tee /dev/postgres`.--Luca on Twitter: https://twitter.com/lucapetteLuca on LinkedIn: https://www.linkedin.com/in/lucapette/Kris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/TypeStream homepage: https://www.typestream.io/TypeStream installation guide: https://docs.typestream.io/tutorial/installationCrafting interpreters: https://craftinginterpreters.com/…by Bob Nystrom: https://twitter.com/munificentbobNuShell: https://github.com/nushell/nushell#podcast #apachekafka #bigdata

Will we be writing Hare in 2099? (with Drew DeVault)

December 06, 2023 0:54:38 78.68 MB Downloads: 0

This week we're back on systems programming with Hare. A C-like language for the ages. We talk to its creator, Drew DeVault, about what he thinks we can learn from the past 50 years of programming, and how we can build that hindsight into a new language that will last for the next 100. In among all that long-term ambition we talk cover everything from error handling, typed unions and linear types, to metaprogramming and Drew's microkernel operating system. It's called Ares, and it is, of course, built in Hare.--Drew's Homepage: https://drewdevault.com/Kris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/ A summary of Hare’s features: https://harelang.org/tutorials/introduction/Hare Community Resources: https://harelang.org/community/SXMO Mobile: https://sxmo.org/QBE Compiler Backend: https://c9x.me/compile/users.htmlAres OS Source Code: https://sr.ht/~sircmpwn/helios/OSDev Wiki: https://wiki.osdev.org/Expanded_Main_PageThe Ares System [pdf]: https://mirror.drewdevault.com/ares.pdf#programming #podcast #harelang #qbe #microkernel

Startups Should Solve Real People's Real Problems (with Michael Drogalis)

November 29, 2023 0:51:30 74.17 MB Downloads: 0

A few months ago, Michael Drogalis quit his job and decided launch 4 viable startup business ideas in 4 months, publically documenting every step of the journey. Over here at Developer Voices it seemed fun, inspired, and just crazy enough to work.We had him on the podcast a few months back just as that journey was beginning, and since he launched his first startup things have changed,. The reception has been better than he expected and the plan has been updated to go all-in on idea number one. But why? What's changed? What happened between brainstorming 4 ideas and launching #1 into the world? How is he figuring out what problems to solve, and how is he coping with the workload of being a solopreneur with a business idea and only himself to rely on?It's definitely time for an update, and to see what we can learn from a fellow geek who wants to start a business, but most of all wants to build technology that people find useful and valuable. Let's hope he succeeds...--ShadowTraffic: https://shadowtraffic.io/Michael’s Previous Appearance: https://youtu.be/jqS2TbxssQEFollow Michael’s journey: https://michaeldrogalis.substack.com/Michael on LinkedIn: https://www.linkedin.com/in/michael-drogalis-01029924/Michael on Twitter: https://twitter.com/MichaelDrogalisKris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/--#podcast #softwareprogramming #programming #startup #technology #kafka #postgres #shadowtraffic #entrepreneur

Is Flink the answer to the ETL problem? (with Robert Metzger)

November 22, 2023 1:04:26 92.79 MB Downloads: 0

Integration is probably the last, hardest, and least well thought-out part of any large software project. So anything that makes the data-streaming job easier is worth knowing about. So this week we turn our attention to Apache Flink, a flexible system for grabbing, transforming and shipping data between systems using Java, Python or good ol’ SQL. So this week Robert Metzger—Apache Flink expert and PMC member—joins us to explain what problems Flink solves and how it solves them reliably. We cover the range from simple use cases to realtime aggregations & joins to its high availability strategy.If you’re working on systems that include more than one database, then you’re definitely going to face the kinds of problems that Flink tackles.--Apache Flink: https://flink.apache.org/Robert on Twitter: https://twitter.com/rmetzger_Robert on LinkedIn: https://www.linkedin.com/in/metzgerrobert/Kris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/–#software #programming #podcast #flink #apacheflink #dataintegration

What's Zig got that C, Rust and Go don't have? (with Loris Cro)

November 15, 2023 1:23:52 120.78 MB Downloads: 0

Zig is a programming language that’s attempting to become “the new C” - the language of choice for low-level systems programming and embedded hardware. Going into that space not only puts it in competition with C and C++, but also other newcomers like Rust and Go. So what makes Zig special?Joining us to discuss it is Loris Cro from the Zig Foundation. We talk through Zig’s reasons to exist, its language design features, which parts of the C ecosystem it's tackling, and how the Zig Foundation is set up for the long-term health of the language.–Loris’ website: https://kristoff.it/Kris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/Zig homepage: https://ziglang.org/The “learn zig” guide: https://ziglearn.org/Learn Zig with Ziglings: https://ziglings.org/Find the Zig community: https://github.com/ziglang/zig/wiki/CommunityRust’s cargo-zigbuild: https://github.com/rust-cross/cargo-zigbuildUsing zig as a better linker: https://andrewkelley.me/post/zig-cc-powerful-drop-in-replacement-gcc-clang.html"The Economics of Programming Languages" by Evan Czaplicki (Strange Loop 2023) - https://youtu.be/XZ3w_jec1v8–#programming #programminglanguages #software #zig #llvm #rust #go

Why did Redpanda rewrite Apache Kafka? (with Christina Lin)

November 08, 2023 0:49:27 71.21 MB Downloads: 0

Would you ever take on a rewrite of one of the largest and most popular Apache projects? And if so, what would you keep the same and what would you change?This week we’re talking to Christina Lin, who’s part of Redpanda, a company that’s rewriting parts of the Apache Kafka ecosystem in C++, with the aim of getting performance gains that aren’t feasible in Java. It seems like a huge mountain to climb, and a fascinating journey to be on, so let’s ask why and how they’ve taken on this challenge…Christina on Twitter: https://twitter.com/Christina_wmKris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/Redpanda: https://redpanda.com/Redpanda University: https://university.redpanda.com/Seestar framework: https://seastar.io/Apache Flink: https://flink.apache.org/#redpanda #kafka #apachekafka #streaming #python

Debezium - Capturing Data the Instant it Happens (with Gunnar Morling)

November 01, 2023 1:02:38 90.19 MB Downloads: 0

This week we’re looking at Debezium - an open source project that taps into a huge number of databases and lets you stream data to other systems in real time. It’s a huge project that covers a wide range of uses: Some people use it to replicate from Oracle to MySQL, others to do smart cache invalidation, and others to build a bridge from an existing relational database to the event-sourcing world. If you’re working on a system that has more than one kind of database, it may be an essential tool. But what exactly does it do, and how does it do it?Joining us for a deep dive is Debezium expert and former project lead, Gunnar Morling. He takes us through all things Debezium, from who uses Debezium and why; which systems you can connect to and what data you get out from it; and how a project of this scope is developed.Gunnar on Twitter: https://twitter.com/gunnarmorlingGunnar on LinkedIn: https://www.linkedin.com/in/gunnar-morling-2b44b7229/Gunnar’s blog: https://www.morling.dev/Kris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/Gunnar’s talk on the new incremental snapshot mechanism: https://events.bizzabo.com/468544/agenda/session/1136877Getting into Real Time data: https://youtu.be/ftAVFxa5AwIStripe’s talk at Flink Forward: https://www.slideshare.net/FlinkForward/squirreling-away-640-billion-how-stripe-leverages-flink-for-change-data-captureFrancesco’s “When JDBC Goes Wrong” talk: https://www.confluent.io/events/kafka-summit-london-2022/jdbc-source-connector-what-could-go-wrong/#debezium #microservicesarchitecture #cdc #database #postgresql #oracle #mysql #eventsourcing #kafka #jdbc #realtime

When We Talk About Software (with Francesco Tisiot)

October 25, 2023 0:32:00 46.09 MB Downloads: 0

Ever read a bad README? We all have, and most of the time, we’ve just moved right along. A programmer that can’t communicate their ideas will find no-one uses their software. And that’s true even outside of the open-source world. The best software doesn’t win - the best software _that people can understand_ wins. So how do we get better at communicating our code? What do we talk about when we talk about software?Joining to discuss that question is a data-streaming expert and skilled communicator, Francesco Tisiot. Unusually, this episode is recorded on location, as we met up in the hallway of a recent tech conference.Francesco on Twitter: https://twitter.com/FTisiotFrancesco on LinkedIn: https://www.linkedin.com/in/francescotisiot/Kris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/#podcast #podcasts #devrel #opensource #software #presentations

Semantic Search: A Deep Dive Into Vector Databases (with Zain Hasan)

October 18, 2023 1:02:00 89.3 MB Downloads: 0

As interesting and useful as LLMs (Large Language Models) are proving, they have a severe limitation: they only know about the information they were trained on. If you train it on a snapshot of the internet from 2023, it’ll think it’s 2023 forever. So what do you do if you want to teach it some new information, but don’t want to burn a million AWS credits to get there?In exploring that answer, we dive deep into the world of semantic search, augmented LLMs, and exactly how vector databases bridge that gap from the old dog to the new tricks. Along the way we’ll go from an easy trick to teach ChatGPT some new information by hand, all the way down to how vector databases store documents by their meaning, and how they efficiently search through those meanings to give custom, relevant answers to your questions.--Zain on Twitter: https://twitter.com/zainhasan6Zain on LinkedIn: https://www.linkedin.com/in/zainhasKris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/HNSW Paper: https://arxiv.org/abs/1603.09320ImageBind - One Embedding Space To Bind Them All (pdf): https://openaccess.thecvf.com/content/CVPR2023/papers/Girdhar_ImageBind_One_Embedding_Space_To_Bind_Them_All_CVPR_2023_paper.pdfWeaviate: https://weaviate.io/Source: https://github.com/weaviate/weaviateExamples: https://github.com/weaviate/weaviate-examplesCommunity Links: https://forum.weaviate.io/ and https://weaviate.io/slack--#vectordb #vectordatabase #semanticsearch #openai #chatgpt #weaviate #knn

The Future of Data is Now is the Future of Data (with Thomas Camp)

October 11, 2023 1:01:15 88.22 MB Downloads: 0

Real-time data is gradually becoming a standard requirement in systems design. Our customers are beginning to demand it, our colleagues in other departments are starting to expect it. Whether you’re letting people book a taxi, recommending their next binge-watch, or delivering business reports to management, faster data is just obviously better. Or is it?Does real-time data matter everywhere, or does it just have sweet spots in some sectors and some use-cases? Is it a cost-benefit question - is the idea great in theory, but still too hard to adopt in practice? Would everyone be streaming their data live if streaming their data live was easier? If the future of data is, “now, not later,” then what’s holding that future back?In this week’s Developer Voices we talk to Thomas Camp of Ably, and chew through the use-cases, software stacks, and education needed to speed up the way we process data. We consider everything from the front-end to the back, from user experience to business needs, and from greenfield projects to incrementally adapting existing systems.If you’re wondering what all the batch vs. streaming fuss is about, or you want to know how you can drag the industry there sooner, we have some answers. It’ll only take an hour. 😉--Thomas on LinkedIn: https://www.linkedin.com/in/thomascamp333/Ably: https://ably.com/Kris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/