<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Blockchain in Higher Education: a Review on Needed Technologies for an Undergraduate Web3 Course</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Nemanja Zdravković</string-name>
          <email>nemanja.zdravkovic@metropolitan.ac.rs</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Nikola Dimitrijević</string-name>
          <email>nikola.dimitrijevic@metropolitan.ac.rs</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>DApps</string-name>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Solidity.</string-name>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Faculty of Information Technology, Belgrade Metropolitan University</institution>
          ,
          <addr-line>Tadeuša Košćuška 63, 11000 Belgrade</addr-line>
        </aff>
      </contrib-group>
      <fpage>171</fpage>
      <lpage>177</lpage>
      <abstract>
        <p>Based on our review of the literature and market, we propose an undergraduate course aimed at final-year students in electrical engineering, software engineering, and computer science, with a focus on blockchain technologies as the foundation. This course is designed to provide students not only with theoretical knowledge but also with practical skills necessary for understanding and applying blockchain technologies across various sectors. Our findings indicate that the emphasis on shifting from traditional client-server architectures to decentralized systems, with JavaScript as the leading programming language, is essential for the education of future developers. However, we also recognize the importance of including Solidity, the key programming language for the Ethereum blockchain, which enables the development of smart contracts and decentralized applications (DApps). Solidity represents a bridge between traditional programming and the new paradigms brought by blockchain, offering students the opportunity to engage in the development of applications that are not only innovative but also vital for the future of decentralized technologies. The course will cover fundamental concepts of blockchain, including cryptography, distributed ledgers, consensus algorithms, and blockchain security, as well as advanced topics such as smart contract development, the Ethereum Additionally, we plan to integrate case studies and practical projects that will allow students to apply their knowledge in real-world scenarios, preparing them for the challenges and opportunities offered by the job market in the Web3 field. This course will not only provide students with the technical skills needed to work in the blockchain field but will also equip them with critical thinking and an understanding of how blockchain technologies can transform various industries. Our goal is to create a generation of engineers and developers who not only understand the technological aspects of blockchain but can also contribute to its application in innovative and ethically responsible ways.</p>
      </abstract>
      <kwd-group>
        <kwd>Blockchain</kwd>
        <kwd>Web3</kwd>
        <kwd>distributed applications</kwd>
        <kwd>higher education</kwd>
        <kwd>Solidity</kwd>
        <kwd>smart contracts</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Motivation</title>
      <p>
        (HEIs) aimed at future engineers and developers, which is, in the existing state, lagging in the shift from
