Live data from Hacker News

Idempotence now prevents pain later

ericlathrop.com

1–10 of 133 posts

Re: Idempotence now prevents pain later

#2
Possibly related past threads:

What Is Idempotence? - https://news.ycombinator.com/item?id=19570815 - April 2019 (51 comments)

Idempotence: What is it and why should I care? - https://news.ycombinator.com/item?id=17804617 - Aug 2018 (73 comments)

You know how HTTP GET requests are meant to be idempotent? - https://news.ycombinator.com/item?id=16964907 - May 2018 (304 comments)

Implementing Stripe-Like Idempotency Keys in Postgres - https://news.ycombinator.com/item?id=15569478 - Oct 2017 (41 comments)

APIs, robustness, and idempotency - https://news.ycombinator.com/item?id=13707681 - Feb 2017 (50 comments)

A simple distributed algorithm for small idempotent information - https://news.ycombinator.com/item?id=7276491 - Feb 2014 (14 comments)

Idempotent Web APIs: What benefit do I get? - https://news.ycombinator.com/item?id=5662138 - May 2013 (53 comments)

A word like that is particularly easy to search for:

https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...

Re: Idempotence now prevents pain later

#4
I'm assuming a lot of people click on it to see what the word Idempotence means. From the article:

"Idempotence is the property of a software that when run 1 or more times, it only has the effect of being run once."

And the example is, instead of a chron job just running a process once a month or on some other schedule, it runs more frequently but checks if the change has already been made.

(From the latin Idem which means "same" and potence is of course power/potent, so it has the same power/effect however many times you run it)

Re: Idempotence now prevents pain later

#6

I'm assuming a lot of people click on it to see what the word Idempotence means. From the article: "Idempotence is the property of a software that when run 1 or more times, it only has the effect of being run once." And the example is, instead of a chron job just running a process once a month or on some other schedule, it runs more frequently but checks if the change has already been made. (From the latin Idem which…

Mathematically, it's x^2 = x, which implies x^n = x for all positive integers n.

Nilpotence (x^2 = 0) is also very helpful some times: it's a process which is self-reversing. Like the discrete Fourier transform (if you set up the constants properly).

Re: Idempotence now prevents pain later

#9
https://lostechies.com/jimmybogard/2013/06/06/acid-2-0-in-ac...

If you can build a system with ACID 2.0 life gets really easy. You can reason about your system without worrying about ordering, time, 'exactly once' semantics, etc.

Idempotency is usually one of the simplest pieces to implement, and you definitely get a ton of benefit right off the bat - it's worth designing systems from scratch with it in mind.

Re: Idempotence now prevents pain later

#10
post #6

I'm assuming a lot of people click on it to see what the word Idempotence means. From the article: "Idempotence is the property of a software that when run 1 or more times, it only has the effect of being run once." And the example is, instead of a chron job just running a process once a month or on some other schedule, it runs more frequently but checks if the change has already been made. (From the latin Idem which…

Mathematically, it's x^2 = x, which implies x^n = x for all positive integers n. Nilpotence (x^2 = 0) is also very helpful some times: it's a process which is self-reversing. Like the discrete Fourier transform (if you set up the constants properly).

No, you are confusing with involution. 1/x is an involution. Symetries are often involutions.

Squaring a upper triangular matrix with 0 on the diagonal is nilpotent. Derivatiting a polynomial of degree N is nilpotent after N iteration.

Post reply on HN