Thinking in PromisesImagine a set of simple principles that could help you to understand how parts combine to become a whole, and how each part sees the whole from its own perspective. If such principles were any good, it shouldn't matter whether we're talking about humans on a team, birds in a flock, computers in a datacenter, or cogs in a Swiss watch. A theory of cooperation ought to be pretty universal, so we should be able to apply it both to technology and to the workplace.
Such principles are the subject of Promise Theory, and the focus of this insightful book. The goal of Promise Theory is to reveal the behavior of a whole from the sum of its parts, taking the point of the parts rather than the whole. In other words, it is a bottom-up, constructionist view of the world. Start Thinking in Promises and find out why this discipline works for documenting system behaviors from the bottom-up. ...
D3.js in Action, 2nd EditionVisualizing complex data is hard. Visualizing complex data on the web is darn near impossible without D3.js. D3 is a JavaScript library that provides a simple but powerful data visualization API over HTML, CSS, and SVG. Start with a structure, dataset, or algorithm; mix in D3; and you can programmatically generate static, animated, or interactive images that scale to any screen or browser. It's easy, and after a little practice, you'll be blown away by how beautiful your results can be!
D3.js in Action, 2nd Edition is a completely updated revision of Manning's bestselling guide to data visualization with D3. You'll explore dozens of real-world examples in full-color, including force and network diagrams, workflow illustrations, geospatial constructions, and more! Along the way, you'll pick up best practices for building interactive graphics, animations, and live data representations. You'll also step through a fully interactive application created with D3 and React. ...
Node.js in Action, 2nd EditionYou already know JavaScript. The trick to mastering Node.js is learning how to build applications that fully exploit its powerful asynchronous event handling and non-blocking I/O features. The Node server radically simplifies event-driven real-time apps like chat, games, and live data analytics, and with its incredibly rich ecosystem of modules, tools, and libraries, it's hard to beat!
Based on the bestselling first edition, Node.js in Action, 2nd Edition is a completely new book. Packed with practical examples, it teaches you how to create high-performance web servers using JavaScript and Node. You'll master key design concepts such as asynchronous programming, state management, and event-driven programming. And you'll learn to put together MVC servers using Express and Connect, design web APIs, and set up the perfect production environment to build, lint, and test. ...
Functional Programming in C#Functional programming changes the way you think about code. For C# developers, FP techniques can greatly improve state management, concurrency, event handling, and long-term code maintenance. And C# offers the flexibility that allows you to benefit fully from the application of functional techniques. This book gives you the awesome power of a new perspective.
Functional Programming in C# teaches you to apply functional thinking to real-world problems using the C# language. You'll start by learning the principles of functional programming and the language features that allow you to program functionally. As you explore the many practical examples, you'll learn the power of function composition, data flow programming, immutable data structures, and monadic composition with LINQ. ...
Kubernetes in ActionKubernetes is Greek for "helmsman," your guide through unknown waters. The Kubernetes container orchestration system safely manages the structure and flow of a distributed application, organizing containers and services for maximum efficiency. Kubernetes serves as an operating system for your clusters, eliminating the need to factor the underlying network and server infrastructure into your designs.
Kubernetes in Action teaches you to use Kubernetes to deploy container-based distributed applications. You'll start with an overview of Docker and Kubernetes before building your first Kubernetes cluster. You'll gradually expand your initial application, adding features and deepening your knowledge of Kubernetes architecture and operation. As you navigate this comprehensive guide, you'll explore high-value topics like monitoring, tuning, and scaling. ...
Camel in Action, 2nd EditionApache Camel is a Java framework that implements enterprise integration patterns (EIPs) and comes with over 200 adapters to third-party systems. A concise DSL lets you build integration logic into your app with just a few lines of Java or XML. By using Camel, you benefit from the testing and experience of a large and vibrant open source community.
Camel in Action, 2nd Edition is the definitive guide to the Camel framework. It starts with core concepts like sending, receiving, routing, and transforming data. It then goes in depth on many topics such as how to develop, debug, test, deal with errors, secure, scale, cluster, deploy, and monitor your Camel applications. The book also discusses how to run Camel with microservices, reactive systems, containers, and in the cloud. ...
RabbitMQ in DepthAt the heart of most modern distributed applications is a queue that buffers, prioritizes, and routes message traffic. RabbitMQ is a high-performance message broker based on the Advanced Message Queueing Protocol. It?s battle tested, ultrafast, and powerful enough to handle anything you can throw at it. It requires a few simple setup steps, and you can instantly start using it to manage low-level service communication, application integration, and distributed system message routing.
RabbitMQ in Depth is a practical guide to building and maintaining message-based applications. This book provides detailed coverage of RabbitMQ with an emphasis on why it works the way it does. You'll find examples and detailed explanations based in real-world systems ranging from simple networked services to complex distributed designs. You'll also find the insights you need to make core architectural choices and develop procedures for effective operational management. ...
SQL Queries for Mere Mortals, 4th EditionSQL Queries for Mere Mortals has earned worldwide praise as the clearest, simplest tutorial on writing effective queries with the latest SQL standards and database applications. Now, author John L. Viescas has updated this hands-on classic with even more advanced and valuable techniques.
Step by step, Viescas guides you through creating reliable queries for virtually any current SQL-based database. He demystifies all aspects of SQL query writing, from simple data selection and filtering to joining multiple tables and modifying sets of data.
Building on the basics, Viescas shows how to solve challenging real-world problems, including applying multiple complex conditions on one table, performing sophisticated logical evaluations, and using unlinked tables to think "outside the box".
In two brand-new chapters, you learn how to perform complex calculations on groups for sophisticated reporting, and how to partition data into windows for more flexible aggregation.
Practice all y ...
Game Programming in C++You can program games in many languages, but C++ remains the key language used by many leading development studios. Since it's the language used in their enormous code bases, it's the language they need to maintain and improve their games, and look for most often when hiring new developers. Game Programming in C++ is today's practical, hands-on approach to programming 3D video games in C++. Drawing on the author's pioneering experience teaching game development at USC, it guides you through all key concepts hands-on, and helps you deepen your expertise through several start-to-finish, in-depth game projects.
Author Sanjay Madhav introduces core concepts one at a time, in an easy-to-digest fashion, paying special attention to the math that professional game developers need to know. Step by step, you'll become increasingly comfortable with real-world C++ game development, and learn how to use C++ in all facets of game programming, including graphics, physics, AI, audio, camera systems ...
Web Applications on AzureBuild .NET apps on Microsoft Azure services that can grow to Internet scale. Learn how you can make smart application architecture decisions and follow best practices so that your website can handle tens of thousands of concurrent users and deliver your content globally.
Author Rob Reagan takes you through key Azure technologies targeted toward building web applications, and along the way shares his lessons learned in scaling out a real-world web application. After an overview of web application building blocks, the book dives into relational and NoSQL data storage options on Azure, including Azure Table Storage and CosmosDB. You'll then discover how to make best use of Redis Cache, Web Jobs, Messaging Queues, and more, alongside other tips, tricks, and troubleshooting advice for when things go wrong. The book concludes with a thorough exploration of best practices for deployment at scale.
Develop scalable architecture patterns on Azure with ASP.NET MVC; Understand the pros and c ...