The stories and people behind the code. Hear stories of software development from interesting people.

Similar Podcasts

The Cynical Developer

The Cynical Developer
A UK based Technology and Software Developer Podcast that helps you to improve your development knowledge and career, through explaining the latest and greatest in development technology and providing you with what you need to succeed as a developer.

Elixir Outlaws

Elixir Outlaws
Elixir Outlaws is an informal discussion about interesting things happening in Elixir. Our goal is to capture the spirit of a conference hallway discussion in a podcast.

Programming Throwdown

Programming Throwdown
Programming Throwdown educates Computer Scientists and Software Engineers on a cavalcade of programming and tech topics. Every show will cover a new programming language, so listeners will be able to speak intelligently about any programming language.

Learning to Think with Andy Hunt - Pragmatic Programmers guide to being productive

April 15, 2019 54:51 54.05 MB Downloads: 0

Andy Hunt is a celebrity in the world of software development. Or at least he is one to me. The Pragmatic Programmer is a classic book on software development book. He is an author of the agile manifesto and started the book company that has published many great books, including several by recent guests. Today I talk to Andy about how software engineers can get better at thinking and learning. How can we develop this meta-skill and how can being aware of common mistakes our brain make us more productive? Show notes: The Pragmatic Programmer  Pragmatic Thinking and Learning  Conglommora  Webpage for Episode  

Data and Scale with Pat Helland - The long view on distributed databases

March 31, 2019 56:16 55.4 MB Downloads: 0

Pat Helland has a wealth of knowledge on building distributed data stores. He has been working on distributed data stores since 1978, when he worked on the tandem fault-tolerant database. Since then he has been involved in many distributed database projects. Here is the key thing, he is also a master at explaining the key ideas of distributed systems using simple language and practical everyday examples. Can you get married on the phone? How are messaging systems and idempotence like regional offices communicating via fax machine? These are the type of metaphor that Pat uses. Today, Pat sits down with me and teaches me about dealing with data in a distributed, fault tolerant, infinitely scaling world. Webpage : http://corecursive.com/028-data-pat-heland/ Links: Pat's articles ON ACM QUEUE Mind your state for your state of mine  Consistency Eventually Standing on Distributed Shoulders of Giants The Singular Success of SQL Life Beyond Distributed Transactions 

Abstraction and Learning with Runar Bjarnason

March 15, 2019 49:29 48.9 MB Downloads: 0

What is abstraction?  Can we have a precise definition of abstraction that, once understood, makes writing software simpler?  Runar has thought a lot about abstraction and how we can choose the proper level of abstraction for the software we write.  In this interview, he explains these concepts using examples from the real world, from SQL, from effectful computing and many other areas. We also talk about how to learn and acquire the skills necessary to understand abstract concepts like very polymorphic code and category theory. Runar also explains his latest project unison computing and how it uses the correct level of abstraction to rethink several foundation ideas in software development.   Links: Constraints Liberate Maximally Powerful, Minimally Useful Unison Computing Webpage for show

Modern Systems Programming And Scala Native With Richard Whaling

February 22, 2019 53:56 53.17 MB Downloads: 0

Richard Whaling has an interesting perspective on software development. If you write software for the JVM or if you are interested in low level system programming, or even doing data heavy or network heavy IO programming then you will find this interview interesting. We discuss how to build faster software in a modern fashion by using glibc and techniques from system programming. This means using raw pointers and manual memory management but from a modern language. Richard also shares some perspectives on better utilizing the underlying operating system and how we can build better software by depending on services rather than libraries. Links: Beej's Guide to C Beej's Guide to Unix Interprocess Communication Beej's Guide to Network Programming Gary Bernhardt's Destroy All Software Screencasts (Web Server from Scratch, Malloc from scratch, shell from scratch) Stevens & Rago Systems Programming books: Advanced Programming UNIX Environment Unix Network Programming - Sockets UNIX Network programming - Interprocess Communication  

Burn out and recreational coding with Jamis Buck

January 25, 2019 59:30 49.97 MB Downloads: 0

