Introducing Python, 2nd EditionEasy to understand and fun to read, this updated edition of Introducing Python is ideal for beginning programmers as well as those new to the language. Author Bill Lubanovic takes you from the basics to more involved and varied topics, mixing tutorials with cookbook-style code recipes to explain concepts in Python 3. End-of-chapter exercises help you practice what you've learned.
You'll gain a strong foundation in the language, including best practices for testing, debugging, code reuse, and other development tips. This book also shows you how to use Python for applications in business, science, and the arts, using various Python tools and open source packages. ...
Using Asyncio in PythonIf you're among the Python developers put off by asyncio's complexity, it's time to take another look. Asyncio is complicated because it aims to solve problems in concurrent network programming for both framework and end-user developers. The features you need to consider are a small subset of the whole asyncio API, but picking out the right features is the tricky part. That's where this practical book comes in.
Veteran Python developer Caleb Hattingh helps you gain a basic understanding of asyncio's building blocks - enough to get started writing simple event-based programs. You'll learn why asyncio offers a safer alternative to preemptive multitasking (threading) and how this API provides a simple way to support thousands of simultaneous socket connections.
Get a critical comparison of asyncio and threading for concurrent network programming; Take an asyncio walk-through, including a quickstart guide for hitting the ground looping with event-based programming; Learn the differen ...
Java Performance, 2nd EditionCoding and testing are generally considered separate areas of expertise. In this practical book, Java expert Scott Oaks takes the approach that anyone who works with Java should be adept at understanding how code behaves in the Java Virtual Machine - including the tunings likely to help performance. This updated second edition helps you gain in-depth knowledge of Java application performance using both the JVM and the Java platform.
Developers and performance engineers alike will learn a variety of features, tools, and processes for improving the way the Java 8 and 11 LTS releases perform. While the emphasis is on production-supported releases and features, this book also features previews of exciting new technologies such as ahead-of-time compilation and experimental garbage collections.
Understand how various Java platforms and compilers affect performance; Learn how Java garbage collection works; Apply four principles to obtain best results from performance testing; Use the JD ...
Architecting for Scale, 2nd EditionEvery day, companies struggle to scale critical applications. As traffic volume and data demands increase, these applications become more complicated and brittle, exposing risks and compromising availability. With the popularity of software as a service, scaling has never been more important.
Updated with an expanded focus on modern architecture paradigms such as microservices and cloud computing, this practical guide provides techniques for building systems that can handle huge quantities of traffic, data, and demand—without affecting the quality your customers expect. Architects, managers, and directors in engineering and operations organizations will learn how to build applications at scale that run more smoothly and reliably to meet the needs of customers.
Learn how scaling affects the availability of your services, why that matters, and how to improve it; Dive into a modern service-based application architecture that ensures high availability and reduces the effects of ser ...
Getting Started with Containers in AzureDeploy and execute Microsoft Azure container and containerized applications on Azure. This second book in author Shimon Ifrah's series on containers will help you manage and scale containers along with their applications, tools and services.
You'll start by setting up the Azure environment and quickly work through techniques and methods of managing container images with Azure Container Registry (ACR). As you move forward, deploying containerized applications with Azure container instances and Azure Kubernetes Service is discussed in detail, and in the process, you'll see how to install Docker container host on Azure Virtual Machine.
This is followed by a discussion on security in Azure containers where you'll learn how to monitor containers and containerized applications backed by illustrative examples. Next, you will review how to scale containers along with methods for backing up and restoring containers and containerized applications on Azure. Towards the end, the book demons ...
Real-World Software DevelopmentExplore the latest Java-based software development techniques and methodologies through the project-based approach in this practical guide. Unlike books that use abstract examples and lots of theory, Real-World Software Development shows you how to develop several relevant projects while learning best practices along the way.
With this engaging approach, junior developers capable of writing basic Java code will learn about state-of-the-art software development practices for building modern, robust and maintainable Java software. You'll work with many different software development topics that are often excluded from software develop how-to references.
Featuring real-world examples, this book teaches you techniques and methodologies for functional programming, automated testing, security, architecture, and distributed systems. ...
Practical Machine Learning with RustExplore machine learning in Rust and learn about the intricacies of creating machine learning applications. This book begins by covering the important concepts of machine learning such as supervised, unsupervised, and reinforcement learning, and the basics of Rust. Further, you'll dive into the more specific fields of machine learning, such as computer vision and natural language processing, and look at the Rust libraries that help create applications for those domains. We will also look at how to deploy these applications either on site or over the cloud.
After reading Practical Machine Learning with Rust, you will have a solid understanding of creating high computation libraries using Rust. Armed with the knowledge of this amazing language, you will be able to create applications that are more performant, memory safe, and less resource heavy.
- Write machine learning algorithms in Rust
- Use Rust libraries for different tasks in machine learning
- Create concise Rust packages ...
AI Crash CourseWelcome to the Robot World ... and start building intelligent software now!
Through his best-selling video courses, Hadelin de Ponteves has taught hundreds of thousands of people to write AI software. Now, for the first time, his hands-on, energetic approach is available as a book. Starting with the basics before easing you into more complicated formulas and notation, AI Crash Course gives you everything you need to build AI systems with reinforcement learning and deep learning. Five full working projects put the ideas into action, showing step-by-step how to build intelligent software using the best and easiest tools for AI programming, including Python, TensorFlow, Keras, and PyTorch.
AI Crash Course teaches everyone to build an AI to work in their applications. Once you've read this book, you're only limited by your imagination. ...
C# 8.0 in a NutshellWhen you have questions about C# 8.0 or .NET Core, this best-selling guide has the answers you need. C# is a language of unusual flexibility and breadth, but with its continual growth there's so much more to learn. In the tradition of the O'Reilly Nutshell guides, this thoroughly updated edition is simply the best one-volume reference to the C# language available today.
Organized around concepts and use cases, C# 8.0 in a Nutshell provides intermediate and advanced programmers with a concise map of C# and .NET knowledge that also plumbs significant depths.
Get up to speed on C#, from syntax and variables to advanced topics such as pointers, closures, and patterns; Dig deep into LINQ with three chapters dedicated to the topic; Explore concurrency and asynchrony, advanced threading, and parallel programming; Work with .NET features, including regular expressions, networking, serialization, spans, reflection, and cryptography; Delve into Roslyn, the modular C# compiler as a service ...
Distributed Tracing in PracticeSince most applications today are distributed in some fashion, monitoring their health and performance requires a new approach. Enter distributed tracing, a method of profiling and monitoring distributed applications - particularly those that use microservice architectures. There's just one problem: distributed tracing can be hard. But it doesn't have to be.
With this guide, you'll learn what distributed tracing is and how to use it to understand the performance and operation of your software. Key players at LightStep and other organizations walk you through instrumenting your code for tracing, collecting the data that your instrumentation produces, and turning it into useful operational insights. If you want to implement distributed tracing, this book tells you what you need to know.
You'll learn: The pieces of a distributed tracing deployment: instrumentation, data collection, and analysis; Best practices for instrumentation: methods for generating trace data from your services ...