29 comments

[ 3.5 ms ] story [ 87.6 ms ] thread
This MS Paint stuff needs to become a thing to explain complex concepts like this
Isn't it already? You posted your comment on a post that links to a page that uses 'This MS Paint stuff' to explain concepts like 'this', where the first 'This' refers to this specific incarnation of 'MS Paint stuff' and the second 'this' refers to blockchains.

This is all very meta.

At least you are not an AI struggling to understand human communication.
I guess the purpose is satirical, but it's an awfully complicated explanation. I guess it can be understood only by people who already know how a blockchain works.
In another comment in this thread I mentioned my boss asking our team if 'blockhains would be a good idea to add security' in our web application because a customer mentioned them. If I were to send this MS Pain visualisation to my boss he'd still not understand anything about it. The subject is quite complex and the metaphor used is far to abstract for people who already struggle with describing the simplest requirements in a clear way.

Note that I don't pretend to know how bitcoins work 100%; I have read up on bitcoins a while back, with this previous knowledge I still picked some things up, but I did not grasp the complete explanation from this MS Paint cartoon.

Maybe someone could shine some light on a few things that I am left wondering after reading this cartoon?:

[1]: What would be actually 'written on the pages' in the case of bitcoins? The transactions? [2]: What mechanism determines what 'finding' or 'mining' bitcoins means? At one point it says that there are rules regarding how many 'pages' there are per day. Is there a parallel for this in Bitcoins? It says that there is randomness involved in mining. I thought you had to find certain key pairs that were hard to calculate and that those key pairs were then used to grant people bitcoins again. Are the reward-bitcoins simple written in a new block? How does mining work? [3]: 'Sahti' seems to refer to money. Are we talking bitcoins or external currencies?

1. The transactions.

2. The mechanism used to determine what 'mining' bitcoins means is defined by the bitcoin client software implementation. In case of bitcoin it is about finding a suitable random number by using brute force.

3. I believe the cartoon is using sahti in comparison to bitcoins or ether or any internal currency used in a public blockchain.

Thank you for your answer.

With regards to 2, what would define a 'a suitable random number'?

There's tons of people here on HN that know this stuff by heart, but as far as I understood:

1) I guess so, the blockchain contains the bitcoin transactions.

2) In order to add a block to the blockchain, you need to mix the block's fingerprint with a random value and shake, hoping for the mix to get a special and very recognisable appearance. If it doesn't work, you have to try a new random number (the block's fingerprint of course stays the same). When you've found a good number (which takes a lot of tries and luck) you raise a flag and say "hey, found it", and you can add your block to the chain. Then you're rewarded with some amount of bitcoins that are created from nothing (hence mined). I don't have clear how this reward is granted, whether it's already written in the block you're trying to add or in a new one, and in which form.

Thank you for your explanation. It certainly clears a few things up.

With regards to "hoping for the mix to get a special and very recognisable appearance". What happens here concretely? What would 'very recognisable' entail?

Very late reply, but in case anybody sees this. The "shaken mix" of fingerprint + random number must produce a number that is lower than a certain target number. The most visible consequence of this is that the accepted numbers must begin with a string of zeros (as the number of digits is fixed, as in 0003 is lower than 0123).

Example:

Not a good mix: 1312af178c253f84028d480a6adc1e25e81caa44c749ec81976192e2ec934c64

A good mix: 0000000000000000057fcc708cf0130d95e27c5819203e9f967ac56e4df598ee

This "shaken mix" is a SHA-256 hash of the current block plus a random number. SHA-256 is an algorithm that generates a "fingerprint" (called "hash") of a block of data, in such a way that it is not possible to determine, from the fingerprint itself, which data might have generated it [otherwise it would be possible to start from (a set of) desired fingerprints and calculate back to the set of possible blocks that could generate them].

The subject could be seen as very complex but for most use-cases there is a simple litmus test. Do you need censorship-resistant transactions or a neutral/decentralized timestamping server? If not, then you don't need a blockchain. That's really it.

In the case of a vendor, accepting _bitcoin_ has own security advantages, and bitcoin comes with its own blockchain built-in. As a vendor you probably wouldn't really need to worry about the blockchain as much as you would need to worry about avoiding exchange rate fees.

I will keep your answer in mind when I get asked this question again. Thank you.
Strangely these images become easier to see if you reduce your browser size. Did they get their media queries backwards?
I'm curious why Santa is an "it" rather than a "he".
In the comic both Santa and the elves are depicted as something non-human, are they not? "Its eternal kin would never forget."
Probably in order to avoid assuming his... eh its gender.
I'm more amused at the rather strong implication that blockchain is a mi-go invention. Iä! Iä! Bitcoin fhtagn!
For anyone that's curious, the first set of runes is Futhark, and transliterate to:

>"That is not dead which can eternal lie. And with strange aeons even death may die"

The second and third are Enochian and transliterate to:

>"There is no sanity clause" and "Madness is the emergency exit"

respectively.

We build a web application for companies to keep track of their CO2 Emissions and some other key performance indicators and assessments. Yesterday our boss called one of my colleagues and said:

"A customer of ours suggested that we use blockchains to improve the security of our application. What do you guys think?"

It is probably the equivalent of saying you use scrum and are oh so very agile. "We use blockchains for added security". What this would look like is then left up to the imagination of the person confronted with this phrase.

[1]: http://www.csoonline.com/article/3050557/security/is-the-blo...

Sorry but this comic is neither simple nor accurate.

Firstly, recording the account of sahti is the only function of the ledger, which supposedly is a subset of a record of everyone's deeds' including the elves. Secondly then, fee analysis has shown that blockchains are a poor store of data and should not be used as a database since other mechanisms are far more efficient and cheaper.

If you struggled with this explanation then I can try another a bit more IT related.

A blockchain is...

A distributed fault tolerant public database that no one owns and everyone can update.

Has this been done before?

Kind of, distributed database are not new. What is new is solving the problem of multiple updates changing the same data at the same time.

So for example let's say the following happens to our distributed database.

User 1 send the following SQL to the network.

  Update customer set balance = 1000 where name = 'Customer1'
and User 2 at the exact same time tries

  Update customer set balance = 2000 where name = 'Customer1'
A blockchain database will have both statements in a block and execute them on every node in the same order. Other distributed databases would run into race conditions.

So when you hear the statement

Blockchain startup X is going to disrupt industry Y.

You can reorganize the statement into something like.

Startup X is going to disrupt industry Y with a new type of distributed database.

Your example might benefit from some revision. Simply rewriting those statements as adjustments to the existing balance ("SET balance = balance + 1000" et al.), as would be used in reality, alleviates the race. This doesn't really help your example show blockchain's value.
Which doesn't work once the operation is not commutative.

Serializing parallel operation is hard!

Very true. If nothing else, perhaps it's worth choosing an example with which a pedant like me can't quite so trivially quibble!
I need to point out the obvious because it disappointed me after reading the title: that was not made in MS Paint
I could be wrong, but I'm pretty sure this wasn't made in MS Paint. All the edges of the shapes look way too anti-aliasied.

Looks more like something made with paint.NET.

(I have never used the MS paint version that comes with win10, so maybe they improved it a lot)

Did you check the original images or the downscaled ones on the website?
I'm not convinced by this format. I think the whole information would have been easier to digest, if it was presented in a clear and concise format, without any unnecessary detours and metaphors.