What does idempotent mean in software systems?

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 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