Understand the Blockchain Ecosystem and How to Make it Work for You

Book Description:

Work with blockchain and understand its potential application beyond cryptocurrencies in the domains of healthcare, Internet of Things, finance, decentralized organizations, and open science. Featuring case studies and practical insights generated from a start-up spun off from the author’s own lab, this book covers a unique mix of topics not found in others and offers insight into how to overcome real hurdles that arise as the market and consumers grow accustomed to blockchain based start-ups.

You’ll start with a review of the historical origins of blockchain and explore the basic cryptography needed to make the blockchain work for Bitcoin. You will then learn about the technical advancements made in the surrounded ecosystem: the Ethereum virtual machine, Solidity, Colored Coins, the Hyperledger Project, Blockchain-as-a-service offered through IBM, Microsoft and more.

This book looks at the consequences of machine-to-machine transactions using the blockchain socially, technologically, economically and politically. Blockchain Enabled Applications provides you with a clear perspective of the ecosystem that has developed around the blockchain and the various industries it has penetrated.

Book Description:

Make your data work for you!

Tableau For Dummies brings order to the chaotic world of data. Understanding your data and organizing it into formats and visualizations that make sense to you are crucial to making a real impact on your business with the information that’s already at your fingertips. This easy-to-use reference explores the user interface, and guides you through the process of connecting your data sources to the software. Additionally, this approachable, yet comprehensive text shows you how to use graphs, charts, and other images to bring visual interest to your data, how to create dashboards from multiple data sources, and how to export the visualizations that you have developed into multiple formats that translate into positive change for your business.

The mission of Tableau Software is to grant you access to data that, when put into action, will help you build your company. Learning to use the data available to you helps you make informed, grounded business decisions that can spell success for your company.

  • Navigate the user interface to efficiently access the features you need
  • Connect to various spreadsheets, databases, and other data sources to create a multi-dimensional snapshot of your business
  • Develop visualizations with easy to use drag and drop features
  • Start building your data with templates and sample workbooks to spark your creativity and help you organize your information

Tableau For Dummies is a step-by-step resource that helps you make sense of the data landscape—and put your data to work in support of your business.

A Problem-Solution Approach

Book Description:

Harness the power of MATLAB to resolve a wide range of machine learning challenges. This book provides a series of examples of technologies critical to machine learning. Each example solves a real-world problem.

All code in MATLAB Machine Learning Recipes:  A Problem-Solution Approach is executable. The toolbox that the code uses provides a complete set of functions needed to implement all aspects of machine learning. Authors Michael Paluszek and Stephanie Thomas show how all of these technologies allow the reader to build sophisticated applications to solve problems with pattern recognition, autonomous driving, expert systems, and much more.

What you’ll learn:

  • How to write code for machine learning, adaptive control and estimation using MATLAB
  • How these three areas complement each other
  • How these three areas are needed for robust machine learning applications
  • How to use MATLAB graphics and visualization tools for machine learning
  • How to code real world examples in MATLAB for major applications of machine learning in big data
Who is this book for:

The primary audiences are engineers, data scientists and students wanting a comprehensive and code cookbook rich in examples on machine learning using MATLAB.

A Practical Guide to Understanding and Troubleshooting BGP (Networking Technology)

Book Description:

The definitive guide to troubleshooting today’s complex BGP networks

This is today’s best single source for the techniques you need to troubleshoot BGP issues in modern Cisco IOS, IOS XR, and NxOS environments. BGP has expanded from being an Internet routing protocol and provides a scalable control plane for a variety of technologies, including MPLS VPNs and VXLAN. Bringing together content previously spread across multiple sources, Troubleshooting BGP describes BGP functions in today’s blended service provider and enterprise environments.

Two expert authors emphasize the BGP-related issues you’re most likely to encounter in real-world deployments, including problems that have caused massive network outages. They fully address convergence and scalability, as well as common concerns such as BGP slow peer, RT constraint filtering, and missing BGP routes. For each issue, key concepts are presented, along with basic configuration, detailed troubleshooting methods, and clear illustrations. Wherever appropriate, OS-specific behaviors are described and analyzed.

Troubleshooting BGP is an indispensable technical resource for all consultants, system/support engineers, and operations professionals working with BGP in even the largest, most complex environments.

·         Quickly review the BGP protocol, configuration, and commonly used features

·         Master generic troubleshooting methodologies that are relevant to BGP networks

