Cover art for podcast Around IT in 256 seconds

Around IT in 256 seconds

39 EpisodesProduced by Tomasz NurkiewiczWebsite

Podcast for developers, testers, SREs... and their managers.I explain complex and convoluted technologies in a clear way, avoiding buzzwords and hype.Never longer than 4 minutes and 16 seconds.Because software development does not require hours of lectures, dev advocates' slide decks and hand waving… read more

episodes iconAll Episodes

#38: HTTP cookies: from saving shopping cart to online tracking

March 30th, 2021


Before we fully appreciate how important HTTP cookies are, let’s imagine the web without them. HTTP is inherently stateless. This means that the HTTP …

#37: Fallacies of distributed computing

March 22nd, 2021


Fallacies of distributed computing are a set of myths we believe, when designing complex systems. And what is a distributed system? Well, if your application is split into hundreds of microservices, it’s distributed. Or …

#36: Microservices architecture: principles and how to break them

March 16th, 2021


Microservices are contrasted to a monolith. Single, large application that implement the whole system. Typically hard to understand, develop, test …

#35: Reactive programming: from spreadsheets to modern web frameworks

March 2nd, 2021


To understand what reactive programming is, let’s contrast it to imperative programming. Imperative programs can be read top-to-bottom, with occasional jumps. Jumps are if statements, loops and procedure calls. Program …

#34: SQL joins

February 22nd, 2021


In relational databases, data is kept in relations, commonly known as tables. Simplifying, when data is normalized, it’s not duplicated. For example, when storing books and authors, you don’t keep an author’s name next …

#33: OAuth 2.0

February 16th, 2021


OAuth 2.0 is a standardized authorization protocol. In this episode, I’ll explain just one use case of it: the authorization code flow. It allows …

#32: (Cryptographic) hash function

February 8th, 2021


Sometimes you need to split arbitrary objects into a fixed number of groups. For example, storing a record into one out of many database nodes. Or …

#31: Redis

February 1st, 2021


Redis is quite a versatile NoSQL, key-value database. Or in-memory cache. Or pub/sub broker. With transactions, stored procedures and fast replication. It’s quite universal. Anyway, the main use-case for Redis is …

#30: Linear Regression

January 18th, 2021


Linear regression is one of the simplest machine learning algorithms. But also quite useful. It takes a bunch of existing, known observations and …

#29: Time synchronization

January 12th, 2021


Clocks are important to computers. Computers need to order events in a way understandable to humans. Every computer has a bunch of internal counters, like CPU ticks. But they only work within one machine. We need a way …

#28: Event sourcing

January 5th, 2021


Event sourcing is an alternative technique of storing business data. Rather than updating a single database record, every change is captured in an immutable, append-only log. We never overwrite existing data. Instead, …

#27: Proof-of-work algorithm in blockchain

December 29th, 2020


Let’s try to cheat the blockchain. If my wallet has exactly one bitcoin, I can’t spend it twice. Once it’s written into an immutable blockchain,

#26: Blockchain

December 22nd, 2020


Blockchain is a technology used for storing data without a central database. Data is organized in an ever-growing list of blocks with each block …

#25: High-frequency trading

December 14th, 2020


According to some estimates, even half of the trading volume in the American stock exchange is generated by computers. Specifically, computer …

#24: Service discovery

December 8th, 2020


In the old days an application consisted of a monolithic backend and a database. Once they were deployed their location never changed. So the only …

#23: Garbage collection

November 30th, 2020


Creating new objects, arrays or strings is so straightforward that we often forget what happens underneath. And I don’t mean trying to figure out what this refers to in JavaScript objects. I mean: memory management. On …

#22: Moore's Law

November 23rd, 2020


It's a common misconception that Moore's law is dead. That's because many believe it's about the speed of a CPU. But in reality Gordon Moore meant the number of transistors, not the clock frequency. And also, it's now …

#21: SSE and WebSockets

November 3rd, 2020


HTTP is historically request-response-driven. This means a server is idle as long as no-one asks it to do something. Typically fetching data or accepting some form. In reality, we’d often like to receive data from the …

#20: Chaos engineering

October 26th, 2020


We tend to focus on testing happy paths and expected edge cases. But how do you make sure that your system can survive minor infrastructure and network failures, as well as application bugs? Especially in microservice …

#19: GraalVM

October 19th, 2020