Web 2.0 to Web3 [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. Currently, the Internet, comprised of user-generated content, which is the basis
of Web 2.0, is experiencing a shift to more decentralized and public environment with blockchain
technologies (BCTs) at the forefront [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. In addition, Web3 will be powered by powerful artificial
intelligence (AI) algorithms in order to help empower even more intelligent and adaptive applications
[
        <xref ref-type="bibr" rid="ref3 ref4">3, 4</xref>
        ]. Undergraduate students are still being taught technologies and software architectures which
follow Web 2.0 at best, or Web 1.0 at worst, while novel concepts are left for the graduate and PhD
level of studies.
      </p>
      <p>2023 Copyright for this paper by its authors.
CEUR</p>
      <p>ceur-ws.org
ISSN1613-0073</p>
      <p>Unfortunately, the current job market for software engineers and developers are in dire need of
people who are already proficient in Web3 technologies, even at starting-level positions.</p>
      <p>In this paper, we propose an undergraduate level course, aimed at last-year students, which should
help close the needed gap between current curricula in Web applications to actual market needs, in
accordance with the IEEE/ACM guidelines for Computer Science and Information Technologies
Curricula.</p>
    </sec>
    <sec id="sec-2">
      <title>2. Methodology</title>
      <p>
        We firstly review relevant literature and guidelines for undergraduate-level curricula in EE/CS/IT,
with focus on the technologies with the highest rate of advancement – Web technologies [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ].
      </p>
      <p>Afterwards, we compare the data with relevant job positions to cross-reference employers’ needs in
terms of technologies, i.e. tech-stack.</p>
      <p>Finally, we propose the development of two distinct but interconnected curricula to be taught over
a single semester at an HEI. The first curriculum is centered on web development and JavaScript, laying
the foundational knowledge and skills essential for understanding and engaging with modern web
technologies. This curriculum is designed not only to provide comprehensive training in web
development but also to serve as a prerequisite for the second curriculum.</p>
      <p>The second curriculum delves into blockchain technology (BCT) and Web3, building upon the web
development principles acquired in the first course. This advanced curriculum emphasizes the
disruptive potential of BCTs in the Web3 landscape. It focuses on decentralization principles,
smartcontract programming languages, and the practical applications of these technologies in creating
decentralized applications.</p>
      <p>Furthermore, given the increasing relevance of edge devices in the Web3 ecosystem, it is crucial for
students to gain an understanding of the inner workings of battery-powered end user devices.
Knowledge of wireless mobile communications standards and protocols, particularly those pertaining
to 5G and beyond, is also integral. This understanding is essential as these technologies form the basis
of communication and interaction in the Web3 domain.</p>
      <p>Together, these curricula provide a comprehensive educational pathway, equipping students with
the necessary skills and knowledge to excel in the evolving field of Web3 and blockchain technologies.</p>
    </sec>
    <sec id="sec-3">
      <title>3. Curriculum Design for Web course</title>
      <p>This chapter delves into the core technologies of JavaScript (JS) and React, which form the
foundation of modern web development, especially in the context of Web3 applications. Over a
15week course, with 7 weeks dedicated to JavaScript and 8 weeks to React, students will gain a
comprehensive understanding of these technologies, their evolution, and their application in the rapidly
growing field of Web3 development.</p>
      <p>
        JavaScript, often abbreviated as JS, is a high-level, interpreted programming language that is a core
component of the World Wide Web. Initially designed for client-side web development, JavaScript has
evolved to become a versatile language used in various environments, from server-side with Node.js to
mobile app development [
        <xref ref-type="bibr" rid="ref7 ref8">7, 8</xref>
        ].
      </p>
      <p>
        React, developed by Facebook, is an open-source JavaScript library for building user interfaces,
particularly for single-page applications. It allows developers to create large web applications that can
change data without reloading the page [
        <xref ref-type="bibr" rid="ref10 ref9">9, 10</xref>
        ].
      </p>
      <p>
        The combination of JavaScript and React is particularly powerful in the development of
decentralized applications (dApps) on blockchain platforms. JavaScript's versatility and React's
efficient rendering make them ideal for creating interactive and responsive web interfaces for
blockchain-based applications [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ].
Week 2: Control Structures and Data Types
Week 3: Functions and Scope
Week 4: Objects and Arrays
Week 5: Asynchronous JavaScript
Week 6: Advanced JavaScript Concepts
Week 7: JavaScript in Web3
Week 8: Introduction to React
Week 9: React State Management
Week 10: React Router and SPA
Week 11: Advanced React Concepts
Week 12: React and API Integration
Week 13: Building a React Application
Week 14: React in Web3
Week 15: Final Project and Review
      </p>
      <p>Lesson 35: Handling API Responses and State
Updates
Lesson 36: Error Handling in API Calls
Lesson 37: Planning and Structuring a React
App
Lesson 38: Building a Functional Component
Lesson 39: Styling in React (CSS, Styled
Components)
Lesson 40: Integrating React with Web3
Lesson 41: Building a Front-End for DApps
Lesson 42: Interacting with Smart Contracts in
React
Lesson 43: Final Project Overview
Lesson 44: Project Development and
Implementation
Lesson 45: Course Review and Future Learning</p>
      <p>Pathways</p>
      <p>This chapter underscores the importance of JavaScript and React as foundational technologies in
Web3 development. Through the 15-week course, students will not only learn the theoretical aspects of
these technologies but also apply them in practical projects, preparing them for the challenges and
opportunities in the field of Web3.</p>
    </sec>
    <sec id="sec-4">
      <title>4. Curriculum Design for blockchain Web3 course</title>
      <p>This chapter provides an in-depth exploration of the fundamental technologies and concepts
underpinning Web3 development: cryptography, blockchain, smart contracts, and Solidity. These
elements are crucial for understanding the infrastructure and development of decentralized applications
(dApps) and blockchain systems.</p>
      <p>Over a 15-week course, with 3 weeks dedicated to cryptography, 6 weeks dedicated to basics of
blockchain technology and Ethereum and 8 weeks to React, students will gain a comprehensive
understanding of these technologies, their evolution, and their application in the rapidly growing field
of Web3 development.</p>
      <p>
        Cryptography is not just a tool for securing information, but the very foundation upon which the
trust and integrity of blockchain technology are built. It ensures the confidentiality, integrity, and
authenticity of transactions in a decentralized environment. Cryptography has evolved from simple
ciphers used in ancient times to complex algorithms that secure modern digital communications. Its role
in blockchain is pivotal, as it encrypts transactions and creates a secure and immutable ledger [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ].
      </p>
      <p>
        Key cryptographic algorithms used in blockchain include hash functions, public-key cryptography,
and digital signatures. Hash functions like SHA-256 in Bitcoin ensure data integrity, while public-key
cryptography and digital signatures provide secure transaction mechanisms [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ].
      </p>
      <p>
        Blockchain technology is a distributed ledger that records transactions across many computers,
ensuring that records cannot be altered retroactively without altering all subsequent blocks.
Blockchain's decentralized nature eliminates the need for a central authority, making it inherently
resistant to data manipulation. This technology underpins cryptocurrencies like Bitcoin and Ethereum,
and its applications extend to various sectors like finance, healthcare, and supply chain [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ]. Blockchain
technology has evolved from its first-generation blockchain (Bitcoin) to second-generation (Ethereum)
with smart contract capabilities, and now to third-generation blockchains focusing on scalability and
interoperability [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ].
      </p>
      <p>
        Ethereum is a revolutionary blockchain platform that extends beyond the capabilities of a simple
cryptocurrency like Bitcoin. It was proposed in late 2013 by Vitalik Buterin and development was
crowdfunded in 2014, leading to its live launch in 2015. Ethereum distinguishes itself through its
implementation of smart contracts, which are self-executing contracts with the terms of the agreement
directly written into lines of code [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ].
      </p>
      <p>
        At the heart of Ethereum's functionality is the Ethereum Virtual Machine (EVM), which is the
runtime environment for smart contracts in Ethereum. It is a powerful, sandboxed virtual stack
embedded within each full Ethereum node, responsible for executing contract bytecode. Contracts in
Ethereum are written in high-level programming languages, such as Solidity, and are then compiled
into bytecode, which the EVM can read and execute [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ]. Ethereum also introduces the concept of 'gas',
which is a unit that measures the amount of computational effort required to execute operations like
transactions or smart contracts. Every operation in Ethereum requires a certain amount of gas, with
more complex operations requiring more gas. Gas is paid in Ethereum's native currency, Ether (ETH),
and it incentivizes miners to process and validate transactions on the network [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ].
      </p>
      <p>
        Ethereum's ability to support decentralized applications (dApps) through smart contracts has opened
up a wide range of possibilities, from decentralized finance (DeFi) to non-fungible tokens (NFTs), and
more. This functionality has positioned Ethereum as a leading platform for blockchain-based
innovations [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ].
      </p>
      <p>
        Smart contracts are self-executing contracts with the terms of the agreement directly written into
code. They run on the blockchain and automatically execute when predetermined conditions are met.
Smart contracts enable the automation of complex processes in a transparent and conflict-free
environment, reducing the need for intermediaries. They are pivotal in applications like decentralized
finance (DeFi) and non-fungible tokens (NFTs) [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ].
      </p>
      <p>
        Solidity is a statically-typed programming language designed for developing smart contracts that
run on the Ethereum Virtual Machine (EVM). It is influenced by C++, Python, and JavaScript and is
designed to target the unique requirements of blockchain-based applications. Solidity's syntax is similar
to that of JavaScript, making it relatively easy for developers with a background in web development
to learn. It allows for the creation of complex contracts for decentralized applications, including voting
systems, crowdfunding platforms, and automated token exchanges [
        <xref ref-type="bibr" rid="ref21">21</xref>
        ].
      </p>
      <p>Lesson
Lesson 1: Introduction to Cryptography
Early Cryptography and First Algorithms
Hash Functions and Practical Exercises
Lesson 4: The History of Money and
Cryptocurrency
Lesson 5: Digital Ledger Systems
Lesson 6: Decentralized Consensus
Lesson 7: The Evolution of Blockchain
Technology
Lesson 8: Introduction to Ethereum
Lesson 9: Ethereum's Mechanics and Gas
Concept
Lesson 10: Introduction to Smart Contracts
Lesson 11: Working with the Remix</p>
      <p>Environment
Module 3: Basics of Smart Contracts
Module 3: Basics of Smart Contracts
Module 3: Basics of Smart Contracts
Module 3: Basics of Smart Contracts</p>
      <p>Lesson 12: Smart Contract Basics: Data Types,
Functions, and Operations
Advanced Smart Contract Concepts:
Deployment, ABI Interfaces, Test Networks, and
Test Ether
In-Depth Smart Contract Development:
Memory, Storage, Calldata, Constants,
Inheritance, and Polymorphism
Lesson 15: Interacting with Smart Contracts:
ERC20 and ERC721 Standards, Contract
Interactions, and Abstract Contracts</p>
    </sec>
    <sec id="sec-5">
      <title>5. Conclusion</title>
      <p>Our research has highlighted a significant gap in the availability of comprehensive Web3 curricula
at the undergraduate level. While many Higher Education Institutions (HEIs) offer advanced courses
on these topics at the Master's or PhD levels, there is a clear need for introducing Web3 concepts earlier
in the academic journey, specifically in the final years of undergraduate studies. This early introduction
is crucial for aligning educational outcomes with the evolving demands of the Web3 job market. Our
proposed course framework, with its dual-curriculum approach, addresses this gap effectively. The first
curriculum, focusing on web development and JavaScript, lays a solid foundation in the principles of
modern web technologies. This foundation is essential not only for understanding the technical aspects
of Web3 but also for ensuring students are well-prepared for the more advanced topics covered in the
second curriculum.</p>
      <p>The second curriculum delves deeper into blockchain technologies, which are increasingly
recognized not just for their role in cryptocurrencies but more importantly for their application in
decentralized systems - the very cornerstone of Web3. This curriculum is designed to be comprehensive
and rigorous, spanning 15 weeks and adhering to the guidelines set by IEEE/ACM for Computer
Science and Information Technologies Curricula.</p>
      <p>In our curriculum, JavaScript emerges as the primary programming language due to its effectiveness
in handling peer-to-peer applications, a key component of decentralized systems. Additionally, we
incorporate newer languages that are gaining prominence in the realm of smart contracts, such as
Solidity and Rust. These languages are critical for students to master in order to develop secure,
efficient, and functional decentralized applications. Furthermore, we emphasize the importance of
integrating topics related to security within the curriculum. As Web3 technologies offer enhanced data
security, particularly in the handling of personal data, it is imperative for students to understand the
security challenges and solutions inherent in these technologies. This knowledge is not only
academically relevant but also crucial for preparing students to address real-world security concerns in
their future careers in the Web3 domain.</p>
      <p>In conclusion, our proposed curricula are designed to bridge the current educational gap in Web3
technologies at the undergraduate level. By providing a structured and comprehensive learning
pathway, we aim to equip the next generation of engineers and developers with the skills and knowledge
necessary to thrive in the rapidly evolving Web3 job market.</p>
    </sec>
    <sec id="sec-6">
      <title>6. Acknowledgements</title>
      <p>This paper was supported in part by the Blockchain Technology Laboratory at Belgrade
Metropolitan University, Belgrade, Serbia, and in part by the Ministry of Education, Science and
Technological Development, Republic of Serbia (Project III44006).</p>
    </sec>
    <sec id="sec-7">
      <title>7. References</title>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>Chisega-Negrilă</surname>
          </string-name>
          ,
          <article-title>Ana-Maria. "Education in web 3.0." JADLET Journal of Advanced Distributed Learning Technology (</article-title>
          <year>2013</year>
          ):
          <fpage>50</fpage>
          -
          <lpage>59</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <surname>Cao</surname>
            ,
            <given-names>Longbing.</given-names>
          </string-name>
          <article-title>"Decentralized ai: Edge intelligence and smart blockchain, metaverse, web3, and desci</article-title>
          .
          <source>" IEEE Intelligent Systems 37.3</source>
          (
          <year>2022</year>
          ):
          <fpage>6</fpage>
          -
          <lpage>19</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <surname>Voshmgir</surname>
            ,
            <given-names>Shermin.</given-names>
          </string-name>
          <article-title>Token economy: How the Web3 reinvents the internet</article-title>
          . Vol.
          <volume>2</volume>
          .
          <string-name>
            <given-names>Token</given-names>
            <surname>Kitchen</surname>
          </string-name>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>Filipčić</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          <article-title>"Web3 &amp; DAOs: an overview of the development and possibilities for the implementation in research and education." 2022 45th Jubilee International Convention on Information, Communication and Electronic Technology (MIPRO)</article-title>
          . IEEE,
          <year>2022</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>Murray</surname>
            , Alex, Dennie Kim, and
            <given-names>Jordan</given-names>
          </string-name>
          <string-name>
            <surname>Combs</surname>
          </string-name>
          .
          <article-title>"The promise of a decentralized internet: What is Web3 and how can firms prepare?." Business Horizons (</article-title>
          <year>2022</year>
          ).
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <surname>Kimbrell</surname>
            ,
            <given-names>Julia.</given-names>
          </string-name>
          <article-title>The impacts of web 2.0, web 3.0, and web 4.0 technologies used in distance education</article-title>
          . East Carolina University,
          <year>2013</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>D.</given-names>
            <surname>Flanagan</surname>
          </string-name>
          , JavaScript: The Definitive Guide,
          <string-name>
            <given-names>O</given-names>
            <surname>'Reilly Media</surname>
          </string-name>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>M.</given-names>
            <surname>Haverbeke</surname>
          </string-name>
          , Eloquent JavaScript: A Modern Introduction to Programming, No Starch Press,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>A.</given-names>
            <surname>Banks</surname>
          </string-name>
          , &amp; E.
          <string-name>
            <surname>Porcello</surname>
          </string-name>
          , Learning React:
          <article-title>Modern Patterns for Developing React Apps</article-title>
          ,
          <string-name>
            <given-names>O</given-names>
            <surname>'Reilly Media</surname>
          </string-name>
          ,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>M.</given-names>
            <surname>Nazare</surname>
          </string-name>
          , &amp; J.
          <string-name>
            <surname>Murray</surname>
          </string-name>
          ,
          <article-title>React and Web3: Building Complete Web3 Apps with React</article-title>
          ,
          <source>Independently Published</source>
          ,
          <year>2021</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <given-names>D.</given-names>
            <surname>Dietrich</surname>
          </string-name>
          , Building Ethereum Dapps:
          <article-title>Decentralized Applications on the Ethereum Blockchain</article-title>
          , Manning Publications,
          <year>2021</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <given-names>J.</given-names>
            <surname>Katz</surname>
          </string-name>
          , &amp; Y. Lindell, Introduction to Modern Cryptography, CRC Press,
          <year>2020</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <given-names>A. J.</given-names>
            <surname>Menezes</surname>
          </string-name>
          ,
          <string-name>
            <surname>P. C. van Oorschot</surname>
          </string-name>
          , &amp;
          <string-name>
            <given-names>S. A.</given-names>
            <surname>Vanstone</surname>
          </string-name>
          , Handbook of Applied Cryptography, CRC Press,
          <year>1996</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>A.</given-names>
            <surname>Narayanan</surname>
          </string-name>
          , et al.,
          <source>Bitcoin and Cryptocurrency Technologies: A Comprehensive Introduction</source>
          , Princeton University Press,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <given-names>W.</given-names>
            <surname>Mougayar</surname>
          </string-name>
          , The Business Blockchain: Promise, Practice, and
          <article-title>Application of the Next Internet Technology</article-title>
          , Wiley,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <surname>Buterin</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          (
          <year>2014</year>
          ).
          <article-title>Ethereum White Paper</article-title>
          . Ethereum Foundation.
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>A.</given-names>
            <surname>Greco</surname>
          </string-name>
          , Mastering Ethereum Virtual Machine, Packt Publishing,
          <year>2019</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>C.</given-names>
            <surname>Dannen</surname>
          </string-name>
          , Ethereum for Web Developers, Apress,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>W.</given-names>
            <surname>Mougayar</surname>
          </string-name>
          , The Business Blockchain: Promise, Practice, and
          <article-title>Application of the Next Internet Technology</article-title>
          , Wiley,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <given-names>C.</given-names>
            <surname>Dannen</surname>
          </string-name>
          , Introducing Ethereum and
          <article-title>Solidity: Foundations of Cryptocurrency and Blockchain Programming for Beginners</article-title>
          , Apress,
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [21]
          <string-name>
            <surname>A. M. Antonopoulos</surname>
          </string-name>
          , &amp; G. Wood, Mastering Ethereum:
          <article-title>Building Smart Contracts and DApps</article-title>
          ,
          <string-name>
            <surname>O'Reilly Media</surname>
          </string-name>
          ,
          <year>2018</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>