107. How to Write Seriously Good Software
Writing legible, functionable code is the aspiration for many programmers. Defining what that actually means is another matter altogether. Our guest, Marco Faella, has written a book on the subject. We'll explore the characteristics good software demonstrates. We're also going to give away a 40% discount code for Marco's new book!
108. Building Community with the Wicked CoolKit
Back in the day, the web felt smaller and people used simpler ways to connect with others. Those with niche interests still found each other despite the absence of mega social platforms. Lynn Fisher, Chief Creative Officer at &yet, shares the story behind the Wicked CoolKit, a collection of retro web widgets designed to help today’s niche enthusiasts connect.
106. Growing a Self-Funded Company
Most companies talk about building for the customer—but when you’re a self-funded company like BiggerPockets, building a product that users pay for can be the difference between success and shutting down. Guests Alli McGee and Lewis Buckley from BiggerPockets talk about what it means to truly build a product that delights the customer. They discuss how they’ve structured their teams to collaboratively discover, build, and ship what the customer wants, and how instead of MVPs they build Minimum Loveable Products.
105. Event Sourcing and CQRS
Organizing data into a sequence of CRUD operations have a long history in software. But with newer and never-ending data streams, different models are emerging. Guest Andrzej Ludwikowski, a software architect at SoftwareMill joins host Robert Blumen to discuss the architecture patterns of event sourcing and CQRS as alternatives.
104. The Evolution of Service Meshes
As microservices and container orchestration have grown in popularity, reusable layers of logic, such as authentication and rate limiting, have been pulled out into separate entities known as a service mesh. Luke Kysow, a software engineer at HashiCorp, covers their history and evolution.
103. Chaos Engineering
Chaos engineering is a way of testing your software predicated on the fact that something in your system, at some point, will break. By intentionally causing disruptions–for example, dropping network connections–and observing how your system responds, you'll better prepare yourself for when the unexpected happens. Mikolaj Pawlikowski, author of "Chaos Engineering: Crash test your applications" explains the philosophies and best practices behind these resiliency techniques.
101. Cloud Native Applications
Too often, there's an assumption that putting one's application "in the cloud" simply means hosting your code on a server somewhere–but that's just the beginning. Guest Cornelia Davis, CTO of Weaveworks, talks with Joe Kutner about what it really means to be a cloud native application, discussing everything from resiliency patterns to deployment practices.
102. Whether or Not to Repeat Yourself: DRY, DAMP, or WET
There are many different ways to architecturally structure a program, which has invariably led to debates on which system is "the best." We'll explore several of these strategies–nicknamed DRY (Don't Repeat Yourself), DAMP (Don't Abstract Methods Prematurely), and WET (Write Everything Twice)–with Ev Haus, the Head of Technology at ZenHub, including when each is best to use.
100. Math for Programmers
Programmers are often expected to not only know complicated math equations, but to cherish them dearly; in reality, nothing could be further from the truth. Although mathematics forms the basis for a lot of software, most people are still put off by it. Paul Orland, a mathematician turned programmer, found this so perplexing that he wrote a book breaking down math concepts for programmers. He'll share his reasons for doing so, as well as why he believes maths is essential to every job.
99. The Technical Side of Deep Fakes
A "deep fake" is the derisive name given to the rise of manipulated pictures and videos. Will newer forms of computer generated media cause us doubt what we see and hear online? Dmytro Bielievtsov is the CTO and co-founder of Respeecher, a speech-to-speech platform that produces AI-generated audio samples. In this second half of a two-part episode, he'll explain how audio can be faked, why it can be advantageous, and more importantly, how faked audio can be detected.