Hmm, not sure about cycles too. It sounds more like CPU clock cycles, may be confusing to those who see it that way?
Note that there is also one more limit, the max gas per block limit..
Personally, I quite like gas, not too hard for a casual dev like me to understand. However, perhaps in the future it could be something that is totally abstracted, since asking everyone to understand how gas works is too much.
Well "cycles" is good enough as a metaphor to convey the idea we are talking about a resource cost.
At least "cycles" and "ETH per cycles" makes it very obvious that you should multiply them to find the fee. On the other hand it's completely unintuitive you should multiply "price" and "cost" to calculate the fee. If gasCost was called gasQuantity, at least it would have been a little more logical (multiplying price with quantity).
The fact the #1 comment on this HN submission refers to "something called gas" (as if it was an advanced concept) instead of "fee" is another data point showing the gas metaphor is confusing :)
Also gas is not its own unit. gasPrice is the unit. Or... actually it's not even a unit. A "unit" implies a constant. But it's not constant since each tx can set its own gasPrice.
The more I think about the cycles metaphor the more I love it. Sorry I have zero sympathy for "gas"
Gas is its own unit, decoupled from ETH. Opcodes cost a certain amount of gas to execute [1]. When creating a transaction, a sender sets the maximum amount of gas that they are willing to pay. This is the "gas limit."
I know what gas is. It would be more accurate to call it a unitless number describing the relative resource cost factor of each opcode.
If you define the term gas as a unit then it refers to both a value, and the unit of that value, which is where most of the confusion comes from. The language "1000 gas" could mean either "1000 wei/szabo/whatever of gas" or "1000 gasCost" which are 2 completely different things!
Note that there is also one more limit, the max gas per block limit..
Personally, I quite like gas, not too hard for a casual dev like me to understand. However, perhaps in the future it could be something that is totally abstracted, since asking everyone to understand how gas works is too much.