CAP Theorem (Consistency, Availability, Partition)

CAP theorem states that it’s impossible for a distributed computer system to have all the following simultaneously

  • Consistency
    All part of the systems see the same data.
  • Availability
    A guarantee that each request receives a response regardless of success / failure.
  • Partition tolerance
    The whole system continue to work despite disconnection, message loss or any failure in the subsystems.

Eric Brewer said that a distributed computer system can only have 2 out of these 3 functions at a time.

Software Laws

I was looking for a specific theorem called CAP theorem, but came across these interesting, sort of funny but somewhat true, software laws.

I think these laws are useful to get better understanding of philosophy behind a software or computer science in general.

  • Atwood’s Law

    Any software that can be written in JavaScript will eventually be written in JavaScript.

  • Brooks’s Law

    Adding manpower to a late software project makes it later.

  • Conway’s law

    Any piece of software reflects the organizational structure that produced it.

  • Miller’s law

    To understand what another person is saying, you must assume that it is true and try to imagine what it could be true of.

  • Wirth’s law

    Software gets slower faster than hardware gets faster.

Autograph Work with Excellence

Some one asked Al Jolson, a popular musical comedy star of the twenties, what he did to warm up a cold audience. Jolson answered, “Whenever I go up before an audience and don’t get the response I feel that I ought to get… I don’t go back behind the scenes and say to myself, ‘That audience is dead from the neck up – it’s a bunch of wooden nutmegs.’ No, instead I say to myself, ‘Look here, Al, what is wrong with you tonight? The audience is all right, but you’re all wrong, Al.'”

Many performer has blamed a poor showing on an audience. Al Jolson took a different approach. He tried to give the best performance of his career to his coldest, most unresponsive audiences. . . And the result was that before an evening was over, he had them applauding and begging for more.

We’ll always be able to find excuses for mediocrity. In fact, a person intent on justifying a bad performance usually has excuses lined up before the final curtain falls. Choose instead to put our full energy into our performance. Our extra effort will turn an average performance into something outstanding.
Ah!… the joys of a job well done… that is true satisfaction.


Credit: From the desk of Harry Sudarma.