Book picks similar to
Grokking Bitcoin by Kalle Rosenbaum


bitcoin
crypto
computer-science
blockchain

The Little Elixir & OTP Guidebook


Benjamin Tan Wei Hao - 2015
    It combines the productivity and expressivity of Ruby with the concurrency and fault-tolerance of Erlang. Elixir makes full use of Erlang's powerful OTP library, which many developers consider the source of Erlang's greatness, so you can have mature, professional-quality functionality right out of the gate. Elixir's support for functional programming makes it a great choice for highly distributed event-driven applications like IoT systems.The Little Elixir & OTP Guidebook gets you started programming applications with Elixir and OTP. You begin with a quick overview of the Elixir language syntax, along with just enough functional programming to use it effectively. Then, you'll dive straight into OTP and learn how it helps you build scalable, fault-tolerant and distributed applications through several fun examples. Come rediscover the joy of programming with Elixir and remember how it feels like to be a beginner again.

Introducing Elixir: Getting Started in Functional Programming


Simon St.Laurent - 2013
    If you're new to Elixir, its functional style can seem difficult, but with help from this hands-on introduction, you'll scale the learning curve and discover how enjoyable, powerful, and fun this language can be. Elixir combines the robust functional programming of Erlang with an approach that looks more like Ruby and reaches toward metaprogramming with powerful macro features.Authors Simon St. Laurent and J. David Eisenberg show you how to write simple Elixir programs by teaching you one skill at a time. You’ll learn about pattern matching, recursion, message passing, process-oriented programming, and establishing pathways for data rather than telling it where to go. By the end of your journey, you’ll understand why Elixir is ideal for concurrency and resilience.* Get comfortable with IEx, Elixir's command line interface* Become familiar with Elixir’s basic structures by working with numbers* Discover atoms, pattern matching, and guards: the foundations of your program structure* Delve into the heart of Elixir processing with recursion, strings, lists, and higher-order functions* Create processes, send messages among them, and apply pattern matching to incoming messages* Store and manipulate structured data with Erlang Term * Storage (ETS) and the Mnesia database* Build resilient applications with the Open Telecom Platform (OTP)* Define macros with Elixir's meta-programming tools.

The Passionate Programmer


Chad Fowler - 2009
    In this book, you'll learn how to become an entrepreneur, driving your career in the direction of your choosing. You'll learn how to build your software development career step by step, following the same path that you would follow if you were building, marketing, and selling a product. After all, your skills themselves are a product. The choices you make about which technologies to focus on and which business domains to master have at least as much impact on your success as your technical knowledge itself--don't let those choices be accidental. We'll walk through all aspects of the decision-making process, so you can ensure that you're investing your time and energy in the right areas. You'll develop a structured plan for keeping your mind engaged and your skills fresh. You'll learn how to assess your skills in terms of where they fit on the value chain, driving you away from commodity skills and toward those that are in high demand. Through a mix of high-level, thought-provoking essays and tactical "Act on It" sections, you will come away with concrete plans you can put into action immediately. You'll also get a chance to read the perspectives of several highly successful members of our industry from a variety of career paths. As with any product or service, if nobody knows what you're selling, nobody will buy. We'll walk through the often-neglected world of marketing, and you'll create a plan to market yourself both inside your company and to the industry in general. Above all, you'll see how you can set the direction of your career, leading to a more fulfilling and remarkable professional life.

Streaming Systems


Tyler Akidau - 2018
    As more and more businesses seek to tame the massive unbounded data sets that pervade our world, streaming systems have finally reached a level of maturity sufficient for mainstream adoption. With this practical guide, data engineers, data scientists, and developers will learn how to work with streaming data in a conceptual and platform-agnostic way.Expanded from Tyler Akidau's popular blog posts Streaming 101 and Streaming 102, this book takes you from an introductory level to a nuanced understanding of the what, where, when, and how of processing real-time data streams. You'll also dive deep into watermarks and exactly-once processing with co-authors Slava Chernyak and Reuven Lax.You'll explore:How streaming and batch data processing patterns compareThe core principles and concepts behind robust out-of-order data processingHow watermarks track progress and completeness in infinite datasetsHow exactly-once data processing techniques ensure correctnessHow the concepts of streams and tables form the foundations of both batch and streaming data processingThe practical motivations behind a powerful persistent state mechanism, driven by a real-world exampleHow time-varying relations provide a link between stream processing and the world of SQL and relational algebra

Handbook of Applied Cryptography