A decade ago Jamis Buck was not loving his job. He was an important open source contributor. He worked for the hottest trendiest software company at the time, 37 signals, creator of ruby on rails. He was on top of the world but also he was burnt out. Today Jamis talks about how he overcame burn out.  We discuss how his struggle lead him to write a book about generating mazes and another about building a ray tracer. His books are great fun, and all about recreational programming.  You will learn to build things with a focus not on the latest trends in software development and not even a specific programming language.  The focus instead is on fun.  

Software as a Reflection of Values With Bryan Cantrill

December 18, 2018 01:19:04 66.6 MB Downloads: 0

Which operating system is the best? Which programming language is the best? What text editor? Bryan Cantrill, CTO of Joyent says that is the wrong question. Languages, operating systems and communities have to make trade offs and they do that based on their values. So the right language is the one who's values align with you and your projects goals. This simple idea carries a lot of weight and I think has the potential to lift up technical discussions to a higher level of discourse. You will find it to be a helpful frame next time you need to make a technical decision. Bryan is also pretty excited about how the values of the rust community align with his values for system software. Also we cover Oberon, Clean and Simula 4, none of which I've never heard of and how IBM System/370 's Global Trace Facility doesn't hold a candle to Dtrace. Webpage for this episode Show Links: Software Values Slides The Design and Implementation of the FreeBSD Operating System Microsoft should buy github All Bryan's Talks Slack Channel for Site

The Little Typer With Daniel Friedman and David Thrane Christiansen

December 01, 2018 01:07:27 56.84 MB Downloads: 0

When it comes to type systems "I am, so far, only in the dependent types camp" - Daniel P. Friedman You can write more correct software and even rigorous mathematical proofs.  Prepare for some mind stretching. Previous guests like Edwin Brady and Stephanie Weirich have discussed some of the exciting things a dependent type system can do Miles Sabin said dependent types are surely the future. This interview is to get us ready for the future. Daniel P. Friedman is famous for his "Little" series of books. Little Schemer, Little prover, Little MLer and so on. These books are held in high regard. Here is a quote from Doug Crockford:  "Little Schemer teaches one thing, a thing that is very difficult to teach, a thing that every profession programmer should know, and it does it really well. These are lessons that stick with you." The latest one is the little typer and its about types. Specifically dependent types. Dan's coauthor is David Thrane Christiansen, Idris contributor, and host of a podcast about type theory that is way over my head. Together they are going to teach us how the programming skills we already have can be used to develop rigourus mathematical proofs. Stay tuned to the end for my guide to working thru the book. Originally published at CoRecursive here Join Our Slack Community

Big Ball Of Mud

November 14, 2018 01:00:51 51.29 MB Downloads: 0

Evolving software under constrained resources is a challenge, and I think we kid ourselves when we don't admit this. Software that is providing value often grows in scope until it is a mess.  Today I talk to Wade Waldron about how avoid this situation or recover from it. Big ball of mud is the title of a paper presented at the 1997 Patterns Languages of Programs conference and I think it is super interesting. The researchers went out into the field to see what architectures software in industry were following. Big Ball of mud is what they found, along with other 6 other patterns with names like "sweep it under the rug" and reconstruction, which is the throw it away and start again pattern. Links: Big Ball Of Mud Paper Hexagonal Architecture Reactive Foundations Course Reactive Advanced Course Check out other episodes like this Philip Wadler: https://corecursive.com/021-gods-programming-language-with-philip-wadler/ This podcast originally published here : https://corecursive.com/22-big-ball-of-mud-architecture-and-services-with-wade-waldron/

God's Programming Language - Philip Wadler on Haskell

October 22, 2018 01:00:53 51.16 MB Downloads: 0

Today I talk to Professor Philip Wadler, a very accomplished programming language researcher.  Phil walks us through a principle that has guided his career.  That principle is that typed lambda calculus is not invented but a discovery of a deep truth. It is something connected to the mathematical underpinning of the universe itself. It follows from this that functional programming languages are therefore more correct or more deeply justified and fundamental than other languages.  I am probably stating things in a stronger fashion than Phil is comfortable with, but I like fp, so I can be a little hyperbolic. While explaining this principle, that has guided his career, Phil takes us through the history of computer science.  We start with Turing and Alonzo Church.  Eventually we get to what the movie Independence Day got wrong and what language a theoretical creator deity would program in. Show notes: talk paper   Web page for this episode CoRecursive On Twitter CoRecursive On Itunes

