The History of Ethereum


after Satoshi released Bitcoin to the
world in 2008 a community of blockchain developers and researchers started to
take shape around it many developers contributed to the open source
development of Bitcoin several magazines and online blogs also started to appear
writing about interesting projects and new ideas in the space one of the
members of this community was a Canadian teenager named
Vitalik Buterin who worked as a writer for a publication called Bitcoin
magazine as he was watching the ecosystem take shape he noticed a common
problem among projects that many of them needed to start their own blockchain
this got vitalik wondering wouldn’t it be nice to have one single blockchain
that everyone could build their applications on just like we have one
single intranet that everyone can build their websites on instead of figuring
out how to start a blockchain developers would then be able to focus on building
their own applications so in late 2013 Vitalik published the etherium white
paper which built on many concepts from Bitcoin the white paper is available
today on the etherium github page in the white paper he outlined the limitations
of the Bitcoin blockchain and proposed a new general-purpose blockchain that
could be used as a decentralized application platform Ethereum would be
able to do everything Bitcoin could like sending transactions between accounts
and a whole lot more the main issue with Bitcoin was the lack
of a general-purpose programming language that would allow you to create
any sort of application on top of its blockchain Bitcoin scripts are not
turing-complete meaning you can’t write simple structures like loops and they’re
also limited in capability because they can’t store state these scripts are also
referred to as simple versions of smart contracts the etherium white paper
described its own native currency called ether and a new runtime environment for
smart contracts called the ethereum virtual machine or EVM a subsequent
yellow paper was released in mid-2014 by collaborator Gavin wood
that would define the technical specification of the EVM and how it
would work the yellow paper was used to create several open-source
implementations in different languages the most popular one being the Go
language client also known as Geth. the second most popular implementation was
written in the Rust language and is called the Parity client anyone running
a client is a node in the Ethereum network which currently has over 25,000
nodes around the world. Smart contracts are just application logic that can be
expressed using the operations defined in the EVM and they can also store data
on the blockchain EVM opcodes are low-level machine language which isn’t
very human readable so developers write smart contracts in high-level languages
that compile down to EVM opcodes several high-level languages exist like serpent
and Viper but the most popular one today is called solidity and it has a syntax
similar to JavaScript smart contracts can contain some data as well as code
that manipulates that data you can think of a smart contract like a class that
has fields and methods anyone can use solidity to write a smart contract and
deploy it to the Ethereum blockchain using a simple transaction you would do
this by compiling your solidity smart contract down to EVM byte code and then
sending the byte code as part of a transaction to the ethereum network
once the transaction gets mined the smart contract is deployed to the
blockchain and given a public address anyone can then interact with the smart
contract by sending transactions to its address and specifying which method they
want to invoke the result of the method call is written to the blockchain after
the transaction is mined there is also a cost associated with invoking a smart
contract method called Gas Gas is just a unit of measurement that determines how
much computation and EVM opcode requires the price of one unit of gas is set
in ether and is known as the gas price the gas price is used to calculate the
total transaction fee for invoking a method call based on how much gas the
method requires and it must be paid by the sender of the transaction an
interesting thing to note is that any transaction that invokes a smart
contract method gets executed on every single Ethereum node this means that in
order to mine a transaction into a block you have to invoke any smart contract
methods for it as well in this sense Ethereum can be thought of as a
decentralized world computer where you pay for computation using ether Ethereum uses a similar mining algorithm to Bitcoin which is based on proof of work
but is slightly modified the reward for mining an Ethereum block is given to
the miner in ether and the current block reward is three ether a block is mined
on the network about every 15 seconds the issuance model for ether is
different from Bitcoin whereas Bitcoin is capped at 21 million coins forever
Ethereum has no such limit instead Ethereum has an annual cap such that
only 18 million ether can be created in one year
both of these issuance models are experiments and it is yet to be seen how
they play out in the future one of the motivations for modifying the mining
algorithm from Bitcoin was to make it ASIC resistant as pointed out in the
Ethereum white paper the Bitcoin mining algorithm can be exploited by using
specialized mining hardware called Asics giving some miners an unfair advantage
over others this has led to centralization of Bitcoin mining because
very few people can afford to get such specialized hardware to prevent this
type of mining centralization in Ethereum the algorithm was modified to
be geared towards GPUs which are more commonly available and thus less likely
to be centralized a rapidly growing interest in Ethereum has revealed some
of its limitations the maximum transaction throughput on the network is
currently less than 16 transactions per figuring out how to scale the Ethereum
blockchain to allow everyone’s applications to run smoothly is a very
difficult challenge during peak Network loads the time between blocks can
increase and transaction fees can go up there are several scaling solutions
being researched and developed including sharding proof of stake and state
channels the breakneck pace of development in the ecosystem can also be
challenging for developers to navigate as libraries are continuously being
updated for the most up-to-date libraries make sure you always refer to
the project’s github page or a website the pace of development in the community
has also encouraged the creation of standards to foster interoperability
some example standards today are ERC 20 for defining a transferable token
interface and ERC 721 for defining a non fungible token interface to learn more
about building block chain applications check out our online guides and courses
available at blockgeeks.com

3 thoughts on “The History of Ethereum”

Leave a Reply

Your email address will not be published. Required fields are marked *