Developer Voices

Kris Jenkins
undefined
Oct 4, 2023 • 1h 7min

Databases, Ambitions, and a Testing Silver Bullet? (With Joran Dirk Greef)

How far would you go to get the kind of database you want? How deep into the stack would you dive to re-architect a system for the kind of performance, reliability and scale you believe in? Today's guest has decided to go all in, as he’s tackling the database problem from the fsync up. In this week’s Developer Voices we talk to Joran Dirk Greef, whose ambitions—combined with the lacklustre performance of his project's payment system—have led him to build a new database called TigerBeetle, that tackles some meaty problems. They’re attempting to build a database that can be durable in the face of fsync-corner cases, highly available in the face of all kinds of hidden network problems, and performant enough to outpace existing financial systems. And on top of all those goals, they’re doing it with an interesting new language you may not have heard of - Zig.What makes him want to take on this big a challenge? What problems keep him awake at night? And what is he doing to turn all that ambition into an achievable launch strategy? Listen on and find out…–TigerBeetle on Twitter: https://twitter.com/TigerBeetleDBTigerBeetle on YouTube: https://www.youtube.com/channel/UC3TlyQ3h6lC_jSWust2leGgKris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/Joran’s QCon ‘23 Talk: https://www.youtube.com/channel/UC3TlyQ3h6lC_jSWust2leGgViewstamped Replication Revisited (paper): https://pmg.csail.mit.edu/papers/vr-revisited.pdfGithub Test Cases for Journal recovery code: https://github.com/tigerbeetle/tigerbeetle/blob/b4dd441502894cbe9d48cb90ff0bc6a12c378591/src/vsr/journal.zig#L1181-L1213MySQL transactions per second vs fsyncs per second: https://sirupsen.com/napkin/problem-10-mysql-transactions-per-second
undefined
Sep 27, 2023 • 54min

Starting A Tech Business. Again. And Again. And Again. (with Michael Drogalis)

Michael Drogalis, a seasoned entrepreneur known for his Kafka-based company acquisition, is pushing boundaries by attempting to launch four tech businesses in a year. He shares insights on the emotional rollercoaster of entrepreneurship, the importance of aligning personal values with goals, and overcoming the $10,000 demo problem with innovative data solutions. Michael emphasizes the need for customer engagement, storytelling, and resilience, while embracing public vulnerability in his journey. It's a blend of intuition, experimentation, and honest reflections on startup life.
undefined
Sep 20, 2023 • 1h 10min

How Do You Assemble a Complete Software System? (with Ben Gamble)

Software developer Ben Gamble joins the podcast to discuss the challenges of assembling a complete software system, the significance of open source, exploring data platforms and software building, optimizing data access and analysis, challenges of joining large data sets and real-time data processing, and the benefits and challenges of different database systems.
undefined
4 snips
Sep 13, 2023 • 1h 15min

Clickhouse: Faster Queries, Faster Answers (with Alasdair Brown)

Alasdair Brown, a data expert with Tiny Bird, dives into the world of ClickHouse, a high-performance analytics database. He explains how ClickHouse facilitates lightning-fast queries on massive datasets and its origins as a Google Analytics-like tool. The discussion touches on the evolution from traditional databases to scalable solutions, overcoming data integration challenges, and the importance of real-time data management. Alasdair also shares tips for beginners on utilizing ClickHouse and TinyBird for an enhanced data experience.
undefined
Sep 6, 2023 • 1h 2min

What problems does Apache Kafka Solve? (with Neil Buesing)

Neil Buesing, a seasoned Apache Kafka® user and respected voice from the Kafka community, discusses the problems Kafka can solve, including queuing, real-time transitioning, and software integration headaches. He also explores the challenges of adopting new technology, the relationship between Kafka and microservices, and achieving client satisfaction. The significance of structured business data and the future prospects of adopting new technologies are also examined.
undefined
Aug 30, 2023 • 1h 8min

DIY Consensus: Crafting Your Own Distributed Code (with Benjamin Bengfort)

