When designing software systems, you’ll often come across the term
idempotent, especially when you design distributed, message-based systems for the cloud. If you read up on it, it seems like a concept that is easy to grasp at first but it’s important to know the intricacies of idempotence if you want your systems to be scalable and reliable.
What am I talking about, exactly? Let’s start by talking about all the remote controls scattered around your living room.Read more