High Performance Python, 2nd EditionYour Python code may run correctly, but you need it to run faster. Updated for Python 3, this expanded edition shows you how to locate performance bottlenecks and significantly speed up your code in high-data-volume programs. By exploring the fundamental theory behind design choices, High Performance Python helps you gain a deeper understanding of Python's implementation.
How do you take advantage of multicore architectures or clusters? Or build a system that scales up and down without losing reliability? Experienced Python programmers will learn concrete solutions to many issues, along with war stories from companies that use high-performance Python for social media analytics, productionized machine learning, and more.
Get a better grasp of NumPy, Cython, and profilers; Learn how Python abstracts the underlying computer architecture; Use profiling to find bottlenecks in CPU time and memory usage; Write efficient programs by choosing appropriate data structures; Speed up matrix ...
Knative CookbookEnterprise developers face several challenges when it comes to building serverless applications, such as integrating applications and building container images from source. With more than 60 practical recipes, this cookbook helps you solve these issues with Knative - the first serverless platform natively designed for Kubernetes. Each recipe contains detailed examples and exercises, along with a discussion of how and why it works.
If you have a good understanding of serverless computing and Kubernetes core resources such as deployment, services, routes, and replicas, the recipes in this cookbook show you how to apply Knative in real enterprise application development. Authors Kamesh Sampath and Burr Sutter include chapters on autoscaling, build and eventing, observability, Knative on OpenShift, and more.
With this cookbook, you'll learn how to: Efficiently build, deploy, and manage modern serverless workloads; Apply Knative in real enterprise scenarios, including advanced eventi ...
Programming Persistent MemoryBeginning and experienced programmers will use this comprehensive guide to persistent memory programming. You will understand how persistent memory brings together several new software/hardware requirements, and offers great promise for better performance and faster application startup times - a huge leap forward in byte-addressable capacity compared with current DRAM offerings.
This revolutionary new technology gives applications significant performance and capacity improvements over existing technologies. It requires a new way of thinking and developing, which makes this highly disruptive to the IT/computing industry. The full spectrum of industry sectors that will benefit from this technology include, but are not limited to, in-memory and traditional databases, AI, analytics, HPC, virtualization, and big data.
Programming Persistent Memory describes the technology and why it is exciting the industry. It covers the operating system and hardware requirements as well as how to c ...
Microsoft Platform and Tools for Mobile App DevelopmentUnderstanding and creating a mobile app development strategy is an important process for today's development decision-makers who aim to open up new business opportunities or to empower employees to be more productive with new capabilities.
Microsoft defines an end-to-end (E2E) platform for the agile creation of mobile apps that can target any platform (iOS, Android, or Windows), provides easy consumption of services in the cloud or on-premises, spans the requirements for consumer or employee scenarios, offers development teams DevOps tools to improve quality and to achieve faster time to market, and allows for integration with existing enterprise systems.
This book outlines the E2E platform from Microsoft that forms the critical capabilities for organizations selecting technologies and tools for a Mobile Application Development Platform (MADP) and Rapid Mobile Application Development (RMAD). It also describes the core decision factors that organizations should consider, and it ou ...
Containerized Docker Application Lifecycle with Microsoft Platform and ToolsEnterprises are increasingly adopting containers. The enterprise is realizing the benefits of cost savings, solution to deployment problems, and DevOps and production operations improvements that containers provide. Over the last years, Microsoft has been rapidly releasing container innovations to the Windows and Linux ecosystems – partnering with industry leaders like Docker and Mesosphere to deliver container solutions that help companies build and deploy applications at cloud speed and scale, whatever their choice of platform or tools.
This guide provides end-to-end guidance on the Docker application development lifecycle with Microsoft tools and services while providing an introduction to Docker development concepts for readers who might be new to the Docker ecosystem. This way, anyone can understand the global picture and start planning development projects based on Docker and Microsoft technologies/cloud. ...
Developing Inclusive Mobile AppsBy failing to consider those with needs different to ourselves, we are telling these people they are not welcome in our app, and therefore that technology as a whole, is not for them. This is not hyperbole - 23% of people in the US with a registered disability aren't online at all, that's three times more likely than the general population. When asked why they're not online, disabled respondents say their disability prevents them or that using the internet is too hard.
To help your apps combat the issue of digital exclusion, this book covers considerations and tools mobile developers, or anyone creating mobile experiences, can use to make mobile work better for those with disabilities - mental or physical - and how to create a better experience for everyone. Software is not made up of cold, unthinking algorithms. Software is a craft in the truest sense of the word, and one of the greatest tools you can have as a craftsperson is empathy for the people who will be using your app. Each ...
The Project Managers Guide to Microsoft Project 2019This guide is an all-in-one training resource and reference that covers all versions found in the Microsoft Project 2019 suite. It is not a "how-to" manual covering the features and functions of the software, but is designed to explain and demonstrate why those features and functions are important to you as a project manager, allowing you to maximize the value of Microsoft Project 2019.
Each aspect of project-manager-specific coverage was selectively compiled by author and Microsoft Project expert Cicala over more than two decades of consulting, project management training, and managing real-world projects using Microsoft Project. Readers will appreciate the robust index and intuitively organized and learning-oriented chapters, and sub-sections for quick reference and problem solving. "Try it" exercises at the close of every chapter help ensure understanding of the content. ...
Spring Boot Persistence Best PracticesThis book is a collection of developer code recipes and best practices for persisting data using Spring, particularly Spring Boot. The book is structured around practical recipes, where each recipe discusses a performance case or performance-related case, and almost every recipe has one or more applications. Mainly, when we try to accomplish something (e.g., read some data from the database), there are several approaches to do it, and, in order to choose the best way, you have to know the implied trades-off from a performance perspective. You'll see that in the end, all these penalties slow down the application. Besides presenting the arguments that favor a certain choice, the application is written in Spring Boot style which is quite different than plain Hibernate.
Persistence is an important set of techniques and technologies for accessing and using data, and this book demonstrates that data is mobile regardless of specific applications and contexts. In Java development, persisten ...
Modern Full-Stack DevelopmentExplore what React, Node, TypeScript, Webpack, and Docker have to offer individually, and how they all fit together in modern app development.
React is one of the most popular web development tools available today, and Node.js is extremely popular for server-side development. The fact that both utilize JavaScript is a big selling point, but as developers use the language more, they begin to recognize the shortcomings, and that's where TypeScript comes in and why it's gaining in popularity quickly. Add Webpack and Docker to the mix, and you've got a potent full development stack on which to build applications.
You'll begin by building a solid foundation of knowledge and quickly expand it by constructing two different real-world apps. These aren't just simple, contrived examples but real apps that you can choose to install on your servers and use for real. By the end, you will have a solid grasp of building apps with React, Node.js, and TypeScript and a good grasp on how Webpack ca ...
Building React Apps with Server-Side RenderingLeverage the benefits of both client-side and server-side rendering to get the most out of your React applications. By the end of this book you will be able to build and deploy React applications using the Next.js framework to fully render server-side HTML on every Web page.
You'll begin by reviewing JavaScript fundamentals and how they work with the core principles of React. You'll then move on to Next.js, the React framework for server-rendered applications. Using this framework, you will create a fast and secure solutional React application that renders content on the server-side, protects sensitive information, and optimizes response times. Before deploying the application using Docker containers, you'll create automated unit tests to verify that every component is appropriately doing its job.
Building React Apps with Server-Side Rendering also covers other fun and interesting topics such as Bootstrap 4, JSX (JavaScript XML), adding styling to your React applications, and muc ...