How do distributed systems work? If you’ve got a database spread over three servers, how do they elect a leader? How does that change when we spread those machines out across data centers, situated around the globe? Do we even need to understand how it works, or can we relegate those problems to an off the shelf tool like Zookeeper?Joining me this week is Distributed Systems Doctor—Benjamin Bengfort—for a deep dive into consensus algorithms. We start off by discussing how much of “the clustering problem” is your problem, and how much can be handled by a library. We go through many of the constraints and tradeoffs that you need to understand either way. And we eventually reach Benjamin’s surprising message - maybe the time is ripe to roll your own. Should we be writing our own bespoke Raft implementations? And if so, how hard would that be? What guidance can he offer us? Somewhere in the recording of this episode, I decided I want to sit down and try to implement a leader election protocol. Maybe you will too. And if not, you’ll at least have a better appreciation for what it takes. Distributed systems used to be rocket science, but they’re becoming deployment as usual. This episode should help us all to keep up!--KubeCon talk on the FCD bug: https://kccncna2022.sched.com/event/182N9/lessons-learned-from-etcd-the-data-inconsistency-issues-marek-siarkowicz-google-benjamin-wang-vmwareThe Raft paper by Diego Ongaro and John Ousterhout: https://raft.github.io/raft.pdfThe EPaxos Algorithm: https://www.cs.cmu.edu/~dga/papers/epaxos-sosp2013.pdfLevelDB: https://github.com/google/leveldbBenjamin on Twitter: https://twitter.com/bbengfortBenjamin on LinkedIn: https://www.linkedin.com/in/bbengfortBenjamin on GitHub: https://github.com/bbengfortRotational Labs: https://rotational.io (check out the blog!)Kris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/
undefined
Aug 23, 2023 • 54min

Teaching, Guiding & Inspiring The Next Generation of Programmers (with James Q. Quick)

How do you get started as a programmer? And how do experienced programmers help them as they start their journey?This week's guest is a developer-turned-teacher, James Q. Quick. A former coder and developer advocate, he's s been been working on tutorials, courses and bootcamps to teach aspiring developers how to get started with JavaScript. We talk about why people get into programming as a new career, what they need to succeed, and what James thinks is the best indicator of success.We also discuss what's new and exciting in JavaScript, James' favourite up & coming libraries, and dive into the JavaScript vs. TypeScript debate.James’s YouTube channel: https://www.youtube.com/c/jamesqquickJames’s website: https://www.jamesqquick.com/Astro website builder: https://astro.build/James’ Astro course: https://astrocourse.dev/Svelte framework: https://svelte.dev/Vite build tool: https://vitejs.dev/James on Twitter: https://twitter.com/jamesqquickKris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/
undefined
Aug 9, 2023 • 49min

jOOQ - Crossing the Object-Relational Bridge (with Lukas Eder)

Sooner or later, every programmer will have to cross the gap between their programming language and their database. It feels like it should be easy, but in practice it’s always a much wider chasm than it seems, and every tool that bridges that gaps comes with its own strengths, weaknesses and opinions.This week we take a look at a relatively new library for database access—jOOQ—by chatting with its author, Lukas Eder. This episode takes in the simple questions like syntax, the thornier ones like supporting multiple databases, and the deeply philosophical ones like how we even think about data and data-processing.If you’re a Java (or JVM) programmer, there’s a new tool to learn here, and even if you're not there’s food for thought and ideas to borrow for the next time you need to SELECT…jOOQ: https://www.jooq.org/YesQL: https://github.com/krisajenkins/yesqlDatomic: https://www.datomic.com/XTDB: https://www.xtdb.com/The Elm Architecture: https://guide.elm-lang.org/architecture/Kris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/
undefined
Jul 26, 2023 • 56min

Inside the World of Competitive Coding (with Mathis Hammel)

Mathis Hammel, a veteran of the competitive coding scene, reveals the world of competitive coding, shares tips to become a better coder, discusses the ICPC coding contest, and explores the potential impact of televising competitive coding. He also highlights the benefits of solving coding puzzles and working on side projects.
undefined
Jul 19, 2023 • 1h 2min

Unison: A Programming Language for Distributed Computing

“Software development has not caught up with the internet age.” So says this week’s guest, Rúnar Bjarnason. But what does that mean? What would a programming language for the internet age look like?Rúnar’s answer is Unison. A language that completely rethinks the way distributing computing can work, from the source code up. Borrowing some key ideas from git, it challenges the way we think about code-sharing, compilation, versioning and more. --Kris on Twitter: https://twitter.com/krisajenkinsKris on LinkedIn: https://www.linkedin.com/in/krisjenkins/Rúnar on Twitter: https://twitter.com/runaroramaRúnar’s book, Function Programming in Scala: https://amzn.to/46I9jewUnison website: https://unison-lang.orgComplete and Easy Bidirectional Typechecking for Higher-Rank Polymorphism (pdf): https://www.cl.cam.ac.uk/~nk480/bidir.pdfDo Be Do Be Do (pdf): https://arxiv.org/pdf/1611.09259.pdfRúnar’s Øredev conference talk: https://youtu.be/EgIVzOobD48Cloud icons created by Freepik - Flaticon: https://www.flaticon.com/free-icons/cloudComputer icons created by xnimrodx - Flaticon: https://www.flaticon.com/free-icons/computer

The AI-powered Podcast Player

Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!
App store bannerPlay store banner
Get the app