Mastering Functional ProgrammingIn large projects, it can get difficult keeping track of all the interdependencies of the code base and how its state changes at runtime. Functional Programming helps us solve these problems. It is a paradigm specifically designed to deal with the complexity of software development. This book will show you how the right abstractions can reduce complexity and make your code easy to read and understand.
Mastering Functional Programming begins by touching upon the basics such as what lambdas are and how to write declarative code with the help of functions. It then moves on to more advanced concepts such as pure functions and type classes, the problems they aim to solve, and how to use them in real-world scenarios. You will also explore some of the more advanced patterns in the world of functional programming, such as monad transformers and Tagless Final. In the concluding chapters, you will be introduced to the actor model, implement it in modern functional languages, and explore the s ...
Learning Bootstrap 4 by Building ProjectsBootstrap, the world's most popular frontend framework, is an open source toolkit for building web applications with HTML, CSS, and JavaScript.
Learning Bootstrap 4 by Building Projects covers the essentials of Bootstrap 4 along with best practices. The book begins by introducing you to the latest features of Bootstrap 4. You will learn different elements and components of Bootstrap, such as the strict grid system, Sass, which replaced Less, flexbox, Font Awesome, and cards. As you make your way through the chapters, you will use a template that will help you to build different kinds of real-world websites, such as a social media website, a company landing page, a media hosting website, and a profile page, with ease.
By the end of this book, you will have built websites that are visually appealing, responsive, and robust. ...
Unity 2018 Artificial Intelligence Cookbook, 2nd EditionInteractive and engaging games come with intelligent enemies, and this intellectual behavior is combined with a variety of techniques collectively referred to as Artificial Intelligence. Exploring Unity's API, or its built-in features, allows limitless possibilities when it comes to creating your game's worlds and characters. This cookbook covers both essential and niche techniques to help you take your AI programming to the next level.
To start with, you'll quickly run through the essential building blocks of working with an agent, programming movement, and navigation in a game environment, followed by improving your agent's decision-making and coordination mechanisms - all through hands-on examples using easily customizable techniques. You'll then discover how to emulate the vision and hearing capabilities of your agent for natural and humanlike AI behavior, and later improve the agents with the help of graphs. This book also covers the new navigational mesh with improved AI and p ...
Web Applications with ElmLearn the basics of the Elm platform for web applications. This book covers the language as of version 0.18 and the most important libraries.
After reading this book you will have an understanding what Elm can do for you. Also, you will be able to build on the example in the book to develop advanced web applications with Elm.
Work with Elm and its development environment; Learn the language and libraries in examples; Use the Elm architecture to create applications with the Elm platform; Put it all together with a sample application and explanation that covers the implementation details. ...
Learn OpenGLLearn OpenGL is your one-stop reference guide to get started with OpenGL and C++ for game development. From setting up the development environment to getting started with basics of drawing and shaders, along with concepts such as lighting, model loading, and cube mapping, this book will get you up to speed with the fundamentals.
You begin by setting up your development environment to use OpenGL on Windows and macOS. With GLFW and GLEW set up using absolute and relative linking done, you are ready to setup SDL and SFML for both the operating systems.
Now that your development environment is set up, you'll learn to draw using simple shaders as well as make the shader more adaptable and reusable. Then we move on to more advanced topics like texturing your objects with images and transforming your objects using translate, rotate and scale.
With these concepts covered, we'll move on to topics like lighting to enable you to incorporate amazing dynamic lights in your game world.
B ...
Mastering Xamarin UI Development, 2nd EditionBuild robust and a maintainable cross-platform mobile UI with Xamarin and C# 7This book will provide you with the knowledge and practical skills that are required to develop real-world Xamarin and Xamarin.Forms applications. You'll learn how to create native Android app that will interact with the device camera and photo gallery, and then create a native iOS sliding tiles game. You will learn how to implement complex UI layouts and creating customizable control elements based on the platform, using XAML and C# 7 code to interact with control elements within your XAML ContentPages.
You'll learn how to add location-based features by to your apps by creating a LocationService class and using the Xam.Plugin.Geolocator cross-platform library, that will be used to obtain the current device location. Next, you'll learn how to work with and implement animations and visual effects within your UI using the PlatformEffects API, using C# code.
At the end of this book, you'll learn how to int ...
Getting Started with KuduFast data ingestion, serving, and analytics in the Hadoop ecosystem have forced developers and architects to choose solutions using the least common denominator - either fast analytics at the cost of slow data ingestion or fast data ingestion at the cost of slow analytics. There is an answer to this problem. With the Apache Kudu column-oriented data store, you can easily perform fast analytics on fast data. This practical guide shows you how.
Begun as an internal project at Cloudera, Kudu is an open source solution compatible with many data processing frameworks in the Hadoop environment. In this book, current and former solutions professionals from Cloudera provide use cases, examples, best practices, and sample code to help you get up to speed with Kudu.
Explore Kudu's high-level design, including how it spreads data across servers; Fully administer a Kudu cluster, enable security, and add or remove nodes; Learn Kudu's client-side APIs, including how to integrate Apache Impala, ...
Learning GraphQLWhy is GraphQL the most innovative technology for fetching data since Ajax? By providing a query language for your APIs and a runtime for fulfilling queries with your data, GraphQL presents a clear alternative to REST and ad hoc web service architectures. With this practical guide, Alex Banks and Eve Porcello deliver a clear learning path for frontend web developers, backend engineers, and project and product managers looking to get started with GraphQL.
You'll explore graph theory, the graph data structure, and GraphQL types before learning hands-on how to build a schema for a photo-sharing application. This book also introduces you to Apollo Client, a popular framework you can use to connect GraphQL to your user interface.
Explore graph theory and review popular graph examples in use today; Learn how GraphQL applies database querying methods to the internet; Create a schema for a PhotoShare application that serves as a roadmap and a contract between the frontend and backend tea ...
Hands-On GPU-Accelerated Computer Vision with OpenCV and CUDAComputer vision has been revolutionizing a wide range of industries, and OpenCV is the most widely chosen tool for computer vision with its ability to work in multiple programming languages. Nowadays, in computer vision, there is a need to process large images in real time, which is difficult to handle for OpenCV on its own. This is where CUDA comes into the picture, allowing OpenCV to leverage powerful NVDIA GPUs. This book provides a detailed overview of integrating OpenCV with CUDA for practical applications.
To start with, you'll understand GPU programming with CUDA, an essential aspect for computer vision developers who have never worked with GPUs. You'll then move on to exploring OpenCV acceleration with GPUs and CUDA by walking through some practical examples.
Once you have got to grips with the core concepts, you'll familiarize yourself with deploying OpenCV applications on NVIDIA Jetson TX1, which is popular for computer vision and deep learning applications. The last ch ...
Hands-On Markov Models with PythonHidden Markov Model (HMM) is a statistical model based on the Markov chain concept. Hands-On Markov Models with Python helps you get to grips with HMMs and different inference algorithms by working on real-world problems. The hands-on examples explored in the book help you simplify the process flow in machine learning by using Markov model concepts, thereby making it accessible to everyone.
Once you've covered the basic concepts of Markov chains, you'll get insights into Markov processes, models, and types with the help of practical examples. After grasping these fundamentals, you'll move on to learning about the different algorithms used in inferences and applying them in state and parameter inference. In addition to this, you'll explore the Bayesian approach of inference and learn how to apply it in HMMs.
In further chapters, you'll discover how to use HMMs in time series analysis and natural language processing (NLP) using Python. You'll also learn to apply HMM to image proces ...