Alfred J. Menezes - 1996
    Standards are emerging to meet the demands for cryptographic protection in most areas of data communications. Public-key cryptographic techniques are now in widespread use, especially in the financial services industry, in the public sector, and by individuals for their personal privacy, such as in electronic mail. This Handbook will serve as a valuable reference for the novice as well as for the expert who needs a wider scope of coverage within the area of cryptography. It is a necessary and timely guide for professionals who practice the art of cryptography. The Handbook of Applied Cryptography provides a treatment that is multifunctional: It serves as an introduction to the more practical aspects of both conventional and public-key cryptographyIt is a valuable source of the latest techniques and algorithms for the serious practitionerIt provides an integrated treatment of the field, while still presenting each major topic as a self-contained unitIt provides a mathematical treatment to accompany practical discussionsIt contains enough abstraction to be a valuable reference for theoreticians while containing enough detail to actually allow implementation of the algorithms discussedNow in its third printing, this is the definitive cryptography reference that the novice as well as experienced developers, designers, researchers, engineers, computer scientists, and mathematicians alike will use.

Refactoring: Improving the Design of Existing Code


Martin Fowler - 1999
    Significant numbers of poorly designed programs have been created by less-experienced developers, resulting in applications that are inefficient and hard to maintain and extend. Increasingly, software system professionals are discovering just how difficult it is to work with these inherited, non-optimal applications. For several years, expert-level object programmers have employed a growing collection of techniques to improve the structural integrity and performance of such existing software programs. Referred to as refactoring, these practices have remained in the domain of experts because no attempt has been made to transcribe the lore into a form that all developers could use... until now. In Refactoring: Improving the Design of Existing Software, renowned object technology mentor Martin Fowler breaks new ground, demystifying these master practices and demonstrating how software practitioners can realize the significant benefits of this new process.

Head First Design Patterns


Eric Freeman - 2004
     At any given moment, somewhere in the world someone struggles with the same software design problems you have. You know you don't want to reinvent the wheel (or worse, a flat tire), so you look to Design Patterns--the lessons learned by those who've faced the same problems. With Design Patterns, you get to take advantage of the best practices and experience of others, so that you can spend your time on...something else. Something more challenging. Something more complex. Something more fun. You want to learn about the patterns that matter--why to use them, when to use them, how to use them (and when NOT to use them). But you don't just want to see how patterns look in a book, you want to know how they look "in the wild". In their native environment. In other words, in real world applications. You also want to learn how patterns are used in the Java API, and how to exploit Java's built-in pattern support in your own code. You want to learn the real OO design principles and why everything your boss told you about inheritance might be wrong (and what to do instead). You want to learn how those principles will help the next time you're up a creek without a design pattern. Most importantly, you want to learn the "secret language" of Design Patterns so that you can hold your own with your co-worker (and impress cocktail party guests) when he casually mentions his stunningly clever use of Command, Facade, Proxy, and Factory in between sips of a martini. You'll easily counter with your deep understanding of why Singleton isn't as simple as it sounds, how the Factory is so often misunderstood, or on the real relationship between Decorator, Facade and Adapter. With Head First Design Patterns, you'll avoid the embarrassment of thinking Decorator is something from the "Trading Spaces" show. Best of all, in a way that won't put you to sleep! We think your time is too important (and too short) to spend it struggling with academic texts. If you've read a Head First book, you know what to expect--a visually rich format designed for the way your brain works. Using the latest research in neurobiology, cognitive science, and learning theory, Head First Design Patterns will load patterns into your brain in a way that sticks. In a way that lets you put them to work immediately. In a way that makes you better at solving software design problems, and better at speaking the language of patterns with others on your team.

Coders at Work: Reflections on the Craft of Programming


Peter Seibel - 2009
    As the words "at work" suggest, Peter Seibel focuses on how his interviewees tackle the day–to–day work of programming, while revealing much more, like how they became great programmers, how they recognize programming talent in others, and what kinds of problems they find most interesting. Hundreds of people have suggested names of programmers to interview on the Coders at Work web site: http://www.codersatwork.com. The complete list was 284 names. Having digested everyone’s feedback, we selected 16 folks who’ve been kind enough to agree to be interviewed:- Frances Allen: Pioneer in optimizing compilers, first woman to win the Turing Award (2006) and first female IBM fellow- Joe Armstrong: Inventor of Erlang- Joshua Bloch: Author of the Java collections framework, now at Google- Bernie Cosell: One of the main software guys behind the original ARPANET IMPs and a master debugger- Douglas Crockford: JSON founder, JavaScript architect at Yahoo!- L. Peter Deutsch: Author of Ghostscript, implementer of Smalltalk-80 at Xerox PARC and Lisp 1.5 on PDP-1- Brendan Eich: Inventor of JavaScript, CTO of the Mozilla Corporation - Brad Fitzpatrick: Writer of LiveJournal, OpenID, memcached, and Perlbal - Dan Ingalls: Smalltalk implementor and designer- Simon Peyton Jones: Coinventor of Haskell and lead designer of Glasgow Haskell Compiler- Donald Knuth: Author of The Art of Computer Programming and creator of TeX- Peter Norvig: Director of Research at Google and author of the standard text on AI- Guy Steele: Coinventor of Scheme and part of the Common Lisp Gang of Five, currently working on Fortress- Ken Thompson: Inventor of UNIX- Jamie Zawinski: Author of XEmacs and early Netscape/Mozilla hackerWhat you’ll learn:How the best programmers in the world do their jobWho is this book for?Programmers interested in the point of view of leaders in the field. Programmers looking for approaches that work for some of these outstanding programmers.

