Electron SuccinctlyDeveloping web apps can be made more difficult by the fact that they do not easily or natively run in desktop environments. This can make a variety of development skills useless, reducing the amount of expertise even the best developers can bring to a project and increasing the workload for producing cross-platform apps. But with the Electron framework, web apps can be brought seamlessly to desktop environments, opening up new avenues for developers. In Electron Succinctly, author Ed Freitas serves as a guide to getting started with Electron. ...
Learning BlazorTake advantage of your C# skills to build UI components and client-side experiences with .NET. With this practical guide, you'll learn how to use Blazor WebAssembly to develop next-generation web experiences. Built on top of ASP.NET Core, Blazor represents the future of .NET single-page applications (SPA) investments.
Author David Pine, who focuses on .NET and Azure content development at Microsoft, explains how WebAssembly enables many non-JavaScript-based programming languages to run on the client browser. In this book, you'll learn about real-time web functionality with ASP.NET Core SignalR. You'll learn strategies for bidirectional JavaScript interop. David covers component data binding, hierarchical event-driven communications, in-memory state management, and local storage. ...
Building Evolutionary Architectures, 2nd EditionThe software development ecosystem is constantly changing, providing a constant stream of new tools, frameworks, techniques, and paradigms. Over the past few years, incremental developments in core engineering practices for software development have created the foundations for rethinking how architecture changes over time, along with ways to protect important architectural characteristics as it evolves. This practical guide ties those parts together with a new way to think about architecture and time. ...
Java Everywhere Again with DukeScriptFor many years, Java Swing enabled developers to write applications that could run on any operating system. That all came to an end with the arrival of smart phones, tablets, and embedded computers.
In the enterprise, the desktop dominated for many years. In the meantime, however, almost every IT project includes plans for a future where the application will need to be ported to mobile platforms.
Building native applications for all platforms requires special skills and is expensive in terms of both maintenance and development.
We wanted to solve this problem, to make cross-platform development available for everyone again. That's why we developed DukeScript. In this lab you will learn how to use DukeScript and develop Java applications that run on a lot of different devices. ...
Microservices with GoThis book covers the key benefits and common issues of microservices, helping you understand the problems microservice architecture helps to solve, the issues it usually introduces, and the ways to tackle them.
You'll start by learning about the importance of using the right principles and standards in order to achieve the key benefits of microservice architecture. The following chapters will explain why the Go programming language is one of the most popular languages for microservice development and lay down the foundations for the next chapters of the book. You'll explore the foundational aspects of Go microservice development including service scaffolding, service discovery, data serialization, synchronous and asynchronous communication, deployment, and testing. After covering the development aspects, you'll progress to maintenance and reliability topics. The last part focuses on more advanced topics of Go microservice development including system reliability, observability, main ...
Mathematics for Game Programming and Computer GraphicsMathematics is an essential skill when it comes to graphics and game development, particularly if you want to understand the generation of real-time computer graphics and the manipulation of objects and environments in a detailed way. Python, together with Pygame and PyOpenGL, provides you with the opportunity to explore these features under the hood, revealing how computers generate and manipulate 3D environments.
Mathematics for Game Programming and Computer Graphics is an exhaustive guide to getting "back to the basics" of mathematics, using a series of problem-based, practical exercises to explore ideas around drawing graphic lines and shapes, applying vectors and vertices, constructing and rendering meshes, and working with vertex shaders. By leveraging Python, Pygame, and PyOpenGL, you'll be able to create your own mathematics-based engine and API that will be used throughout to build applications.
By the end of this graphics focussed book, you'll have gained a thorough und ...
Architecting and Building High-Speed SoCsModern and complex SoCs can adapt to many demanding system requirements by combining the processing power of ARM processors and the feature-rich Xilinx FPGAs. You'll need to understand many protocols, use a variety of internal and external interfaces, pinpoint the bottlenecks, and define the architecture of an SoC in an FPGA to produce a superior solution in a timely and cost-efficient manner.
This book adopts a practical approach to helping you master both the hardware and software design flows, understand key interconnects and interfaces, analyze the system performance and enhance it using the acceleration techniques, and finally build an RTOS-based software application for an advanced SoC design.
You'll start with an introduction to the FPGA SoCs technology fundamentals and their associated development design tools. Gradually, the book will guide you through building the SoC hardware and software, starting from the architecture definition to testing on a demo board or a virtua ...
Erlang HandbookErlang is the result of a project at Ericsson's Computer Science Laboratory to improve the programming of telecommunication applications. A critical requirement was supporting the characteristics of such applications, that include: massive concurrency, fault-tolerance, isolation, dynamic code upgrading at runtime, transactions.
Throughout the whole of Erlang's history the development process has been extremely pragmatic. The characteristics and properties of the types of systems in which Ericsson was interested drove Erlang's development.
These properties were considered to be so fundamental that it was decided to build support for them into the language itself, rather than in libraries. Because of the pragmatic development process, rather than a result of prior planning, Erlang "became" a functional language - since the features of functional languages fitted well with the properties of the systems being developed.
The Erlang Handbook is a summary of the language features an ...
Reliable Machine LearningWhether you're part of a small startup or a multinational corporation, this practical book shows data scientists, software and site reliability engineers, product managers, and business owners how to run and establish ML reliably, effectively, and accountably within your organization. You'll gain insight into everything from how to do model monitoring in production to how to run a well-tuned model development team in a product organization.
By applying an SRE mindset to machine learning, authors and engineering professionals Cathy Chen, Kranti Parisa, Niall Richard Murphy, D. Sculley, Todd Underwood, and featured guest authors show you how to run an efficient and reliable ML system. Whether you want to increase revenue, optimize decision making, solve problems, or understand and influence customer behavior, you'll learn how to perform day-to-day ML tasks while keeping the bigger picture in mind. ...
Learn Ruby on Rails: Book OneThis book contains the background that's missing from other tutorials. Here you'll learn key concepts so you'll have a solid foundation for continued study. Whether you choose to continue with another book in this series, a video course, or a code school, everything will make sense when you start here.
You can read this book anywhere, at your leisure, on your phone or tablet. Use this book to gain background understanding when you are not at your computer. With Book Two, the next in the series, you'll need a computer at hand so you can build your first web application.
In Book Two, you'll build a working web application so you'll gain hands-on experience. Along the way, you'll practice techniques used by professional Rails developers. And I'll help you'll understand why Rails is a popular choice for web development.
You can start with Book Two before finishing this book if you're eager to get started building your first application. In fact, I recommend it, because the hands-o ...