a thoughtful web.
Good ideas and conversation. No ads, no tracking.   Login or Take a Tour!
comment by rezzeJ
rezzeJ  ·  2288 days ago  ·  link  ·    ·  parent  ·  post: Beyond the Bitcoin Bubble

Thank you. This was exactly the kind of thing I was looking for: an article that contextualises the blockchain technology in our wider world and, in doing so, reveals its true significance.

One thing I still have yet to get my head around is exactly how blockchain transactions can be used to facilitate all these different types of applications. Like, I understand the simplified explanations of how a blockchain transaction takes place, gets verified, and then recorded on the decentralised ledger. However, extrapolating that process to something such as the 'Transit' example that the article provides is where I get lost.

I think my confusion stems from nature of a request in this context (e.g. a request to travel to a certain destination). Am I right in thinking that this 'request' would not actually be a part of blockchain itself? Rather, it's just a part of whatever application layer is built on top of the protocol that, when triggered by a user, essentially acts as an open invitation to a potential transaction. It's only when the actual transit method has been chosen by the requester that the blockchain technology takes over and initiates all the required token, state, and ledger management.

If that sounds correct, then I understand. I was getting myself in a muddle by presuming that the requesting process was somehow inherent to the blockchain itself. As in, a request would be some sort of open ended transaction floating within the network. But that just didn't seem right.





veen  ·  2287 days ago  ·  link  ·  

I think you're pretty close to how it actually works. I'll preface my explanation by saying that I'm doing this off the top of my head.

So you understand that the blockchain is a ledger, aka a record of the total history of a certain state. In the case of regular blockchains, the state that the ledger keeps track of is the amount of money in each wallet. It is a particular state in a particular wallet that forms the basic building block here. Now: "wallet" is a bit of a constrained term, as I tried to explain with my Ethereum explainer, because your "wallet" can also hold other states. "Account" is a better term, imo.

You can totally put the text "I AM THE LORD OF CRYPTO" on the blockchain if you want to. It would be a state that would be associated with your account. To associate a state with an account, you need to perform a change (from nothing to something). Those state changes are done by what are called "transactions". Again, terminology is a bit crappy, because "state changing function" is what's actually happening. But since it requires effort, you pay a small amount of money (in the form of gas) to get your state etched into the blockchain forever.

The Ethereum network (the combined set of all computers, aka nodes, that solve the sudokus) all then perform the state change that you have requested and have paid them for. The Ethereum protocol is the meta-code that allows or disallows your state changing functions. In the case of a regular wallet with Eth in it, the protocol for example has the rule that you can't spend more than you have. In the case of your self-absorbed text, there are no rules as to what to do with that text unless you specify so. For example, you can define it as "text that only I can change", just like Eth is money only you can access. (And by "you", I mean the person holding the account private key.)

Now here's the cool part: you can write your own bit of protocol that is understood by the Ethereum network. THIS is what the nerds call "smart contracts". So if you write your application (with your own logic and variables and functions) in the Ethereum programming/protocol language, everyone in the network and everyone connected to the Ethereum network can use your application. Your application code is saved on the blockchain as a very long piece of text. It has to be, because that makes it possible for every computer in the network to read, parse and execute the application. And the blockchain can also act as a database for the variables (and even files) for that application.

Does that make some sense?

cc goobster

rezzeJ  ·  2280 days ago  ·  link  ·  

Sorry about the delayed response. Your reply spurred me to go away and read a load of different articles about blockchains, protocols, smart contracts, and Dapps.

Whilst still haven't completely gotten my head around how things all link up on a more technical level, I feel I have a pretty firm basic understanding now. I was mistakenly thinking that people would build things that draw from a blockchain—like a website might draw from an API—but now I see that all these different potential applications are inherent to the blockchain itself.

Thanks for helping me to understand.

veen  ·  2279 days ago  ·  link  ·  

I've found Chris Dannen's book "Introducing Ethereum and Solidity" to be a great resource. It looks like a book for people who want to be Ethereum developers, but it is really just a book that explains the technical stuff that makes up Ethereum rather well.