Code Complete


Steve McConnell - 1993
    Now this classic book has been fully updated and revised with leading-edge practices--and hundreds of new code samples--illustrating the art and science of software construction. Capturing the body of knowledge available from research, academia, and everyday commercial practice, McConnell synthesizes the most effective techniques and must-know principles into clear, pragmatic guidance. No matter what your experience level, development environment, or project size, this book will inform and stimulate your thinking--and help you build the highest quality code. Discover the timeless techniques and strategies that help you: Design for minimum complexity and maximum creativity Reap the benefits of collaborative development Apply defensive programming techniques to reduce and flush out errors Exploit opportunities to refactor--or evolve--code, and do it safely Use construction practices that are right-weight for your project Debug problems quickly and effectively Resolve critical construction issues early and correctly Build quality into the beginning, middle, and end of your project

Cryptoassets: The Innovative Investor's Guide to Bitcoin and Beyond


Chris Burniske - 2017
    Bitcoin was the first cryptoasset, but today there are over 800 and counting, including ether, ripple, litecoin, monero, and more. This clear, concise, and accessible guide from two industry insiders shows you how to navigate this brave new blockchain world—and how to invest in these emerging assets to secure your financial future. Cryptoassets gives you all the tools you need: * An actionable framework for investigating and valuing cryptoassets * Portfolio management techniques to maximize returns while managing risk * Historical context and tips to navigate inevitable bubbles and manias * Practical guides to exchanges, wallets, capital market vehicles, and ICOs * Predictions on how blockchain technology may disrupt current portfolios In addition to offering smart investment strategies, this authoritative resource will help you understand how these assets were created, how they work, and how they are evolving amid the blockchain revolution. The authors define a clear and original cryptoasset taxonomy, composed of cryptocurrencies, cryptocommodities, and cryptotokens, with insights into how each subset is blending technology and markets. You’ll find a variety of methods to invest in these assets, whether through global exchanges trading 24/7 or initial cryptoasset offerings (ICOs). By sequentially building on the concepts of each prior chapter, the book will provide you with a full understanding of the cryptoasset economy and the opportunities that await the innovative investor . Cryptoassets represent the future of money and markets. This book is your guide to that future.

Once a Bitcoin Miner: Scandal and Turmoil in the Cryptocurrency Wild West


Ethan Lou - 2021
    From investing in Bitcoin in university to his time writing for Reuters, and then mining the digital asset ― Lou meets a co-founder of Ethereum and Gerald Cotten of QuadrigaCX (before he was reported dead), and hangs out in North Korea with Virgil Griffith, the man later arrested for allegedly teaching blockchain to the totalitarian state.Coming of age in the 2008 financial crisis, Lou's generation has a natural affinity with this rebel internet money, this so-called millennial gold, created in the wake of that economic storm. At once an immersive narrative of adventure and fortune, Once a Bitcoin Miner is also a work of journalistic rigor. Lou examines this domain through the lens of the human condition, delving deep into the lives of the fast-talkers, the exiles, the ambitious, and the daring, forging their paths in a new world harsh and unpredictable.

Fluent Python: Clear, Concise, and Effective Programming


Luciano Ramalho - 2015
    With this hands-on guide, you'll learn how to write effective, idiomatic Python code by leveraging its best and possibly most neglected features. Author Luciano Ramalho takes you through Python's core language features and libraries, and shows you how to make your code shorter, faster, and more readable at the same time.Many experienced programmers try to bend Python to fit patterns they learned from other languages, and never discover Python features outside of their experience. With this book, those Python programmers will thoroughly learn how to become proficient in Python 3.This book covers:Python data model: understand how special methods are the key to the consistent behavior of objectsData structures: take full advantage of built-in types, and understand the text vs bytes duality in the Unicode ageFunctions as objects: view Python functions as first-class objects, and understand how this affects popular design patternsObject-oriented idioms: build classes by learning about references, mutability, interfaces, operator overloading, and multiple inheritanceControl flow: leverage context managers, generators, coroutines, and concurrency with the concurrent.futures and asyncio packagesMetaprogramming: understand how properties, attribute descriptors, class decorators, and metaclasses work"