Test in Production and being On-Call with Charity Majors

August 31, 2018 47:59 40.33 MB Downloads: 0

"Metrics and Dashboards can die in a fire and every software engineer should be on-call" - Charity Majors Today's Interview is with Charity Majors. We talk about how to make it easier to debug production issues in today's world of complicated distributed systems.  A warning, There is some explicit language in this interview. I originally saw a talk by Charity where she said something like fuck your metrics and dashboards, you should test in production more. It was a pretty hyperbolic statement, but backed up with a lot of great insights. I think you'll find this interview similarly insightful. Charity and her company are probably best known for popularizing the concept that observability in the key to being able to debug issues in production. Also if you are a talented developer with functional programming skills, I've got a job offer for you. My employer Tenable is hiring.  Tenable is a pretty great place to work. Here is a job link. Show notes: Facebook Scuba Observability Talk the-engineer-manager-pendulum HoneyComb.io   Show Link

Domain Driven Design And Microservices

August 17, 2018 49:01 41.18 MB Downloads: 0

Today I talk to Vaughn Vernon about how Domain Driven Design can help with designing microservices.  The guidelines that Vaughn has developed in his work on DDD can provide guidance for where service and consistency boundaries should be drawn.  We also talk about the platform he is developing for applying these DDD concepts using the actor model, Vlingo. Show Notes: Implementing DDD Book Vlingo Platform Vlingo Source  

Http4s and Functional Web Development With Ross Baker

July 27, 2018 50:59 42.85 MB Downloads: 0

The promise of functional programming is code that is easier to reason about, test and maintain. Referential transparency means there is no extra context to worry about, we can just focus on inputs and outputs. Examples of functional programming in the small are plentiful. Fibonacci is easy to write as a function but what about fp in the large? Http4s is a web framework written in scala that takes a pure functional approach to building http services. Ross Baker is a contributor to http4s and he explains the benefits of this approach. We also touch on the benefits of working remotely, since he and I have both been doing it for some time. Links: Http4s Presentation on Http4s  Today I talk with @rossabaker about http4s and the benefits of a pure functional approach to building http services

Moves and Borrowing In Rust With Jim Blandy

July 03, 2018 01:07:04 56.33 MB Downloads: 0

The surprising thing about rust is how memory management works.  Rust has the concepts of moves and borrowing.  If you have heard about Rust, you may have heard people talking about the borrow checker and trying to make it happy. In this interview, Jim Blandy walks us through what these concepts mean and how they work.  We also talk about how to avoid fighting with the borrow checker at all and why the conceptual model that Rust adopts, though it may seem unusual at first, is actually more representative of how computers work and therefore an easier programming model.

Dependent Types in Haskell with Stephanie Weirich

June 13, 2018 58:44 61.98 MB Downloads: 0

At Strange loop 2017, a wandered into a talk where I saw some code that deeply surprised me. The code could have been python if you squinted, passing dictionaries around, no type annotations anywhere. Yet key look up in the dictionary was validated at compile time. It was a compile time error to access elements that didn't exist. Also the dictionary was heterogeneous, the elements had different types, and it was all inferred and validated at compile time. What I was seeing was Dependent types in Haskell. In today's interview Stephanie Weirich explains her efforts to add dependent types to haskell and how that example worked.   Shows Notes: Dependent Types in Haskell Talk https://www.cis.upenn.edu/~sweirich/ https://github.com/sweirich @fancytypes Dependent Types Regex

Micro Services vs Monoliths With Jan Machacek

June 06, 2018 01:06:33 56.04 MB Downloads: 0

I don't know a lot about micro services.  Like how to design them and what the various caveats and anti-patterns are.  I'm currently working on a project that involves decomposing a monolithic application into separate parts, integrated together using Kafka and http.   Today I talk to coauthor of upcoming book, Reactive Systems Architecture : Designing and Implementing an Entire Distributed System.  If you want to learn some of the hows and whys of building a distributed system, I think you'll really enjoy this interview.  The insights from this conversation are already helping me. Contact Jan Machacek is the CTO at Cake Solutions. Videos long lived micro services  Book - Reactive System Architecture