Publisher: Packt Publishing
Burak Serdar
The Go language has been gaining momentum due to its treatment of concurrency as a core language feature, making concurrent programming more accessible than ever. However, concurrency is still an inherently difficult skill to master, since it requires the development of the right mindset to decompose problems into concurrent components correctly. This book will guide you in deepening your understanding of concurrency and show you how to make the most of its advantages.You’ll start by learning what guarantees are offered by the language when running concurrent programs. Through multiple examples, you will see how to use this information to develop concurrent algorithms that run without data races and complete successfully. You’ll also find out all you need to know about multiple common concurrency patterns, such as worker pools, asynchronous pipelines, fan-in/fan-out, scheduling periodic or future tasks, and error and panic handling in goroutines.The central theme of this book is to give you, the developer, an understanding of why concurrent programs behave the way they do, and how they can be used to build correct programs that work the same way in all platforms.By the time you finish the final chapter, you’ll be able to develop, analyze, and troubleshoot concurrent algorithms written in Go.
Yogesh Raheja, Thinknyx Technologies, Giuseppe Borgese, Nathaniel...
The DevOps movement has transformed the way modern tech companies work. Amazon Web Services (AWS), which has been at the forefront of the cloud computing revolution, has also been a key contributor to the DevOps movement, creating a huge range of managed services that help you implement DevOps principles.Effective DevOps with AWS, Second Edition will help you to understand how the most successful tech start-ups launch and scale their services on AWS, and will teach you how you can do the same. This book explains how to treat infrastructure as code, meaning you can bring resources online and offline as easily as you control your software. You will also build a continuous integration and continuous deployment pipeline to keep your app up to date. Once you have gotten to grips will all this, we'll move on to how to scale your applications to offer maximum performance to users even when traffic spikes, by using the latest technologies, such as containers. In addition to this, you'll get insights into monitoring and alerting, so you can make sure your users have the best experience when using your service. In the concluding chapters, we'll cover inbuilt AWS tools such as CodeDeploy and CloudFormation, which are used by many AWS administrators to perform DevOps. By the end of this book, you'll have learned how to ensure the security of your platform and data, using the latest and most prominent AWS tools.
Effective DevOps with AWS. Ship faster, scale better, and deliver incredible productivity
Nathaniel Felsen
The DevOps movement has transformed the way modern tech companies work. AWS which has been on the forefront of the Cloud computing revolution has also been a key contributor of this DevOps movement creating a huge range of managed services that help you implement the DevOps principles. In this book, you’ll see how the most successful tech start-ups launch and scale their services on AWS and how you can too. Written by a lead member of Mediums DevOps team, this book explains how to treat infrastructure as code, meaning you can bring resources online and offline as necessary with the code as easily as you control your software. You will also build a continuous integration and continuous deployment pipeline to keep your app up to date. You’ll find out how to scale your applications to offer maximum performance to users anywhere in the world, even when traffic spikes with the latest technologies, such as containers and serverless computing. You will also take a deep dive into monitoring and alerting to make sure your users have the best experience when using your service.Finally, you’ll get to grips with ensuring the security of your platform and data.
Effective .NET Memory Management. Build memory-efficient cross-platform applications using .NET Core
Trevoir Williams
In today’s software development landscape, efficient memory management is crucial for ensuring application performance and scalability. Effective .NET Memory Management addresses this need by explaining the intricacies of memory utilization within .NET Core apps, from fundamental concepts to advanced optimization techniques. Starting with an overview of memory management basics, you’ll quickly go through .NET’s garbage collection system. You’ll grasp the mechanics of memory allocation and gain insights into the distinctions between stack and heap memory and the nuances of value types and reference types. Building on this foundation, this book will help you apply practical strategies to address real-world app demands, spanning profiling memory usage, spotting memory leaks, and diagnosing performance bottlenecks, through clear explanations and hands-on examples. This book goes beyond theory, detailing actionable techniques to optimize data structures, minimize memory fragmentation, and streamline memory access in scenarios involving multithreading and asynchronous programming for creating responsive and resource-efficient apps that can scale without sacrificing performance. By the end of this book, you’ll have gained the knowledge to write clean, efficient code that maximizes memory usage and boosts app performance.
Tabassum Memon
Scaling a platform is a lot different than scaling a product. This is why product managers developing or transitioning to a platform model are often facing completely new challenges – both technical and strategic. But if you want to build the next Amazon, Netflix, Spotify, or a completely new type of platform, then you need to adopt a platform-first approach to change how you invent, develop, and market solutions. This is where Effective Product Platform Management comes in.This book addresses product management as a critical pillar of platform development. It'll help you understand the difference between traditional and modern product management for platforms and even decide whether the platform business model is the way to go for you.As you progress, you’ll be able to build the right platform strategy, define the MVP, and focus on ongoing backlog prioritization for successful platforms. This book will also walk you through the practical steps and guidelines that can ease your organization’s transition from linear products to platforms.By the end of this platform product management book, you’ll have learned the essential aspects of product management for building successful and scalable platforms. You’ll also have a clear understanding of the next steps you need to take to perfect and execute your new platform strategy – and take on the world.
Rejah Rehim
Penetration testing is a practice of testing a computer system, network, or web application to find weaknesses in security that an attacker can exploit. Effective Python Penetration Testing will help you utilize your Python scripting skills to safeguard your networks from cyberattacks. We will begin by providing you with an overview of Python scripting and penetration testing. You will learn to analyze network traffic by writing Scapy scripts and will see how to fingerprint web applications with Python libraries such as ProxMon and Spynner. Moving on, you will find out how to write basic attack scripts, and will develop debugging and reverse engineering skills with Python libraries. Toward the end of the book, you will discover how to utilize cryptography toolkits in Python and how to automate Python tools and libraries.
Luis Sanchez, Enrique Fernandez Perdomo, Anil Mahtani
Building and programming a robot can be cumbersome and time-consuming, but not when you have the right collection of tools, libraries, and more importantly expert collaboration. ROS enables collaborative software development and offers an unmatched simulated environment that simplifies the entire robot building process.This book is packed with hands-on examples that will help you program your robot and give you complete solutions using open source ROS libraries and tools. It also shows you how to use virtual machines and Docker containers to simplify the installation of Ubuntu and the ROS framework, so you can start working in an isolated and control environment without changing your regular computer setup.It starts with the installation and basic concepts, then continues with more complex modules available in ROS such as sensors and actuators integration (drivers), navigation and mapping (so you can create an autonomous mobile robot), manipulation, Computer Vision, perception in 3D with PCL, and more. By the end of the book, you’ll be able to leverage all the ROS Kinetic features to build a fully fledged robot for all your needs.
Mostafa Yahia
Effective threat investigation requires strong technical expertise, analytical skills, and a deep understanding of cyber threats and attacker techniques. It's a crucial skill for SOC analysts, enabling them to analyze different threats and identify security incident origins. This book provides insights into the most common cyber threats and various attacker techniques to help you hone your incident investigation skills.The book begins by explaining phishing and email attack types and how to detect and investigate them, along with Microsoft log types such as Security, System, PowerShell, and their events. Next, you’ll learn how to detect and investigate attackers' techniques and malicious activities within Windows environments. As you make progress, you’ll find out how to analyze the firewalls, flows, and proxy logs, as well as detect and investigate cyber threats using various security solution alerts, including EDR, IPS, and IDS. You’ll also explore popular threat intelligence platforms such as VirusTotal, AbuseIPDB, and X-Force for investigating cyber threats and successfully build your own sandbox environment for effective malware analysis.By the end of this book, you’ll have learned how to analyze popular systems and security appliance logs that exist in any environment and explore various attackers' techniques to detect and investigate them with ease.