Cassandra: The Definitive Guide


Eben Hewitt - 2010
    Cassandra: The Definitive Guide provides the technical details and practical examples you need to assess this database management system and put it to work in a production environment.Author Eben Hewitt demonstrates the advantages of Cassandra's nonrelational design, and pays special attention to data modeling. If you're a developer, DBA, application architect, or manager looking to solve a database scaling issue or future-proof your application, this guide shows you how to harness Cassandra's speed and flexibility.Understand the tenets of Cassandra's column-oriented structureLearn how to write, update, and read Cassandra dataDiscover how to add or remove nodes from the cluster as your application requiresExamine a working application that translates from a relational model to Cassandra's data modelUse examples for writing clients in Java, Python, and C#Use the JMX interface to monitor a cluster's usage, memory patterns, and moreTune memory settings, data storage, and caching for better performance

How Money Got Free: Bitcoin and the Fight for the Future of Finance


Brian Patrick Eha - 2017
    Venture capital firms, Goldman Sachs, the New York Stock Exchange, and billionaires such as Richard Branson and Peter Thiel have invested more than $1 billion in companies built on this groundbreaking technology. Bill Gates has even declared it ‘better than currency’. The pioneers of Bitcoin were twenty-first-century outlaws – cryptographers, hackers, Free Staters, ex-cons and drug dealers, teenage futurists and self-taught entrepreneurs – armed with a renegade ideology and a grudge against big government and big banks. Now those same institutions are threatening to co-opt or curtail the impact of digital currency. But the pioneers, some of whom have become millionaires themselves, aren’t going down without a fight. Sweeping and provocative, How Money Got Free reveals how this disruptive technology is shaping the debate around competing ideas of money and liberty, and what that means for our future.

Blockchain Bubble or Revolution: The Present and Future of Blockchain and Cryptocurrencies


Neel Mehta - 2019
    Authored by Product Managers from Google, Microsoft, and Facebook, Bubble or Revolution cuts through the hype to offer a balanced, comprehensive, and accessible analysis of blockchains and cryptocurrencies.You'll learn the core concepts of these technologies and understand their strengths and weaknesses from real-world case studies; dive deep into their technical, economic, political, and legal complexities; and gain insights about their future from exclusive interviews with dozens of tech industry leaders. No coding or math needed!Are cryptocurrencies and blockchains a bubble or a revolution? We'll help you decide for yourself.What's inside:Bitcoin and the blockchainHow Bitcoin and blockchains work from a technical perspective with no assumed technical knowledgeSatoshi Nakamoto and the history of Bitcoin, the original blockchainA thorough overview of crucial crypto concepts (eg. blocks, keys, mining, nodes, etc.)Frameworks for understanding when it actually makes sense to use blockchainMajor application scenarios for blockchain and cryptocurrencies and where it'll fall flatPublic blockchains and altcoinsEmerging trends in blockchain technologyWhat you should know before buying any cryptocurrencyAn overview of Etherum and smart contractsAn overview of the strengths and weaknesses of the top altcoins and stable coins, including Monero (XMR), Tether (USDT), and Bitcoin Cash (BCH)Alternatives to blockchain and cryptocurrenciesNew kinds of decentralized ledger technology (dlt)The economics of both traditional payment methods and cryptocurrenciesCryptocurrency security best practices and major breach case studiesPrivate blockchainsHow blockchain, cryptocurrencies, and traditional banking and finance will interact with one another in the futurePublic blockchains vs private blockchainsLimitations and shortcomings of public blockchains and cryptocurrenciesThe role of blockchain in the strategy of top tech companies like Facebook and MicrosoftCase studies of how non-tech companies are effectively utilizing blockchain (eg. Walmart using it to prevent foodborne illness)Business blockchain case studies ranging from gaming (e.g. Xbox) to cloud services (e.g. Microsoft Azure's blockchain-as-a-service and Amazon's AWS offering)Blockchain's use for big data, internet of things (IoT), and machine learning (ML)Cryptocurrency regulation and policyICOs vs STOs vs IPOsICOs' status as securitiesThe SEC's STO rules and Reg A+/CF/D/SKYC and AML lawsThe debate over whether cryptocurrencies are securitiesThe official stance of various countries on cryptoAn overview of crypto policy and regulatory hurdlesThe role of crypto in emerging markets and ChinaDigital democracy and voting on the blockchainThe future of decentralized technologyIf, how, and when the tokenization of national currencies will play outFacebook and WhatsApp's upcoming cryptocurrenciesCurrency tokenization and China's efforts to tokenize the yuanBlockchain, IoT, and the tangleCryptocurrencies vs. fiat vs. the gold standardPredictions about the future of money, business, and currencyWhy blockchains would do better on Mars than Earth