Docker for Rails DevelopersDocker does for DevOps what Rails did for web development - it gives you a new set of superpowers. Gone are “works on my machine” woes and lengthy setup tasks, replaced instead by a simple, consistent, Docker-based development environment that will have your team up and running in seconds. Gain hands-on, real-world experience with a tool that's rapidly becoming fundamental to software development. Go from zero all the way to production as Docker transforms the massive leap of deploying your app in the cloud into a baby step.
Docker makes life as a Ruby and Rails developer easier. It helps build, ship, and run your applications, solving major problems you face every day. It allows you to run applications at scale, adding new resources as needed. Docker provides a reliable, consistent environment that's guaranteed to work the same everywhere.
Docker lets you do all things DevOps without needing a PhD in infrastructure and operations. Want to spin up a cluster to run your app? N ...
Programming CrystalCrystal is for Ruby programmers who want more performance or for developers who enjoy working in a high-level scripting environment. Crystal combines native execution speed and concurrency with Ruby-like syntax, so you will feel right at home. This book, the first available on Crystal, shows you how to write applications that have the beauty and elegance of a modern language, combined with the power of types and modern concurrency tooling. Now you can write beautiful code that runs faster, scales better, and is a breeze to deploy.
Crystal is elegant to read and easy to program like Ruby, allowing full object-oriented development. Its compiler is powerful enough to nearly always infer the type of your variables. So you get the benefits of a statically typed language: more robust code, safety, and execution speed while still reaching high productivity in development. Null pointer exceptions as in JavaScript, Java, or C#, are a thing of the past: Crystal annihilates them, just like Rus ...
Property-Based Testing with PropEr, Erlang, and ElixirProperty-based testing helps you create better, more solid tests with little code. By using the PropEr framework in both Erlang and Elixir, this book teaches you how to automatically generate test cases, test stateful programs, and change how you design your software for more principled and reliable approaches. You will be able to better explore the problem space, validate the assumptions you make when coming up with program behavior, and expose unexpected weaknesses in your design. PropEr will even show you how to reproduce the bugs it found. With this book, you will be writing efficient property-based tests in no time.
Most tests only demonstrate that the code behaves how the developer expected it to behave, and therefore carry the same blind spots as their authors when special conditions or edge cases show up. Learn how to see things differently with property tests written in PropEr.
Start with the basics of property tests, such as writing stateless properties, and using the d ...
Customizing Dynamics 365Gain an understanding of basic and advanced customizations in Dynamics 365 and learn how they can be effectively used to implement simple business requirements. This is a practical book for developers that explains the use of various Dynamics 365 features as well as use of advanced concepts such as Azure integration and custom development.
Customizing Dynamics 365 starts by explaining the business requirements of the example application, which will explain the platform features, and discussing why Dynamics 365 is the ideal platform for the solution. Next, you will set up your development environment and use the different customizations of the platform to implement the basic business requirements of the example application. Further, you will automate the business process and create advanced customizations with plugins and custom workflow activities. Towards the end you will learn more about Azure integration, reports and dashboards, portal development, and data migration techniques, ...
Artificial Neural Networks with JavaUse Java to develop neural network applications in this practical book. After learning the rules involved in neural network processing, you will manually process the first neural network example. This covers the internals of front and back propagation, and facilitates the understanding of the main principles of neural network processing. Artificial Neural Networks with Java also teaches you how to prepare the data to be used in neural network development and suggests various techniques of data preparation for many unconventional tasks.
The next big topic discussed in the book is using Java for neural network processing. You will use the Encog Java framework and discover how to do rapid development with Encog, allowing you to create large-scale neural network applications.
The book also discusses the inability of neural networks to approximate complex non-continuous functions, and it introduces the micro-batch method that solves this issue. The step-by-step approach includes plent ...
Microsoft Azure Security Center, 2nd EditionReflecting updates through mid-2019, this book presents comprehensive Azure Security Center techniques for safeguarding cloud and hybrid environments. Leading Microsoft security and cloud experts Yuri Diogenes and Dr. Thomas Shinder help you apply Azure Security Center's robust protection, detection, and response capabilities in key operational scenarios. You'll walk through securing any Azure workload, and optimizing key facets of modern security, from policies and identity to incident response and risk management. Brand-new coverage includes single-click remediation, IoT, improved container security, Azure Sentinel, and more. Whatever your security role, you'll learn how to save hours, days, or even weeks by solving problems in the most efficient and reliable ways possible.
Two of Microsoft's leading cloud security experts show how to: Implement a comprehensive new security paradigm designed specifically for cloud and hybrid environments; Gain visibility and control to secure all ...
Pro TBBThis open access book is a modern guide for all C++ programmers to learn Threading Building Blocks (TBB). Written by TBB and parallel programming experts, this book reflects their collective decades of experience in developing and teaching parallel programming with TBB, offering their insights in an approachable manner. Throughout the book the authors present numerous examples and best practices to help you become an effective TBB programmer and leverage the power of parallel systems.
Pro TBB starts with the basics, explaining parallel algorithms and C++'s built-in standard template library for parallelism. You'll learn the key concepts of managing memory, working with data structures and how to handle typical issues with synchronization. Later chapters apply these ideas to complex systems to explain performance tradeoffs, mapping common parallel patterns, controlling threads and overhead, and extending TBB to program heterogeneous systems or system-on-chips.
Use Threading Buil ...
Rootkits and BootkitsRootkits and Bootkits will teach you how to understand and counter sophisticated, advanced threats buried deep in a machine's boot process or UEFI firmware.
With the aid of numerous case studies and professional research from three of the world's leading security experts, you'll trace malware development over time from rootkits like TDL3 to present-day UEFI implants and examine how they infect a system, persist through reboot, and evade security software.
As you inspect and dissect real malware, you'll learn: How Windows boots - including 32-bit, 64-bit, and UEFI mode - and where to find vulnerabilities; The details of boot process security mechanisms like Secure Boot, including an overview of Virtual Secure Mode (VSM) and Device Guard; Reverse engineering and forensic techniques for analyzing real malware, including bootkits like Rovnix/Carberp, Gapz, TDL4, and the infamous rootkits TDL3 and Festi; How to perform static and dynamic analysis using emulation and tools like Bochs ...
A Beginner's Guide to 3D ModelingA Beginner's Guide to 3D Modeling is a project-based, straightforward introduction to computer-aided design (CAD). You'll learn how to use Autodesk Fusion 360, the world's most powerful free CAD software, to model gadgets, 3D print your designs, and create realistic images just like an engineering professional - with no experience required!
Hands-on modeling projects and step-by-step instructions throughout the book introduce fundamental 3D modeling concepts. As you work through the projects, you'll master the basics of parametric modeling and learn how to create your own models, from simple shapes to multipart assemblies. Once you've mastered the basics, you'll learn more advanced modeling concepts like sweeps, lofts, surfaces, and rendering, before pulling it all together to create a robotic arm.
You'll learn how to: Design a moving robotic arm, a door hinge, a teapot, and a 20-sided die; Create professional technical drawings for manufacturing and patent applications; Model sp ...
Bayesian Statistics the Fun WayProbability and statistics are increasingly important in a huge range of professions. But many people use data in ways they don't even understand, meaning they aren't getting the most from it. Bayesian Statistics the Fun Way will change that.
This book will give you a complete understanding of Bayesian statistics through simple explanations and un-boring examples. Find out the probability of UFOs landing in your garden, how likely Han Solo is to survive a flight through an asteroid belt, how to win an argument about conspiracy theories, and whether a burglary really was a burglary, to name a few examples.
By using these off-the-beaten-track examples, the author actually makes learning statistics fun. And you'll learn real skills, like how to: How to measure your own level of uncertainty in a conclusion or belief; Calculate Bayes theorem and understand what it's useful for; Find the posterior, likelihood, and prior to check the accuracy of your conclusions; Calculate distributions ...