Computing Reviews
Today's Issue Hot Topics Search Browse Recommended My Account Log In
Review Help
Search
Building games with Ethereum smart contracts : intermediate projects for solidity developers
Iyer K., Dannen C., Apress, New York, NY, 2018. 269 pp. Type: Book (978-1-484234-91-4)
Date Reviewed: Dec 19 2018

Cryptocurrencies are a source of much speculation. While Bitcoin is the most widely known form of cryptocurrency, Ethereum is operating in a similar space. Here, two veteran actors in the field, Kedar Iyer and Chris Dannen, join forces to write a timely book.

The book is divided into 11 chapters and focuses on developing game applications using the Solidity programming language. The first chapter gives a brief introduction to the Ethereum ecosystem, defining the main vocabulary and concepts. The authors describe the Ethereum development environment as a decentralized compute framework and introduce the Solidity programming language. A high-level language, “Solidity compiles down to bytecode executing on the Ethereum Virtual Machine (EVM).”

The second chapter is on setting up the environment in terms of hardware, the operating system, and the two client tools used in the rest of the book (geth and TestRPC). Chapter 3 shows how to create a simple transaction and deploy it on a testing network. The fourth chapter dives into programming with the Truffle development environment. Chapter 5 illustrates how to write contracts to send, store, and withdraw ether safely. Chapter 6 covers cryptoeconomics and three alternatives for securing the blockchain, that is, proof-of-work, proof-of-stake, or proof-of-authority.

The last five chapters go deeper into game programming with Ethereum. Chapter 7 explains Ponzi and pyramid schemes and how to implement them robustly. It also moves from a testing environment to the mainnet, where ether has real value. In chapter 8, the authors explain lotteries and in particular the coding of a Powerball game. They clarify the use of random numbers programmed with Solidify. Chapter 9 codes two variants of puzzle games where there is either one winner or a commit-reveal method allowing multiple winners. The next chapter introduces a prediction markets game, which allows players to bet on and profit from the probability of an arbitrary event occurring. The last chapter turns to gambling as implemented in a simplified online casino type of roulette game.

The book is worth reading and provides a good introduction to programming contracts in Ethereum. The examples and snippets of code will help readers get started. The associated GitHub repository includes the code used. It should be viewed as practice on an emerging decentralized technology still lacking maturity. Games illustrate the potential of trusted cryptocurrency systems and contracts in particular. Some aspects of the environment are left unaddressed, such as performance, transparency, and scalability. As an example, Everipedia--where Iyer is a team member--dropped Ethereum for lack of scalability and moved to EOS, another environment with its own problems.

More reviews about this item: Amazon

Reviewer:  Jean-Pierre Kuilboer Review #: CR146348 (1903-0076)
Bookmark and Share
 
Games (I.2.1 ... )
 
 
Javascript (D.3.2 ... )
 
 
Electronic Commerce (K.4.4 )
 
Would you recommend this review?
yes
no
Other reviews under "Games": Date
How computers play chess
Levy D. (ed), Newborn M., Computer Science Press, Inc., New York, NY, 1991. Type: Book (9780716782391)
Oct 1 1991
Computer chess
Pachman L., Kühnmund V., Routledge&Kegan Paul Ltd., London, UK, 1986. Type: Book (9789780710097859)
Oct 1 1987
Sums of games born on Days 2 and 3
Moews D. Theoretical Computer Science 91(1): 119-128, 1991. Type: Article
Feb 1 1993
more...

E-Mail This Printer-Friendly
Send Your Comments
Contact Us
Reproduction in whole or in part without permission is prohibited.   Copyright 1999-2024 ThinkLoud®
Terms of Use
| Privacy Policy