[Bitcoin and Cryptocurrency Technologies](https://bitcoinbook.cs.princeton.edu/)

Bitcoin and Cryptocurrency Technologies

Bitcoin and Cryptocurrency Technologies provides a comprehensive introduction to the revolutionary yet often misunderstood new technologies of digital currency. Whether you are a student, software developer, tech entrepreneur, or researcher in computer science, this authoritative and self-contained book tells you everything you need to know about the new global money for the Internet age. How do Bitcoin and its blockchain actually work? How secure are your bitcoins? How anonymous are users of cryptocurrencies? Can cryptocurrencies be regulated? These are some of the many questions this book answers. It begins by tracing the history and development of Bitcoin and cryptocurrencies, and then gives the conceptual and practical foundations you need to engineer secure software that interacts with the Bitcoin network as well as to integrate ideas from Bitcoin into your own projects. Topics include decentralization, mining, the politics of Bitcoin, altcoins and the cryptocurrency ecosystem, the future of Bitcoin, and more. ...

Arvind Narayanan, Joseph Bonneau, Edward W. Felten, Andrew Miller, Steven Goldfeder, Jeremy Clark
[Build Your Own Blockchain](https://link.springer.com/book/10.1007/978-3-030-40142-9)

Build Your Own Blockchain

Build Your Own Blockchain book provides a comprehensive introduction to blockchain and distributed ledger technology. Intended as an applied guide for hands-on practitioners, the book includes detailed examples and in-depth explanations of how to build and run a blockchain from scratch. Through its conceptual background and hands-on exercises, this book allows students, teachers and crypto enthusiasts to launch their first blockchain while assuming prior knowledge of the underlying technology. How do I build a blockchain? How do I mint a cryptocurrency? How do I write a smart contract? How do I launch an initial coin offering (ICO)? These are some of questions this book answers. Starting by outlining the beginnings and development of early cryptocurrencies, it provides the conceptual foundations required to engineer secure software that interacts with both public and private ledgers. The topics covered include consensus algorithms, mining and decentralization, and many more. ...

Daniel Hellwig, Goran Karlic, Arnd Huchzermeier
Designing Data-Intensive Applications

Designing Data-Intensive Applications

Data is at the center of many challenges in system design today. Difficult issues need to be figured out, such as scalability, consistency, reliability, efficiency, and maintainability. In addition, we have an overwhelming variety of tools, including relational databases, NoSQL datastores, stream or batch processors, and message brokers. What are the right choices for your application? How do you make sense of all these buzzwords? In this practical and comprehensive guide, author Martin Kleppmann helps you navigate this diverse landscape by examining the pros and cons of various technologies for processing and storing data. Software keeps changing, but the fundamental principles remain the same. With this book, software engineers and architects will learn how to apply those ideas in practice, and how to make full use of data in modern applications. ...

Martin Kleppmann
[Effective Java](https://www.oreilly.com/library/view/effective-java-3rd/9780134686097/)

Effective Java

Since this Jolt-award winning classic was last updated in 2008, the Java programming environment has changed dramatically. Java 7 and Java 8 introduced new features and functions including, forEach() method in Iterable interface, default and static methods in Interfaces, Functional Interfaces and Lambda Expressions, Java Stream API for Bulk Data Operations on Collections, Java Time API, Collection API improvements, Concurrency API improvements, and Java IO improvements. In this new edition of Effective Java, Bloch explores new design patterns and language idioms that have been introduced since the second edition was released in 2008 shortly after Java SE6, including Lambda, streams, generics and collections, as well as selected Java 9 features. ...

Joshua Bloch
[Mastering Bitcoin](https://www.oreilly.com/library/view/mastering-bitcoin-3rd/9781098150082/)

Mastering Bitcoin

If you are new to Bitcoin, I highly recommend checking this site: https://learnmeabitcoin.com/ Join the technological revolution that’s taking the financial world by storm. Mastering Bitcoin is your guide through the seemingly complex world of bitcoin, providing the knowledge you need to participate in the internet of money. Whether you’re building the next killer app, investing in a startup, or simply curious about the technology, this revised and expanded second edition provides essential detail to get you started. ...

Andreas M. Antonopoulos, David A. Harding