万本电子书0元读

万本电子书0元读

Hands-On Java Deep Learning for Computer Vision
Hands-On Java Deep Learning for Computer Vision
Klevis Ramo
¥54.49
Leverage the power of Java and deep learning to build production-grade Computer Vision applications Key Features * Build real-world Computer Vision applications using the power of neural networks * Implement image classification, object detection, and face recognition * Know best practices on effectively building and deploying deep learning models in Java Book Description Although machine learning is an exciting world to explore, you may feel confused by all of its theoretical aspects. As a Java developer, you will be used to telling the computer exactly what to do, instead of being shown how data is generated; this causes many developers to struggle to adapt to machine learning. The goal of this book is to walk you through the process of efficiently training machine learning and deep learning models for Computer Vision using the most up-to-date techniques. The book is designed to familiarize you with neural networks, enabling you to train them efficiently, customize existing state-of-the-art architectures, build real-world Java applications, and get great results in a short space of time. You will build real-world Computer Vision applications, ranging from a simple Java handwritten digit recognition model to real-time Java autonomous car driving systems and face recognition models. By the end of this book, you will have mastered the best practices and modern techniques needed to build advanced Computer Vision Java applications and achieve production-grade accuracy. What you will learn * Discover neural networks and their applications in Computer Vision * Explore the popular Java frameworks and libraries for deep learning * Build deep neural networks in Java * Implement an end-to-end image classification application in Java * Perform real-time video object detection using deep learning * Enhance performance and deploy applications for production Who this book is for This book is for data scientists, machine learning developers and deep learning practitioners with Java knowledge who want to implement machine learning and deep neural networks in the computer vision domain. You will need to have a basic knowledge of Java programming.
Hands-On GUI Application Development in Go
Hands-On GUI Application Development in Go
Andrew Williams
¥81.74
Discover Golang's GUI libraries such as Go-GTK (GIMP Toolkit) and Go-Qt and build beautiful, performant, and responsive graphical applications Key Features * Conceptualize and build state-of-art GUI applications with Golang (Go) * Tackle the complexity of varying GUI application sizes with a structured and scalable approach * Get hands-on experience of GUI development with Shiny, and labs/ui, Fyne, and Walk Book Description Go is often compared to C++ when it comes to low-level programming and implementations that require faster processing, such as Graphical User Interfaces (GUIs). In fact, many claim that Go is superior to C++ in terms of its concurrency and ease of use. Most graphical application toolkits, though, are still written using C or C++, and so they don't enjoy the benefits of using a modern programming language such as Go. This guide to programming GUIs with Go 1.11 explores the various toolkits available, including UI, Walk, Shiny, and Fyne. The book compares the vision behind each project to help you pick the right approach for your project. Each framework is described in detail, outlining how you can build performant applications that users will love. To aid you further in creating applications using these emerging technologies, you'll be able to easily refer to code samples and screenshots featured in the book. In addition to toolkit-specific discussions, you'll cover more complex topics, such as how to structure growing graphical applications, and how cross-platform applications can integrate with each desktop operating system to create a seamless user experience. By delving into techniques and best practices for organizing and scaling Go-based graphical applications, you'll also glimpse Go's impressive concurrency system. In the concluding chapters, you'll discover how to distribute to the main desktop marketplaces and distribution channels. By the end of this book, you'll be a confident GUI developer who can use the Go language to boost the performance of your applications. What you will learn * Understand the benefits and complexities of building native graphical applications * Gain insights into how Go makes cross-platform graphical application development simple * Build platform-native GUI applications using andlabs/ui * Develop graphical Windows applications using Walk * Create multiplatform GUI applications using Shiny, Nuklear, and Fyne * Use Go wrappers for GTK and Qt for GUI application development * Streamline your requirements to pick the correct toolkit strategy Who this book is for This book is designed for Go developers who are interested in building native graphical applications for desktop computers and beyond. Some knowledge of building applications using Go is useful, but not essential. Experience in developing GUIs is not required as the book explores the benefits and challenges they pose. This book will also be beneficial for GUI application developers who are interested in trying Go.
Mastering Microservices with Java
Mastering Microservices with Java
Sourabh Sharma
¥81.74
Master the art of implementing scalable and reactive microservices in your production environment with Java 11 Key Features * Use domain-driven designs to build microservices * Explore various microservices design patterns such as service discovery, registration, and API Gateway * Use Kafka, Avro, and Spring Streams to implement event-based microservices Book Description Microservices are key to designing scalable, easy-to-maintain applications. This latest edition of Mastering Microservices with Java, works on Java 11. It covers a wide range of exciting new developments in the world of microservices, including microservices patterns, interprocess communication with gRPC, and service orchestration. This book will help you understand how to implement microservice-based systems from scratch. You'll start off by understanding the core concepts and framework, before focusing on the high-level design of large software projects. You'll then use Spring Security to secure microservices and test them effectively using REST Java clients and other tools. You will also gain experience of using the Netflix OSS suite, comprising the API Gateway, service discovery and registration, and Circuit Breaker. Additionally, you'll be introduced to the best patterns, practices, and common principles of microservice design that will help you to understand how to troubleshoot and debug the issues faced during development. By the end of this book, you'll have learned how to build smaller, lighter, and faster services that can be implemented easily in a production environment. What you will learn * Use domain-driven designs to develop and implement microservices * Understand how to implement microservices using Spring Boot * Explore service orchestration and distributed transactions using the Sagas * Discover interprocess communication using REpresentational State Transfer (REST) and events * Gain knowledge of how to implement and design reactive microservices * Deploy and test various microservices Who this book is for This book is designed for Java developers who are familiar with microservices architecture and now want to effectively implement microservices at an enterprise level. Basic knowledge and understanding of core microservice elements and applications is necessary.
Create React App 2 Quick Start Guide
Create React App 2 Quick Start Guide
Brandon Richey
¥54.49
Integrate your React applications with React to build efficient web services. Key Features * Learn React by building applications with Create React App * Create interactive UIs exploring the latest feature of CRA 2.0 * Build Progressive Web Applications for a more seamless web Book Description If you're a power user and you aren’t happy always reusing default configurations, from previous applications with each new application, then all you need is Create React App (CRA), a tool in the React ecosystem designed to help you create boilerplate code for building a web frontend. This book will help you use CRA to write React programs without significant configuration-related difficulties. With this quick start guide, you will integrate your applications with React to build efficient professional web services.You will learn to design UIs with the features of CRA and template your React applications. By the end of the book, you will be sufficiently skilled to be able to build faster and effective React apps using CRA. What you will learn * Become familiar with React by building applications with Create React App * Make your frontend development hassle free * Create interactive UIs exploring the latest features of CRA 2 * Build modern, React projects with, SASS,and progressive web applications * Develop proxy backend servers and simulate interaction with a full backend * Keep your application fully tested and maintain confidence in your project Who this book is for The book is intended for the web developers who want to jump into building great frontend with React using easy templating solutions.
Neural Network Projects with Python
Neural Network Projects with Python
James Loy
¥73.02
Build your Machine Learning portfolio by creating 6 cutting-edge Artificial Intelligence projects using neural networks in Python Key Features * Discover neural network architectures (like CNN and LSTM) that are driving recent advancements in AI * Build expert neural networks in Python using popular libraries such as Keras * Includes projects such as object detection, face identification, sentiment analysis, and more Book Description Neural networks are at the core of recent AI advances, providing some of the best resolutions to many real-world problems, including image recognition, medical diagnosis, text analysis, and more. This book goes through some basic neural network and deep learning concepts, as well as some popular libraries in Python for implementing them. It contains practical demonstrations of neural networks in domains such as fare prediction, image classification, sentiment analysis, and more. In each case, the book provides a problem statement, the specific neural network architecture required to tackle that problem, the reasoning behind the algorithm used, and the associated Python code to implement the solution from scratch. In the process, you will gain hands-on experience with using popular Python libraries such as Keras to build and train your own neural networks from scratch. By the end of this book, you will have mastered the different neural network architectures and created cutting-edge AI projects in Python that will immediately strengthen your machine learning portfolio. What you will learn * Learn various neural network architectures and its advancements in AI * Master deep learning in Python by building and training neural network * Master neural networks for regression and classification * Discover convolutional neural networks for image recognition * Learn sentiment analysis on textual data using Long Short-Term Memory * Build and train a highly accurate facial recognition security system Who this book is for This book is a perfect match for data scientists, machine learning engineers, and deep learning enthusiasts who wish to create practical neural network projects in Python. Readers should already have some basic knowledge of machine learning and neural networks.
Securing Network Infrastructure
Securing Network Infrastructure
Sairam Jetty
¥90.46
Plug the gaps in your network’s infrastructure with resilient network security models Key Features * Develop a cost-effective and end-to-end vulnerability management program * Explore best practices for vulnerability scanning and risk assessment * Understand and implement network enumeration with Nessus and Network Mapper (Nmap) Book Description Digitization drives technology today, which is why it’s so important for organizations to design security mechanisms for their network infrastructures. Analyzing vulnerabilities is one of the best ways to secure your network infrastructure. This Learning Path begins by introducing you to the various concepts of network security assessment, workflows, and architectures. You will learn to employ open source tools to perform both active and passive network scanning and use these results to analyze and design a threat model for network security. With a firm understanding of the basics, you will then explore how to use Nessus and Nmap to scan your network for vulnerabilities and open ports and gain back door entry into a network. As you progress through the chapters, you will gain insights into how to carry out various key scanning tasks, including firewall detection, OS detection, and access management to detect vulnerabilities in your network. By the end of this Learning Path, you will be familiar with the tools you need for network scanning and techniques for vulnerability scanning and network protection. This Learning Path includes content from the following Packt books: * Network Scanning Cookbook by Sairam Jetty * Network Vulnerability Assessment by Sagar Rahalkar What you will learn * Explore various standards and frameworks for vulnerability assessments and penetration testing * Gain insight into vulnerability scoring and reporting * Discover the importance of patching and security hardening * Develop metrics to measure the success of a vulnerability management program * Perform configuration audits for various platforms using Nessus * Write custom Nessus and Nmap scripts on your own * Install and configure Nmap and Nessus in your network infrastructure * Perform host discovery to identify network devices Who this book is for This Learning Path is designed for security analysts, threat analysts, and security professionals responsible for developing a network threat model for an organization. Professionals who want to be part of a vulnerability management team and implement an end-to-end robust vulnerability management program will also find this Learning Path useful.
Hands-On Full Stack Development with Go
Hands-On Full Stack Development with Go
Mina Andrawos
¥73.02
Create a real-world application in Go and explore various frameworks and methodologies for full-stack development Key Features * Organize your isomorphic codebase to enhance the maintainability of your application * Build web APIs and middleware in the Go language by making use of the popular Gin framework * Implement real-time web application functionality with WebSockets Book Description The Go programming language has been rapidly adopted by developers for building web applications. With its impressive performance and ease of development, Go enjoys the support of a wide variety of open source frameworks, for building scalable and high-performant web services and apps. Hands-On Full Stack Development with Go is a comprehensive guide that covers all aspects of full stack development with Go. This clearly written, example-rich book begins with a practical exposure to Go development and moves on to build a frontend with the popular React framework. From there, you will build RESTful web APIs utilizing the Gin framework. After that, we will dive deeper into important software backend concepts, such as connecting to the database via an ORM, designing routes for your services, securing your services, and even charging credit cards via the popular Stripe API. We will also cover how to test, and benchmark your applications efficiently in a production environment. In the concluding chapters, we will cover isomorphic developments in pure Go by learning about GopherJS. As you progress through the book, you'll gradually build a musical instrument online store application from scratch. By the end of the book, you will be confident in taking on full stack web applications in Go. What you will learn * Understand Go programming by building a real-world application * Learn the React framework to develop a frontend for your application * Understand isomorphic web development utilizing the GopherJS framework * Explore methods to write RESTful web APIs in Go using the Gin framework * Learn practical topics such as ORM layers, secure communications, and Stripe's API * Learn methods to benchmark and test web APIs in Go Who this book is for Hands-On Full Stack Development with Go will appeal to developers who are looking to start building amazing full stack web applications in Go. Basic knowhow of Go language and JavaScript is expected. The book targets web developers who are looking to move to the Go language.
Hands-On Machine Learning with IBM Watson
Hands-On Machine Learning with IBM Watson
James D. Miller
¥73.02
Learn how to build complete machine learning systems with IBM Cloud and Watson Machine learning services Key Features * Implement data science and machine learning techniques to draw insights from real-world data * Understand what IBM Cloud platform can help you to implement cognitive insights within applications * Understand the role of data representation and feature extraction in any machine learning system Book Description IBM Cloud is a collection of cloud computing services for data analytics using machine learning and artificial intelligence (AI). This book is a complete guide to help you become well versed with machine learning on the IBM Cloud using Python. Hands-On Machine Learning with IBM Watson starts with supervised and unsupervised machine learning concepts, in addition to providing you with an overview of IBM Cloud and Watson Machine Learning. You'll gain insights into running various techniques, such as K-means clustering, K-nearest neighbor (KNN), and time series prediction in IBM Cloud with real-world examples. The book will then help you delve into creating a Spark pipeline in Watson Studio. You will also be guided through deep learning and neural network principles on the IBM Cloud using TensorFlow. With the help of NLP techniques, you can then brush up on building a chatbot. In later chapters, you will cover three powerful case studies, including the facial expression classification platform, the automated classification of lithofacies, and the multi-biometric identity authentication platform, helping you to become well versed with these methodologies. By the end of this book, you will be ready to build efficient machine learning solutions on the IBM Cloud and draw insights from the data at hand using real-world examples. What you will learn * Understand key characteristics of IBM machine learning services * Run supervised and unsupervised techniques in the cloud * Understand how to create a Spark pipeline in Watson Studio * Implement deep learning and neural networks on the IBM Cloud with TensorFlow * Create a complete, cloud-based facial expression classification solution * Use biometric traits to build a cloud-based human identification system Who this book is for This beginner-level book is for data scientists and machine learning engineers who want to get started with IBM Cloud and its machine learning services using practical examples. Basic knowledge of Python and some understanding of machine learning will be useful.
Refactoring TypeScript
Refactoring TypeScript
James Hickey
¥54.49
Discover various techniques to develop maintainable code and keep it in shape. Key Features * Learn all about refactoring - why it is important and how to do it * Discover easy ways to refactor code with examples * Explore techniques that can be applied to most other programming languages Book Description Refactoring improves your code without changing its behavior. With refactoring, the best approach is to apply small targeted changes to a codebase. Instead of doing a huge sweeping change to your code, refactoring is better as a long-term and continuous enterprise. Refactoring TypeScript explains how to spot bugs and remove them from your code. You’ll start by seeing how wordy conditionals, methods, and null checks make code unhealthy and unstable. Whether it is identifying messy nested conditionals or removing unnecessary methods, this book will show various techniques to avoid these pitfalls and write code that is easier to understand, maintain, and test. By the end of the book, you’ll have learned some of the main causes of unhealthy code, tips to identify them and techniques to address them. What you will learn * Spot and fix common code smells to create code that is easier to read and understand * Discover ways to identify long methods and refactor them * Create objects that keep your code flexible, maintainable, and testable * Apply the Single Responsibility Principle to develop less-coupled code * Discover how to combine different refactoring techniques * Learn ways to solve the issues caused by overusing primitives Who this book is for This book is designed for programmers who are looking to explore various refactoring techniques to develop healthy and maintainable code. Some experience in JavaScript and TypeScript can help you easily grasp the concepts explained in this book.
Hands-On Game Development with WebAssembly
Hands-On Game Development with WebAssembly
Rick Battagline
¥70.84
Make your WebAssembly journey fun while making a game with it Key Features * Create a WebAssembly game that implements sprites, animations, physics, particle systems, and other game development fundamentals * Get to grips with advanced game mechanics in WebAssembly * Learn to use WebAssembly and WebGL to render to the HTML5 canvas element Book Description Within the next few years, WebAssembly will change the web as we know it. It promises a world where you can write an application for the web in any language, and compile it for native platforms as well as the web. This book is designed to introduce web developers and game developers to the world of WebAssembly by walking through the development of a retro arcade game. You will learn how to build a WebAssembly application using C++, Emscripten, JavaScript, WebGL, SDL, and HTML5. This book covers a lot of ground in both game development and web application development. When creating a game or application that targets WebAssembly, developers need to learn a plethora of skills and tools. This book is a sample platter of those tools and skills. It covers topics including Emscripten, C/C++, WebGL, OpenGL, JavaScript, HTML5, and CSS. The reader will also learn basic techniques for game development, including 2D sprite animation, particle systems, 2D camera design, sound effects, 2D game physics, user interface design, shaders, debugging, and optimization. By the end of the book, you will be able to create simple web games and web applications targeting WebAssembly. What you will learn * Build web applications with near-native performance using WebAssembly * Become familiar with how web applications can be used to create games using HTML5 Canvas, WebGL, and SDL * Become well versed with game development concepts such as sprites, animation, particle systems, AI, physics, camera design, sound effects, and shaders * Deploy C/C++ applications to the browser using WebAssembly and Emscripten * Understand how Emscripten HTML shell templates, JavaScript glue code, and a WebAssembly module interact * Debug and performance tune your WebAssembly application Who this book is for Web developers and game developers interested in creating applications for the web using WebAssembly. Game developers interested in deploying their games to the web Web developers interested in creating applications that are potentially orders of magnitude faster than their existing JavaScript web apps C/C++ developers interested in using their existing skills to deploy applications to the web
Continuous Delivery with Docker and Jenkins
Continuous Delivery with Docker and Jenkins
Rafał Leszko
¥79.56
Create a complete Continuous Delivery process using modern DevOps tools such as Docker, Kubernetes, Jenkins, Docker Hub, Ansible, GitHub and many more. Key Features * Build reliable and secure applications using Docker containers. * Create a highly available environment to scale a Docker servers using Kubernetes * Implement advance continuous delivery process by parallelizing the pipeline tasks Book Description Continuous Delivery with Docker and Jenkins, Second Edition will explain the advantages of combining Jenkins and Docker to improve the continuous integration and delivery process of an app development. It will start with setting up a Docker server and configuring Jenkins on it. It will then provide steps to build applications on Docker files and integrate them with Jenkins using continuous delivery processes such as continuous integration, automated acceptance testing, and configuration management. Moving on, you will learn how to ensure quick application deployment with Docker containers along with scaling Jenkins using Kubernetes. Next, you will get to know how to deploy applications using Docker images and testing them with Jenkins. Towards the end, the book will touch base with missing parts of the CD pipeline, which are the environments and infrastructure, application versioning, and nonfunctional testing. By the end of the book, you will be enhancing the DevOps workflow by integrating the functionalities of Docker and Jenkins. What you will learn * Get to grips with docker fundamentals and how to dockerize an application for the CD process * Learn how to use Jenkins on the Cloud environments * Scale a pool of Docker servers using Kubernetes * Create multi-container applications using Docker Compose * Write acceptance tests using Cucumber and run them in the Docker ecosystem using Jenkins * Publish a built Docker image to a Docker Registry and deploy cycles of Jenkins pipelines using community best practices Who this book is for The book targets DevOps engineers, system administrators, docker professionals or any stakeholders who would like to explore the power of working with Docker and Jenkins together. No prior knowledge of DevOps is required for this book.
Linux Device Driver Development Cookbook
Linux Device Driver Development Cookbook
Rodolfo Giometti
¥70.84
Over 30 recipes to develop custom drivers for your embedded Linux applications. Key Features * Use Kernel facilities to develop powerful drivers * Via a practical approach, learn core concepts of developing device drivers * Program a custom character device to get access to kernel internals Book Description Linux is a unified kernel that is widely used to develop embedded systems. As Linux has turned out to be one of the most popular operating systems used, the interest in developing proprietary device drivers has also increased. Device drivers play a critical role in how the system performs and ensures that the device works in the manner intended. By offering several examples on the development of character devices and how to use other kernel internals, such as interrupts, kernel timers, and wait queue, as well as how to manage a device tree, you will be able to add proper management for custom peripherals to your embedded system. You will begin by installing the Linux kernel and then configuring it. Once you have installed the system, you will learn to use the different kernel features and the character drivers. You will also cover interrupts in-depth and how you can manage them. Later, you will get into the kernel internals required for developing applications. Next, you will implement advanced character drivers and also become an expert in writing important Linux device drivers. By the end of the book, you will be able to easily write a custom character driver and kernel code as per your requirements. What you will learn * Become familiar with the latest kernel releases (4.19+/5.x) running on the ESPRESSObin devkit, an ARM 64-bit machine * Download, configure, modify, and build kernel sources * Add and remove a device driver or a module from the kernel * Master kernel programming * Understand how to implement character drivers to manage different kinds of computer peripherals * Become well versed with kernel helper functions and objects that can be used to build kernel applications * Acquire a knowledge of in-depth concepts to manage custom hardware with Linux from both the kernel and user space Who this book is for This book will help anyone who wants to develop their own Linux device drivers for embedded systems. Having basic hand-on with Linux operating system and embedded concepts is necessary.
Learning Elastic Stack 7.0
Learning Elastic Stack 7.0
Pranav Shukla
¥62.12
A beginner's guide to storing, managing, and analyzing data with the updated features of Elastic 7.0 Key Features * Gain access to new features and updates introduced in Elastic Stack 7.0 * Grasp the fundamentals of Elastic Stack including Elasticsearch, Logstash, and Kibana * Explore useful tips for using Elastic Cloud and deploying Elastic Stack in production environments Book Description The Elastic Stack is a powerful combination of tools for techniques such as distributed search, analytics, logging, and visualization of data. Elastic Stack 7.0 encompasses new features and capabilities that will enable you to find unique insights into analytics using these techniques. This book will give you a fundamental understanding of what the stack is all about, and help you use it efficiently to build powerful real-time data processing applications. The first few sections of the book will help you understand how to set up the stack by installing tools, and exploring their basic configurations. You’ll then get up to speed with using Elasticsearch for distributed searching and analytics, Logstash for logging, and Kibana for data visualization. As you work through the book, you will discover the technique of creating custom plugins using Kibana and Beats. This is followed by coverage of the Elastic X-Pack, a useful extension for effective security and monitoring. You’ll also find helpful tips on how to use Elastic Cloud and deploy Elastic Stack in production environments. By the end of this book, you’ll be well versed with the fundamental Elastic Stack functionalities and the role of each component in the stack to solve different data processing problems. What you will learn * Install and configure an Elasticsearch architecture * Solve the full-text search problem with Elasticsearch * Discover powerful analytics capabilities through aggregations using Elasticsearch * Build a data pipeline to transfer data from a variety of sources into Elasticsearch for analysis * Create interactive dashboards for effective storytelling with your data using Kibana * Learn how to secure, monitor and use Elastic Stack’s alerting and reporting capabilities * Take applications to an on-premise or cloud-based production environment with Elastic Stack Who this book is for This book is for entry-level data professionals, software engineers, e-commerce developers, and full-stack developers who want to learn about Elastic Stack and how the real-time processing and search engine works for business analytics and enterprise search applications. Previous experience with Elastic Stack is not required, however knowledge of data warehousing and database concepts will be helpful.
Geospatial Data Science Quick Start Guide
Geospatial Data Science Quick Start Guide
Abdishakur Hassan
¥53.40
Discover the power of location data to build effective, intelligent data models with Geospatial ecosystems Key Features * Manipulate location-based data and create intelligent geospatial data models * Build effective location recommendation systems used by popular companies such as Uber * A hands-on guide to help you consume spatial data and parallelize GIS operations effectively Book Description Data scientists, who have access to vast data streams, are a bit myopic when it comes to intrinsic and extrinsic location-based data and are missing out on the intelligence it can provide to their models. This book demonstrates effective techniques for using the power of data science and geospatial intelligence to build effective, intelligent data models that make use of location-based data to give useful predictions and analyses. This book begins with a quick overview of the fundamentals of location-based data and how techniques such as Exploratory Data Analysis can be applied to it. We then delve into spatial operations such as computing distances, areas, extents, centroids, buffer polygons, intersecting geometries, geocoding, and more, which adds additional context to location data. Moving ahead, you will learn how to quickly build and deploy a geo-fencing system using Python. Lastly, you will learn how to leverage geospatial analysis techniques in popular recommendation systems such as collaborative filtering and location-based recommendations, and more. By the end of the book, you will be a rockstar when it comes to performing geospatial analysis with ease. What you will learn * Learn how companies now use location data * Set up your Python environment and install Python geospatial packages * Visualize spatial data as graphs * Extract geometry from spatial data * Perform spatial regression from scratch * Build web applications which dynamically references geospatial data Who this book is for Data Scientists who would like to leverage location-based data and want to use location-based intelligence in their data models will find this book useful. This book is also for GIS developers who wish to incorporate data analysis in their projects. Knowledge of Python programming and some basic understanding of data analysis are all you need to get the most out of this book.
Hands-On System Programming with Go
Hands-On System Programming with Go
Alex Guerrieri
¥70.84
Explore the fundamentals of systems programming starting from kernel API and filesystem to network programming and process communications Key Features * Learn how to write Unix and Linux system code in Golang v1.12 * Perform inter-process communication using pipes, message queues, shared memory, and semaphores * Explore modern Go features such as goroutines and channels that facilitate systems programming Book Description System software and applications were largely created using low-level languages such as C or C++. Go is a modern language that combines simplicity, concurrency, and performance, making it a good alternative for building system applications for Linux and macOS. This Go book introduces Unix and systems programming to help you understand the components the OS has to offer, ranging from the kernel API to the filesystem, and familiarize yourself with Go and its specifications. You'll also learn how to optimize input and output operations with files and streams of data, which are useful tools in building pseudo terminal applications. You'll gain insights into how processes communicate with each other, and learn about processes and daemon control using signals, pipes, and exit codes. This book will also enable you to understand how to use network communication using various protocols, including TCP and HTTP. As you advance, you'll focus on Go's best feature-concurrency helping you handle communication with channels and goroutines, other concurrency tools to synchronize shared resources, and the context package to write elegant applications. By the end of this book, you will have learned how to build concurrent system applications using Go What you will learn * Explore concepts of system programming using Go and concurrency * Gain insights into Golang's internals, memory models and allocation * Familiarize yourself with the filesystem and IO streams in general * Handle and control processes and daemons' lifetime via signals and pipes * Communicate with other applications effectively using a network * Use various encoding formats to serialize complex data structures * Become well-versed in concurrency with channels, goroutines, and sync * Use concurrency patterns to build robust and performant system applications Who this book is for If you are a developer who wants to learn system programming with Go, this book is for you. Although no knowledge of Unix and Linux system programming is necessary, intermediate knowledge of Go will help you understand the concepts covered in the book
Improving your Penetration Testing Skills
Improving your Penetration Testing Skills
Gilberto Najera-Gutierrez
¥88.28
Evade antiviruses and bypass firewalls with the most widely used penetration testing frameworks Key Features * Gain insights into the latest antivirus evasion techniques * Set up a complete pentesting environment using Metasploit and virtual machines * Discover a variety of tools and techniques that can be used with Kali Linux Book Description Penetration testing or ethical hacking is a legal and foolproof way to identify vulnerabilities in your system. With thorough penetration testing, you can secure your system against the majority of threats. This Learning Path starts with an in-depth explanation of what hacking and penetration testing is. You’ll gain a deep understanding of classical SQL and command injection flaws, and discover ways to exploit these flaws to secure your system. You'll also learn how to create and customize payloads to evade antivirus software and bypass an organization's defenses. Whether it’s exploiting server vulnerabilities and attacking client systems, or compromising mobile phones and installing backdoors, this Learning Path will guide you through all this and more to improve your defense against online attacks. By the end of this Learning Path, you'll have the knowledge and skills you need to invade a system and identify all its vulnerabilities. This Learning Path includes content from the following Packt products: * Web Penetration Testing with Kali Linux - Third Edition by Juned Ahmed Ansari and Gilberto Najera-Gutierrez * Metasploit Penetration Testing Cookbook - Third Edition by Abhinav Singh , Monika Agarwal, et al What you will learn * Build and analyze Metasploit modules in Ruby * Integrate Metasploit with other penetration testing tools * Use server-side attacks to detect vulnerabilities in web servers and their applications * Explore automated attacks such as fuzzing web applications * Identify the difference between hacking a web application and network hacking * Deploy Metasploit with the Penetration Testing Execution Standard (PTES) * Use MSFvenom to generate payloads and backdoor files, and create shellcode Who this book is for This Learning Path is designed for security professionals, web programmers, and pentesters who want to learn vulnerability exploitation and make the most of the Metasploit framework. Some understanding of penetration testing and Metasploit is required, but basic system administration skills and the ability to read code are a must.
Blockchain for Decision Makers
Blockchain for Decision Makers
Romain Tormen
¥63.21
Understand how blockchain works and explore a variety of strategies to implement it in your organization effectively Key Features * Become familiar with business challenges faced by companies when using blockchain * Discover how companies implement blockchain to monetize and secure their data * Study real-world examples to understand blockchain and its use in organizations Book Description In addition to cryptocurrencies, blockchain-based apps are being developed in different industries such as banking, supply chain, and healthcare to achieve digital transformation and enhance user experience. Blockchain is not only about Bitcoin or cryptocurrencies, but also about different technologies such as peer-to-peer networks, consensus mechanisms, and cryptography. These technologies together help sustain trustless environments in which digital value can be transferred between individuals without intermediaries. This book will help you understand the basics of blockchain such as consensus protocols, decentralized applications, and tokenization. You'll focus on how blockchain is used today in different industries and the technological challenges faced while implementing a blockchain strategy. The book also enables you, as a decision maker, to understand blockchain from a technical perspective and evaluate its applicability in your business. Finally, you'll get to grips with blockchain frameworks such as Hyperledger and Quorum and their usability. By the end of this book, you'll have learned about the current use cases of blockchain and be able to implement a blockchain strategy on your own. What you will learn * Become well-versed with how blockchain works * Understand the difference between blockchain and Bitcoin * Learn how blockchain is being used in different industry verticals such as finance and retail * Delve into the technological and organizational challenges of implementing blockchain * Explore the possibilities that blockchain can unlock for decision makers * Choose a blockchain framework best suited for your projects from options such as Ethereum and Hyperledger Fabric Who this book is for This book is for CXOs, business professionals, organization leaders, decision makers, technology enthusiasts, and managers who wish to understand how blockchain is implemented in different organizations, its impact, and how it can be customized according to business needs. Prior experience with blockchain is not required.
Hands-On Object-Oriented Programming with C#
Hands-On Object-Oriented Programming with C#
Raihan Taher
¥73.02
Enhance your programming skills by learning the intricacies of object oriented programming in C# 8 Key Features * Understand the four pillars of OOP; encapsulation, inheritance, abstraction and polymorphism * Leverage the latest features of C# 8 including nullable reference types and Async Streams * Explore various design patterns, principles, and best practices in OOP Book Description Object-oriented programming (OOP) is a programming paradigm organized around objects rather than actions, and data rather than logic. With the latest release of C#, you can look forward to new additions that improve object-oriented programming. This book will get you up to speed with OOP in C# in an engaging and interactive way. The book starts off by introducing you to C# language essentials and explaining OOP concepts through simple programs. You will then go on to learn how to use classes, interfacesm and properties to write pure OOP code in your applications. You will broaden your understanding of OOP further as you delve into some of the advanced features of the language, such as using events, delegates, and generics. Next, you will learn the secrets of writing good code by following design patterns and design principles. You'll also understand problem statements with their solutions and learn how to work with databases with the help of ADO.NET. Further on, you'll discover a chapter dedicated to the Git version control system. As you approach the conclusion, you'll be able to work through OOP-specific interview questions and understand how to tackle them. By the end of this book, you will have a good understanding of OOP with C# and be able to take your skills to the next level. What you will learn * Master OOP paradigm fundamentals * Explore various types of exceptions * Utilize C# language constructs efficiently * Solve complex design problems by understanding OOP * Understand how to work with databases using ADO.NET * Understand the power of generics in C# * Get insights into the popular version control system, Git * Learn how to model and design your software Who this book is for This book is designed for people who are new to object-oriented programming. Basic C# skills are assumed, however, prior knowledge of OOP in any other language is not required.
ReasonML Quick Start Guide
ReasonML Quick Start Guide
Raphael Rafatpanah
¥54.49
A hands on approach to learning ReasonML from the perspective of a web developer. Key Features * Hands on learning by building a real world app shell that includes client-side routing and more. * Understand Reason’s ecosystem including BuckleScript and various npm workflows. * Learn how Reason differs from TypeScript and Flow, and how to use it to make refactoring less stressful. Book Description ReasonML, also known as Reason, is a new syntax and toolchain for OCaml that was created by Facebook and is meant to be approachable for web developers. Although OCaml has several resources, most of them are from the perspective of systems development. This book, alternatively, explores Reason from the perspective of web development. You'll learn how to use Reason to build safer, simpler React applications and why you would want to do so. Reason supports immutability by default, which works quite well in the context of React. In learning Reason, you will also learn about its ecosystem – BuckleScript, JavaScript interoperability, and various npm workflows. We learn by building a real-world app shell, including a client-side router with page transitions, that we can customize for any Reason project. You'll learn how to leverage OCaml's excellent type system to enforce guarantees about business logic, as well as preventing runtime type errors.You'll also see how the type system can help offload concerns that we once had to keep in our heads. We'll explore using CSS-in-Reason, how to use external JSON in Reason, and how to unit-test critical business logic. By the end of the book, you'll understand why Reason is exploding in popularity and will have a solid foundation on which to continue your journey with Reason. What you will learn * Learn why Reason is exploding in popularity and why it's the future of React * Become familiar with Reason's syntax and semantics * Learn about Reason's ecosystem: BuckleScript and JavaScript interoperability * Learn how to build React applications with Reason * Learn how to use Reason's type system as a tool to provide amazing guarantees * Gain a solid foundation on which to continue your journey Who this book is for The target audience of this book is web developers who are somewhat familiar with ReactJS and who want to learn why ReasonML is the future of ReactJS.
QGIS Quick Start Guide
QGIS Quick Start Guide
Andrew Cutts
¥54.49
Step through loading GIS data, creating GIS data, styling GIS and making maps with QGIS following a simple narrative that will allow you to build confidence as you progress. Key Features * Work with GIS data, a step by step guide from creation to making a map * Perform geoprocessing tasks and automate them using model builder * Explore a range of features in QGIS 3.4, discover the power behind open source desktop GIS Book Description QGIS is a user friendly, open source geographic information system (GIS). The popularity of open source GIS and QGIS, in particular, has been growing rapidly over the last few years. This book is designed to help beginners learn about all the tools required to use QGIS 3.4. This book will provide you with clear, step-by-step instructions to help you apply your GIS knowledge to QGIS. You begin with an overview of QGIS 3.4 and its installation. You will learn how to load existing spatial data and create vector data from scratch. You will then be creating styles and labels for maps. The final two chapters demonstrate the Processing toolbox and include a brief investigation on how to extend QGIS. Throughout this book, we will be using the GeoPackage format, and we will also discuss how QGIS can support many different types of data. Finally, you will learn where to get help and how to become engaged with the GIS community. What you will learn * Use existing data to interact with the canvas via zoom/pan/selection * Create vector data and a GeoPackage and build a simple project around it * Style data, both vector and raster data, using the Layer Styling Panel * Design, label, save, and export maps using the data you have created * Analyze spatial queries using the Processing toolbox * Expand QGIS with the help of plugins, model builder, and the command line Who this book is for If you know the basic functions and processes of GIS, and want to learn to use QGIS to analyze geospatial data and create rich mapping applications, then this is the book for you.
Mastering Rust
Mastering Rust
Rahul Sharma
¥90.46
Become proficient in designing, developing and deploying effective software systems using the advanced constructs of Rust Key Features * Improve your productivity using the latest version of Rust and write simpler and easier code * Understand Rust’s immutability and ownership principle, expressive type system, safe concurrency * Deep dive into the new doamins of Rust like WebAssembly, Networking and Command line tools Book Description Rust is an empowering language that provides a rare combination of safety, speed, and zero-cost abstractions. Mastering Rust – Second Edition is filled with clear and simple explanations of the language features along with real-world examples, showing you how you can build robust, scalable, and reliable programs. This second edition of the book improves upon the previous one and touches on all aspects that make Rust a great language. We have included the features from latest Rust 2018 edition such as the new module system, the smarter compiler, helpful error messages, and the stable procedural macros. You’ll learn how Rust can be used for systems programming, network programming, and even on the web. You’ll also learn techniques such as writing memory-safe code, building idiomatic Rust libraries, writing efficient asynchronous networking code, and advanced macros. The book contains a mix of theory and hands-on tasks so you acquire the skills as well as the knowledge, and it also provides exercises to hammer the concepts in. After reading this book, you will be able to implement Rust for your enterprise projects, write better tests and documentation, design for performance, and write idiomatic Rust code. What you will learn * Write generic and type-safe code by using Rust’s powerful type system * How memory safety works without garbage collection * Know the different strategies in error handling and when to use them * Learn how to use concurrency primitives such as threads and channels * Use advanced macros to reduce boilerplate code * Create efficient web applications with the Actix-web framework * Use Diesel for type-safe database interactions in your web application Who this book is for The book is aimed at beginner and intermediate programmers who already have familiarity with any imperative language and have only heard of Rust as a new language. If you are a developer who wants to write robust, efficient and maintainable software systems and want to become proficient with Rust, this book is for you. It starts by giving a whirlwind tour of the important concepts of Rust and covers advanced features of the language in subsequent chapters using code examples that readers will find useful to advance their knowledge.