In this episode of the programming podcast, we'll discuss static analysis and code transformation. In particular, we'll look at the difference between compilers, linters, and formatters.
By the end of the episode, you'll understand what tool you should use to improve your development experience and team processes.
In today's episode, you'll learn the four principles of object-oriented programming. We'll discuss abstraction, inheritance, encapsulation, and polymorphism. By the end of the show, you'll understand each one of them; you'll know how they relate to each other, and how to use them in practice.
Today we're going to discuss the binary heap data structure. In this episode, you'll learn where to use heaps in practice, how they can come handy to you during a coding interview, and how to implement them!
Along the way, we'll cover heap sort, priority queues, load balancing, and more!
Instead of digging into algorithms and data structures, today, you'll learn about epidemic modeling. In 9 minutes in this episode, you'll get a mathematical intuition on the spread of COVID-19 and the essential variables we can control, which can help us fight the virus.
The chances are that the information from this episode will come in handy to you during a coding interview and likely in real life!
In this episode, you'll learn the topological sort algorithm. Along the way, you'll understand what's a dependency graph and how topological sort operates on this data structure. We'll also discuss a few real-life examples where I had to implement topological sort myself!
Have you ever been frustrated during interviews thinking that your interviewer expects you to have memorized a bunch of sorting algorithms you'd never need in real life?
In this episode of the podcast learn how to approach such situations. In performance critical systems you may have to implement an efficient sorting yourself. Learn how to beat the built-in algorithm in a few lines of code!
Today you'll learn how at runtime, you can enhance the behavior or existing objects using the decorator pattern.
In this episode, we'll discuss the advantages of decorators over inheritance and look at two examples from real-life - implementing a network communication protocol and enriching user interface components.
In the episode today, we'll talk about the trie data structure. You'll learn what tries are, how you can use them in practice, and how to implement them in your favorite programming language!
In this episode, we'll discuss graphs. You'll learn how this data structure looks like and what are its applications. Later on, we'll talk about algorithms for traversing graphs. You'll understand how breadth-first search and depth-first search work and when you should use one instead of the other. Topics we'll also touch on are chromatic graphs and finding the shortest path.
22 min
About Programming
From the publisher's feed
Programming is a podcast that aims to make us better software engineers! With each episode, you'll learn about a computer science concept in a brief and accessible way.