Pro Cryptography and Cryptanalysis with C++20
Develop strong skills and a passion for writing cryptography algorithms and security schemes/modules using C++ 20 and its new features. You will find the right methods of writing advanced cryptographic algorithms (such as, elliptic curve cryptography algorithms, lattice-based cryptography, searchable encryption, and homomorphic encryption), examine internal cryptographic mechanisms, and discover common ways in which the algorithms could be implemented and used correctly in practice.
The authors avoid the complexities of the mathematical background by explaining its mathematical basis in terms that a programmer can easily understand. They show how "bad" cryptography creeps in during implementation and what "good" cryptography should look like. They do so by showing and comparing the advantages and disadvantages based on processing time, execution time, and reliability. ...
TensorFlow 2.x in the Colaboratory Cloud
Use TensorFlow 2.x with Google's Colaboratory (Colab) product that offers a free cloud service for Python programmers. Colab is especially well suited as a platform for TensorFlow 2.x deep learning applications. You will learn Colab's default install of the most current TensorFlow 2.x along with Colab's easy access to on-demand GPU hardware acceleration in the cloud for fast execution of deep learning models. This book offers you the opportunity to grasp deep learning in an applied manner with the only requirement being an Internet connection. Everything else - Python, TensorFlow 2.x, GPU support, and Jupyter Notebooks - is provided and ready to go from Colab.
The book begins with an introduction to TensorFlow 2.x and the Google Colab cloud service. You will learn how to provision a workspace on Google Colab and build a simple neural network application. From there you will progress into TensorFlow datasets and building input pipelines in support of modeling and testing. You will fi ...
MATLAB Recipes, 2nd Edition
Learn from state-of-the-art examples in robotics, motors, detection filters, chemical processes, aircraft, and spacecraft. With this book you will review contemporary MATLAB coding including the latest MATLAB language features and use MATLAB as a software development environment including code organization, GUI development, and algorithm design and testing.
Features now covered include the new graph and digraph classes for charts and networks; interactive documents that combine text, code, and output; a new development environment for building apps; locally defined functions in scripts; automatic expansion of dimensions; tall arrays for big data; the new string type; new functions to encode/decode JSON; handling non-English languages; the new class architecture; the Mocking framework; an engine API for Java; the cloud-based MATLAB desktop; the memoize function; and heatmap charts.
MATLAB Recipes: A Problem-Solution Approach, Second Edition provides practical, hands-on code snipp ...
Patterns in the Machine
Discover how to apply software engineering patterns to develop more robust firmware faster than traditional embedded development approaches. In the authors' experience, traditional embedded software projects tend towards monolithic applications that are optimized for their target hardware platforms. This leads to software that is fragile in terms of extensibility and difficult to test without fully integrated software and hardware. Patterns in the Machine focuses on creating loosely coupled implementations that embrace both change and testability.
This book illustrates how implementing continuous integration, automated unit testing, platform-independent code, and other best practices that are not typically implemented in the embedded systems world is not just feasible but also practical for today's embedded projects.
After reading this book, you will have a better idea of how to structure your embedded software projects. You will recognize that while writing unit tests, creating ...
Hands-on GitHub Actions
Implement continuous integration/continuous delivery (CI/CD) workflows for any application you develop through GitHub Actions. This book will give you an in-depth idea of implementation patterns, solutions for different technology builds, guidelines to implement your own custom components as actions, and usage of features available with GitHub Actions workflows, to set up CI/CD for your repositories.
Hands-on GitHub Actions starts with an introduction to GitHub actions that gives an overview on CI/CD followed by an introduction to its workflows. Next, you will learn how to use variables in a GitHub workflow along with tokens via a REST API. Further, you will explore artifacts and caching dependencies in GitHub and use artifacts in subsequent jobs. Using self-hosted runners is discussed next where you will set up your own hardware and software to run GitHub actions. You will go through publishing packages and migrate to Azure DevOps Pipelines. Along the way, you will use Redis servi ...
.NET Developer's Guide to Augmented Reality in iOS
Attention .NET developers, here is your starting point for learning how to create and publish augmented reality (AR) apps for iOS devices.
This book introduces and explores iOS augmented reality mobile app development specifically for .NET developers. The continued adoption and popularity of Xamarin, a tool that allows cross-platform mobile application development, opens up many app publishing opportunities to .NET developers that were never before possible, including AR development.
You will use Xamarin to target Apple's augmented reality framework, ARKit, to develop augmented reality apps in the language you prefer - C#. Begin your journey with a foundational introduction to augmented reality, ARKit, Xamarin, and .NET. You will learn how this remarkable collaboration of technologies can produce fantastic experiences, many of them never before tried by .NET developers. From there you will dive into the fundamentals and then explore various topics and AR features. Throughout your ...
High Performance SQL Server, 2nd Edition
Design and configure SQL Server instances and databases in support of high-throughput, mission-critical applications providing consistent response times in the face of variations in numbers of users and query volumes. In this new edition, with over 100 pages of additional content, every original chapter has been updated for SQL Server 2019, and the book also includes two new chapters covering SQL Server on Linux and Intelligent Query Processing.
This book shows you how to configure SQL Server and design your databases to support a given instance and workload. You will learn advanced configuration options, in-memory technologies, storage and disk configuration, and more, all aimed toward enabling your desired application performance and throughput.
Configuration doesn't stop with implementation. Workloads change over time, and other impediments can arise to thwart desired performance. High Performance SQL Server covers monitoring and troubleshooting to aid you in detecting and fi ...
Building Custom Tasks for SQL Server Integration Services, 2nd Edition
Build custom SQL Server Integration Services (SSIS) tasks using Visual Studio Community Edition and C#. Bring all the power of Microsoft .NET to bear on your data integration and ETL processes, and for no added cost over what you've already spent on licensing SQL Server. New in this edition is a demonstration deploying a custom SSIS task to the Azure Data Factory (ADF) Azure-SSIS Integration Runtime (IR).
All examples in this new edition are implemented in C#. Custom task developers are shown how to implement custom tasks using the widely accepted and default language for .NET development.
Why are custom components necessary? Because even though the SSIS catalog of built-in tasks and components is a marvel of engineering, gaps remain in the available functionality. One such gap is a constraint of the built-in SSIS Execute Package Task, which does not allow SSIS developers to select SSIS packages from other projects in the SSIS Catalog. Examples in this book show how to create a c ...
Microsoft Conversational AI Platform for Developers
Build a chatbot using the Microsoft Conversational AI platform. This book will teach you, step by step, how to save time and money by including chatbots in your enterprise's strategy. You will learn how to be proficient at every phase of development, from collaboration on a chatbot in an end-to-end scenario, to the first mock-up phase, and on through to the deployment and evaluation phases.
Microsoft built a cloud service ecosystem for running artificial intelligence workloads in public cloud scenarios and a robust AI platform that offers a broad range of services targeting conversational artificial intelligence solutions such as chatbots.
Building a chatbot requires not just developer coding skills but special considerations, including input from business stakeholders such as domain matter experts and power users. You will learn by example how to use a great set of tools and services to bridge the gap between business and engineering.
You will learn how to successfully morph busi ...
Computer Vision Using Deep Learning
Organizations spend huge resources in developing software that can perform the way a human does. Image classification, object detection and tracking, pose estimation, facial recognition, and sentiment estimation all play a major role in solving computer vision problems.
This book will bring into focus these and other deep learning architectures and techniques to help you create solutions using Keras and the TensorFlow library. You'll also review mutliple neural network architectures, including LeNet, AlexNet, VGG, Inception, R-CNN, Fast R-CNN, Faster R-CNN, Mask R-CNN, YOLO, and SqueezeNet and see how they work alongside Python code via best practices, tips, tricks, shortcuts, and pitfalls. All code snippets will be broken down and discussed thoroughly so you can implement the same principles in your respective environments.
Computer Vision Using Deep Learning offers a comprehensive yet succinct guide that stitches DL and CV together to automate operations, reduce human interven ...
Data Parallel C++
Learn how to accelerate C++ programs using data parallelism. This open book enables C++ programmers to be at the forefront of this exciting and important new development that is helping to push computing to new levels. It is full of practical advice, detailed explanations, and code examples to illustrate key topics.
Data parallelism in C++ enables access to parallel resources in a modern heterogeneous system, freeing you from being locked into any particular computing device. Now a single C++ application can use any combination of devices - including GPUs, CPUs, FPGAs and AI ASICs - that are suitable to the problems at hand.
This book teaches data-parallel programming using C++ and the SYCL standard from the Khronos Group and walks through everything needed to use SYCL for programming heterogeneous systems. The book begins by introducing data parallelism and foundational topics for effective use of SYCL and Data Parallel C++ (DPC++), the open source compiler used in this book. La ...