GraalVM is a set of tools that aim to improve the performance and interoperability of Java Virtual Machine. Taking advantage of GraalVM not only …

#18: JIT - Just-in-time compilation

October 12th, 2020


Source code can then be executed in two ways. Language implementations in general either interpret or compile it. In order to run an interpreted program, you need one extra binary: an interpreter. Interpretation is …

#17: BPM: Business process modeling

October 6th, 2020


[...] All of this complexity is somewhat hidden with BPM framework. First of all the process is first drawn. Using a special notation known as BPMN. This is actually quite natural. You use arrows to show how insurance …

#16: Akka

September 22nd, 2020


Akka is a toolkit for building highly scalable, concurrent applications. It's written in Scala and based on the ideas from Erlang. Its approach to …

#15: Mutation testing

September 14th, 2020


Imagine I wrote a script that takes your codebase and removes a random line. Fairly simple. Or maybe some more subtle change, like replacing plus with minus operator? Or switching `x` and `y` parameters with each other? …

#14: Static, Dynamic, Strong and Weak Type Systems

August 31st, 2020


When choosing or learning a new programming language, type system should be your first question. How strict is that language when types don't really …

#13: Cassandra

August 18th, 2020


Cassandra is an open-source NoSQL database. It's heavily optimized for writes, but also has intriguing read capabilities. Cassandra has near-linear scalability. In terms of CAP theorem it favours availability over …

#12: Continuous integration, delivery and deployment

August 11th, 2020


Typically, more than one developer is working on the same codebase. How do they share their work? The simplest approach is a common Dropbox folder. …

#11: MapReduce

August 4th, 2020


MapReduce is a programming model for processing large amounts of data. It works best when you have a relatively simple program, but data is spread …

#10: HTTP protocol

July 27th, 2020


HTTP protocol is fundamental to the Internet. It's a simple request-response protocol where the request is initiated by the client, typically a web …

#9: Retrying failures

July 21st, 2020


I find it quite fascinating how many failures in complex systems could be avoided if we simply... tried again. So how so you retry effectively, so …

#8: Kafka's design

July 14th, 2020


Kafka is not a message broker. However, it can be used as such very effectively. Instead, I'd like to think about as a very peculiar database. A …

#7: Speed of light

July 6th, 2020


Speed of light is not as abstract to us, software engineers, as you might think. If you are deploying to the cloud or if you want to squeeze every …

#6: Little's law

June 30th, 2020


Little's law is an astounding equation that's dead simple, yet it can bring an amazing insight into what your distributed system is capable of.

Read more:


#4: Serverless

June 8th, 2020


Read more:


4th edition of the newsletter, apart from transcript, contains GraphQL scalability tricks, enjoy!

More resources:

* AWS Lambda:

#3: GraphQL

June 2nd, 2020


Read more:


More resources:

  • Official GraphQL website:

#2: Service Mesh

May 26th, 2020


Notable implementations of service mesh:

More details:
* What's a service mesh? And why do I need one? (

#1: Circuit Breaker

May 12th, 2020


Circuit breaker is a design pattern that prevents cascading failures in distributed systems. More details: and

#0: Meta

April 27th, 2020


I explain software development in no more than 4 minutes and 16 seconds.

Notifications of new episodes:

User voice: suggest topics:

Loading ...

Listen to Around IT in 256 seconds


A free podcast app for iPhone and Android

  • User-created playlists and collections
  • Download episodes while on WiFi to listen without using mobile data
  • Stream podcast episodes without waiting for a download
  • Queue episodes to create a personal continuous playlist
RadioPublic on iOS and Android
Or by RSS
RSS feed

Connect with listeners

Podcasters use the RadioPublic listener relationship platform to build lasting connections with fans

Yes, let's begin connecting
Browser window

Find new listeners

  • A dedicated website for your podcast
  • Web embed players designed to convert visitors to listeners in the RadioPublic apps for iPhone and Android
Clicking mouse cursor

Understand your audience

  • Capture listener activity with affinity scores
  • Measure your promotional campaigns and integrate with Google and Facebook analytics
Graph of increasing value

Engage your fanbase

  • Deliver timely Calls To Action, including email acquistion for your mailing list
  • Share exactly the right moment in an episode via text, email, and social media
Icon of cellphone with money

Make money

  • Tip and transfer funds directly to podcastsers
  • Earn money for qualified plays in the RadioPublic apps with Paid Listens