·         Troubleshoot BGP peering issues, flapping peers, and dynamic BGP peering

·         Resolve issues related to BGP route installation, path selection, or route policies

·         Avoid and fix convergence problems

·         Address platform issues such as high CPU or memory usage

·         Scale BGP using route reflectors, diverse paths, and other advanced features

·         Solve problems with BGP edge architectures, multihoming, and load balancing

·         Secure BGP inter-domain routing with RPKI

·         Mitigate DDoS attacks with RTBH and BGP Flowspec

·         Understand common BGP problems with MPLS Layer 3 or Layer 2 VPN services

·         Troubleshoot IPv6 BGP for service providers, including 6PE and 6VPE

·         Overcome problems with VXLAN BGP EVPN data center deployments

·         Fully leverage BGP High Availability features, including GR, NSR, and BFD

·         Use new BGP enhancements for link-state distribution or tunnel setup

This book is part of the Networking Technology Series from Cisco Press, which offers networking professionals valuable information for constructing efficient networks, understanding new technologies, and building successful careers.

The Modern Approach to Continuous Performance Improvement for Businesses

Book Description:

Apply a powerful new approach and method that ensures continuous performance improvement for your business. You will learn how to determine and value the people, process, and technology-based solutions that will optimize your organization’s data-to-learning-to-action processes.

This book describes in detail how to holistically optimize the chain of activities that span from data to learning to decisions to actions, an imperative for achieving outstanding performance in today’s business environment. Adapting and integrating insights from decision science, constraint theory, and process improvement, the book provides a method that is clear, effective, and can be applied to nearly every business function and sector.

You will learn how to systematically work backwards from decisions to data, estimate the flow of value along the chain, and identify the inevitable value bottlenecks. And, importantly, you will learn techniques for quantifying the value that can be attained by successfully addressing the bottlenecks, providing the credible support needed to make the right level of investments at the right place and at just the right time.

In today’s dynamic environment, with its never-ending stream of new, disruptive technologies that executives must consider (e.g., cloud computing, Internet of Things, AI/machine learning, business intelligence, enterprise social, etc., along with the associated big data generated), author Steven Flinn provides the comprehensive approach that is needed for making effective decisions about these technologies, underpinned by credibly quantified value.

What You’ll Learn

  • Understand data-to-learning-to-action processes and their fundamental elements
  • Discover the highest leverage data-to-learning-to-action processes in your organization
  • Identify the key decisions that are associated with a data-to-learning-to-action process
  • Know why it’s NOT all about data, but it IS all about decisions and learning
  • Determine the value upside of enhanced learning that can improve decisions
  • Work backwards from the decisions to determine the value constraints in data-to-learning-to-action processes
  • Evaluate people, process, and technology-based solution options to address the constraints
  • Quantify the expected value of each of the solution options and prioritize accordingly
  • Implement, measure, and continuously improve by addressing the next constraints on value

Who This Book Is ForBusiness executives and managers seeking the next level of organizational performance, knowledge workers who want to maximize their impact, technology managers and practitioners who require a more effective means to prioritize technology options and deployments, technology providers who need a way to credibly quantify the value of their offerings, and consultants who are ready to build practices around the next big business performance paradigm

Book Description:

The Object-Oriented Thought Process, Fourth Edition

An introduction to object-oriented concepts for developers looking to master modern application practices

Object-oriented programming (OOP) is the foundation of modern programming languages, including C++, Java, C#, Visual Basic .NET, Ruby, and Objective-C. Objects also form the basis for many web technologies such as JavaScript, Python, and PHP.

It is of vital importance to learn the fundamental concepts of object orientation before starting to use object-oriented development environments. OOP promotes good design practices, code portability, and reuse–but it requires a shift in thinking to be fully understood. Programmers new to OOP should resist the temptation to jump directly into a particular programming language (such as Objective-C, VB .NET, C++, C# .NET, or Java) or a modeling language (such as UML), and instead first take the time to learn what author Matt Weisfeld calls “the object-oriented thought process.”

Written by a developer for developers who want to make the leap to object-oriented technologies, The Object-Oriented Thought Process provides a solutions-oriented approach to object-oriented programming. Readers will learn to understand the proper uses of inheritance and composition, the difference between aggregation and association, and the important distinction between interfaces and implementations.

While programming technologies have been changing and evolving over the years, object-oriented concepts remain a constant–no matter what the platform. This revised edition focuses on interoperability across programming technologies, whether you are using objects in traditional application design, in XML-based data transactions, in web page development, in mobile apps, or in any modern programming environment.

“Programmers who aim to create high quality software–as all programmers should–must learn the varied subtleties of the familiar yet not so familiar beasts called objects and classes. Doing so entails careful study of books such as Matt Weisfeld’s The Object-Oriented Thought Process.”

–Bill McCarty, author of Java Distributed Objects, and Object-Oriented Design in Java

Contents at a Glance

1 Introduction to Object-Oriented Concepts
2 How to Think in Terms of Objects
3 Advanced Object-Oriented Concepts
4 The Anatomy of a Class
5 Class Design Guidelines
6 Designing with Objects
7 Mastering Inheritance and Composition
8 Frameworks and Reuse: Designing with Interfaces and Abstract Classes
9 Building Objects and Object-Oriented Design
10 Creating Object Models
11 Objects and Portable Data: XML and JSON
12 Persistent Objects: Serialization, Marshaling, and Relational Databases
13 Objects in Web Services, Mobile Apps, and Hybrids
14 Objects and Client/Server Applications
15 Design Patterns

Teaching Concepts and Preparing for FLL® Competition

Book Description:

Program Lego® My Blocks to accurately perform navigation functions on competition mats, such as moving forward and backward quickly and precisely, turning, following walls, and following lines. This book features extensive illustrations help to bring each step and concept to life so that you can easily follow along.

You’ll start by moving your creations forward and backward accurate distances while maintaining directional accuracy. You’ll then build My Blocks to turn left and right at precise angles. After that you’re creations will be ready to find, follow, and otherwise use lines on the mat to improve navigation accuracy. Finally, you’ll delve into using game board border walls to navigate and advanced topics, such as handoffs at speed and accelerating/decelerating to enable higher speed while maintaining navigation accuracy.

This book addresses EV3 programming in the specific context of FLL® competition. With Programming Lego® EV3 My Blocks, you will be game-ready to manage the season, prepare for competition, and compete!

What You’ll Learn

  • Construct and use My Blocks to improve robot performance in the FLL® Robot Game
  • Develop basic programming skills, including feedback, troubleshooting techniques, and unit conversion
  • Comment programs appropriately to note errors and consistency
Who This Book Is For

The book is targeted at the many FLL® coaches, mentors, and students who need help with programming the EV3, as well as the students they coach. A secondary audience is teachers who want to use the EV3 to teach programming concepts.

From Pre-Sales to Post-Production

Book Description:

Get a 360-degree view of digital project management. Learn proven best practices from case studies and real-world scenarios. A variety of project management tools, templates, models, and frameworks are covered.
This book provides an in-depth view of digital project management from initiation to execution to monitoring and maintenance. Covering end-to-end topics from pre-sales to post-production, the book explores project management from various dimensions. Each core concept is complemented by case studies and real-world scenarios.

The Complete Guide to Digital Project Management provides valuable tools for your use such as:

  • Frameworks: governance, quality, knowledge transfer, root cause analysis, digital product evaluation, digital consulting, estimation
  • Templates: estimation, staffing, resource induction, RACI
  • Models: governance, estimation, pricing, digital maturity continuous execution, earned value management and effort forecast
  • Metrics: project management, quality

What You’ll Learn

  • Study best practices and failure scenarios in digital projects, including common challenges, recurring problem themes, and leading indicators of project failures
  • Explore an in-depth discussion of topics related to project quality and project governance
  • Understand Agile and Scrum practices for Agile execution
  • See how to apply Quality Management in digital projects, including a quality strategy, a quality framework, achieving quality in various project phases, and quality best practices
  • Be able to use proven metrics and KPIs to track, monitor, and measure project performance
  • Discover upcoming trends and innovations in digital project management
  • Read more than 20 real-world scenarios in digital project management with proven best practices to handle the scenarios, and a chapter on a digital transformation case study

Who This Book Is For

Software project managers, software program managers, account managers, software architects, lead developers, and digital enthusiasts

Second International Conference, HCC 2016, Colombo, Sri Lanka, January 7-9, 2016, Revised Selected Papers

Book Description:

This book constitutes revised selected papers from the thoroughly refereed proceedings of the Second International Human Centered Computing Conference, HCC 2016, that consolidated and further develops the successful ICPCA/SWS conferences on Pervasive Computing and the Networked World, and which was held in Colombo, Sri Lanka, in January 2016.

The 58 full papers and 30 short papers presented in this volume together with one keynote talk were carefully reviewed and selected from 211 submissions. These proceedings present research papers investigating into a variety of aspects towards human centric intelligent societies. They cover the categories: infrastructure and devices; service and solution; data and knowledge; and community.

A Beginner’s Guide

Book Description:

Use this practical, hands-on guide to get started with ProcessMaker. The book provides clear steps for you to walk through and set up ProcessMaker on your own system and make processes run faster and smarter. You will model and build a complete business process for requesting, approving, and reporting expenses.

In the course of building the process, you will understand:

  • The Workflow Designer for modeling business processes using BPMN 2.0
  • The Dynaform Designer for creating responsive HTML forms

  • Input and Output documents for capturing supporting documents for business processes and generating standardized documents from the data captured in a process
  • Triggers for implementing custom business logic and extending ProcessMaker functionality

What You’ll Learn

  • Send email notifications and add comments to cases
  • Build complex routing rules
  • Manage users and their permissions
  • Deploy ProcessMaker to a cloud server
  • Configure and use the ProcessMaker mobile app

Who This Book Is For

Business analysts, programmers, and professionals in all industries (e.g., higher education, finance and insurance, government, healthcare, manufacturing, and telecommunications)

Book Description:

Flex your project management muscle

Agile project management is a fast and flexible approach to managing all projects, not just software development. By learning the principles and techniques in this book, you’ll be able to create a product roadmap, schedule projects, and prepare for product launches with the ease of Agile software developers. You’ll discover how to manage scope, time, and cost, as well as team dynamics, quality, and risk of every project.

As mobile and web technologies continue to evolve rapidly, there is added pressure to develop and implement software projects in weeks instead of months—and Agile Project Management For Dummies can help you do just that. Providing a simple, step-by-step guide to Agile project management approaches, tools, and techniques, it shows product and project managers how to complete and implement projects more quickly than ever.

  • Complete projects in weeks instead of months
  • Reduce risk and leverage core benefits for projects
  • Turn Agile theory into practice for all industries
  • Effectively create an Agile environment

Get ready to grasp and apply Agile principles for faster, more accurate development.

A Guide to Building Deep Learning Systems

Book Description:

Roughly inspired by the human brain, deep neural networks trained with large amounts of data can solve complex tasks with unprecedented accuracy. This practical book provides an end-to-end guide to TensorFlow, the leading open source software library that helps you build and train neural networks for computer vision, natural language processing (NLP), speech recognition, and general predictive analytics.

Authors Tom Hope, Yehezkel Resheff, and Itay Lieder provide a hands-on approach to TensorFlow fundamentals for a broad technical audience—from data scientists and engineers to students and researchers. You’ll begin by working through some basic examples in TensorFlow before diving deeper into topics such as neural network architectures, TensorBoard visualization, TensorFlow abstraction libraries, and multithreaded input pipelines. Once you finish this book, you’ll know how to build and deploy production-ready deep learning systems in TensorFlow.

  • Get up and running with TensorFlow, rapidly and painlessly
  • Learn how to use TensorFlow to build deep learning models from the ground up
  • Train popular deep learning models for computer vision and NLP
  • Use extensive abstraction libraries to make development easier and faster
  • Learn how to scale TensorFlow, and use clusters to distribute model training
  • Deploy TensorFlow in a production setting

Get to grips with the PHPList e-mail announcement delivery system!

Book Description:

Tired of an e-mail BCC list that scrolls off the page, or fiddly and hard-to-manage bulk mailing systems? You need PHPList – a high-powered, robust, feature-packed mailing system that will get out of your way and get the job done! You want to know more about PHPList?

PHPList is a popular open source e-mail campaign manager, sporting a powerful web frontend, rich message editor, and an advanced feature set.

PHPList 2 E-mail Campaign Manager will guide you from basic installation and setup through management, reporting, and automation of PHPList, the world’s most popular open source e-mail campaign manager. It also covers advanced customization and configuration of PHPList.

We start with a basic configuration, and finish with a full-featured e-mail management engine. You will work your way up from basic installation to advanced topics such as bounce automation, user and click-through tracking, and integration with third-party tools such as WordPress, Joomla!, Drupal, and Blogger.

Advanced topics such as securing your installation against spammers, attacks, and vulnerabilities are covered, as well as additional advanced and experimental features offered by PHPList.

This book is an invaluable guide for any e-mail publisher who wants a robust and powerful engine to manage their small-to-huge e-mail distribution empire.

This book is a step-by-step, in-depth guide to the features and usage of the world’s most popular open source e-mail campaign manager, PHPList.

What you will learn from this book

  • Install and set up PHPList on your web hosting platform
  • Integrate subscription with third-party publishing platforms
  • Configure intelligent bounce handling
  • Integrate membership and features with Joomla!, Drupal, WordPress, and Blogger
  • Automate list management and bounce processing
  • Gain insight with user and click tracking reports
  • Leverage advanced features for greater flexibility and results
  • Secure PHPList from attacks and future vulnerabilities
  • Troubleshoot common issues
  • Avoid dealing with spammers by implementing CAPTCHAs

A comprehensive, hands-on guide to install, administer, and configure settings in YARN

Book Description:

YARN is the next generation generic resource platform used to manage resources in a typical cluster and is designed to support multitenancy in its core architecture. As optimal resource utilization is central to the design of YARN, learning how to fully utilize the available fine-grained resources (RAM, CPU cycles, and so on) in the cluster becomes vital.

This book is an easy-to-follow, self-learning guide to help you start working with YARN. Beginning with an overview of YARN and Hadoop, you will dive into the pitfalls of Hadoop 1.x and how YARN takes us to the next level. You will learn the concepts, terminology, architecture, core components, and key interactions, and cover the installation and administration of a YARN cluster as well as learning about YARN application development with new and emerging data processing frameworks.

Who This Book Is For

If you have a working knowledge of Hadoop 1.x but want to start afresh with YARN, this book is ideal for you. You will be able to install and administer a YARN cluster and also discover the configuration settings to fine-tune your cluster both in terms of performance and scalability. This book will help you develop, deploy, and run multiple applications/frameworks on the same shared YARN cluster.

What You Will Learn

  • Understand how existing MapReduce applications can run on top of YARN and how they are backward compatible
  • Explore the YARN concepts, terminologies, architecture, key components, and interaction between the components
  • Set up a standalone and multi-node clustered YARN environment
  • Design, develop, and run different frameworks such as MapReduce, Apache Storm, Apache Tez, and Giraffe on top of YARN
  • Get to grips with the built-in support for multitenancy in YARN
  • Discover the motivation behind YARN’s architecture design, implementations, and why YARN was needed
  • Learn how failures at each level are gracefully handled by the new framework to achieve fault tolerance and scalability

Book Description:

SQL Server 2012 Integration Services Design Patterns is a book of recipes for SQL Server Integration Services (SSIS). Design patterns in the book show how to solve common problems encountered when developing data integration solutions. Because you do not have to build the code from scratch each time, using design patterns improves your efficiency as an SSIS developer. In SSIS Design Patterns, we take you through several of these snippets in detail, providing the technical details of the resolution.

SQL Server 2012 Integration Services Design Patterns does not focus on the problems to be solved; instead, the book delves into why particular problems should be solved in certain ways. You’ll learn more about SSIS as a result, and you’ll learn by practical example. Where appropriate, SQL Server 2012 Integration Services Design Patternsprovides examples of alternative patterns and discusses when and where they should be used. Highlights of the book include sections on ETL Instrumentation, SSIS Frameworks, and Dependency Services.

  • Takes you through solutions to several common data integration challenges
  • Demonstrates new features in SQL Server 2012 Integration Services
  • Teaches SSIS using practical examples

LEGO MINDSTORMS EV3 Design Patterns for Fun and Competition

Book Description:

Design that works! It’s what you need if you’re building and competing with LEGO MINDSTORMS EV3 robotics. You’ll find uses for the new light sensors and gyro sensors in navigation, helping you to follow lines and make turns more consistently. Approach collision detection with greater confidence through EV3’s ultrasonic sensor. Learn new designs for power attachments.

Winning Design! is about building with LEGO MINDSTORMS EV3 for fun, for education, but especially for competition. Author James Trobaugh is an experienced coach and leader in the FIRST LEGO League. In this book, he shares his hard-won knowledge about design principles and techniques that contribute toward success in robotics competitions.

Winning Design! unlocks the secrets of reliable design using LEGO MINDSTORMS EV3. You’ll learn proven design patterns that you can employ for common tasks such as turning, pushing, and pulling. You’ll reduce and compensate for variation in performance from battery charge levels and motor calibration differences. You’ll produce designs that won’t frustrate you by not working, but that will delight you with their reliable performance in the heat of competition.

Good design is about more than just the hardware. Software counts for a lot, and Winning Design! has you covered. You’ll find chapters on program design and organization with tips on effective coding and documentation practices. You’ll learn about master programs and the needed flexibility they provide. There’s even a section on presenting your robot and software designs to the judges.

Winning Design! is the book you need if you’re involved in competitions such as FIRST LEGO League events. Whether coach, parent, or student, you’ll find much in this book to make your design and competition experience fun and memorable, and educational. Don’t be without this book if you’re leading a team of young people as they build skills toward a future in technology.

What You Will Learn

  • Build winning robots on a foundation of good chassis design
  • Reduce variability in robot mechanical movements
  • Design modular attachments for quick change during competition
  • Solve navigation problems such as steering, squaring up, and collision detection
  • Manage software using master programs and other techniques
  • Power your robot attachments via motors and pneumatics

Who This Book Is For

Students, parents, teachers, and coaches involved in LEGO MINDSTORMS EV3 robot design and programming.

Book Description:

iOS Application Development with OpenCV 3 enables you to turn your smartphone camera into an advanced tool for photography and computer vision. Using the highly optimized OpenCV library, you will process high-resolution images in real time. You will locate and classify objects, and create models of their geometry. As you develop photo and augmented reality apps, you will gain a general understanding of iOS frameworks and developer tools, plus a deeper understanding of the camera and image APIs.

After completing the book’s four projects, you will be a well-rounded iOS developer with valuable experience in OpenCV.

What you will learn

  • Use Xcode and Interface Builder to develop iOS apps
  • Obtain OpenCV’s standard modules and build extra modules from source
  • Control all the parameters of the iOS device’s camera
  • Capture, save, and share photos and videos
  • Analyze colors, shapes, and textures in ordinary and specialized photographs
  • Blend and compare images to create special photographic effects and augmented reality tools
  • Detect faces and morph facial features
  • Classify coins and other objects

Boost your accounting and financial skills with Microsoft Dynamics AX 2012 R3

Book Description:

Microsoft Dynamics AX is a rapidly growing application and is widely used in enterprise organizations. Because of its ability to maximize business productivity, Microsoft Dynamics AX is one of the fastest-rising business application packages in the ERP market.

We will start by looking into ERP concepts, implementation needs, and interface design, giving you basic knowledge of financial management aspects and explaining key concepts along the way. We will tackle each topic with focused examples and explanations in areas such as general ledgers, accounts payable, accounts receivable, fixed assets, forecasting, cash and bank management, financial dimensions, and financial reporting.

By the end of this book, you will have a much richer understanding of Microsoft Dynamics AX 2012 R3 and its empowering capabilities.

What You Will Learn

  • Examine the business logic behind the financial functionalities of Microsoft Dynamics AX 2012 R3
  • Set up and configure the core modules of financial management
  • Grasp the key control points of financial management
  • Plan and execute an opening balance migration
  • Implement the monthly- and year-end closing procedures
  • Explore the basic cycles and module integrations
  • Discover and implement the inventory costing mechanism
  • Use Microsoft Dynamics AX to create financial reports

Book Description:

Through the use of a fictional story, this book details how to build and design robots. Max, the story’s main character, is part of an archaeological expedition investigating a newly discovered Mayan pyramid. During the expedition, the team encounters various problems, each solved with the help of a unique robot that Max creates using the Lego Mindstorms NXT kit.

Although the book reveals possible robotic solutions and offers detailed information on how to build and program each robot, readers are encouraged to come up with their own. The book includes complete building theory information and provides worksheets for brainstorming.

Book Description:

This easy to read textbook provides an introduction to computer architecture, while focusing on the essential aspects of hardware that programmers need to know. The topics are explained from a programmer’s point of view, and the text emphasizes consequences for programmers. Divided in five parts, the book covers the basics of digital logic, gates, and data paths, as well as the three primary aspects of architecture: processors, memories, and I/O systems. The book also covers advanced topics of parallelism, pipelining, power and energy, and performance. A hands-on lab is also included. The second edition contains three new chapters as well as changes and updates throughout.