万本电子书0元读

万本电子书0元读

Cracking the IT Architect Interview
Cracking the IT Architect Interview
Sameer Paradkar
¥90.46
The ultimate guide to successful interviews for Enterprise, Business, Domain, Solution, and Technical Architect roles as well as IT Advisory Consultant and Software Designer roles About This Book Learn about Enterprise Architects IT strategy and NFR – this book provides you with methodologies, best practices, and frameworks to ace your interview A holistic view of key architectural skills and competencies with 500+ questions that cover 12 domains 100+ diagrams depicting scenarios, models, and methodologies designed to help you prepare for your interview Who This Book Is For This book is for aspiring enterprise, business, domain, solution, and technical architects. It is also ideal for IT advisory consultants and IT designers who wish to interview for such a role. Interviewers will be able leverage this book to make sure they hire candidates with the right competencies to meet the role requirements. What You Will Learn Learn about IT strategies, NFR, methodologies, best practices, and frameworks to ace your interview Get a holistic view of key concepts, design principles, and patterns related to evangelizing web and Java enterprise applications Discover interview preparation guidelines through case studies Use this as a reference guide for adopting best practices, standards, and design guidelines Get a better understanding with 60+ diagrams depicting various scenarios, models, and methodologies Benefit from coverage of all architecture domains including EA (Business, Data, Infrastructure, and Application), SA, integration, NFRs, security, and SOA, with extended coverage from IT strategies to the NFR domain In Detail An architect attends multiple interviews for jobs or projects during the course of his or her career. This book is an interview resource created for designers, consultants, technical, solution, domain, enterprise, and chief architects to help them perform well in interview discussions and launch a successful career. The book begins by providing de*ions of architecture skills and competencies that cover the 12 key domains, including 350+ questions relating to these domains. The goal of this book is to cover all the core architectural domains. From an architect’s perspective, it is impossible to revise or learn about all these key areas without a good reference guide – this book is the solution. It shares experiences, learning, insights, and proven methodologies that will benefit practitioners, SMEs, and aspirants in the long run. This book will help you tackle the NFR domain, which is a key aspect pertaining to architecting applications. It typically takes years to understand the core concepts, fundamentals, patterns, and principles related to architecture and designs. This book is a goldmine for the typical questions asked during an interview and will help prepare you for success! Style and approach This book will help you prepare for interviews for architectural profiles by providing likely questions, explanations, and expected answers. It is an insight-rich guide that will help you develop strategic, tactical, and operational thinking for your interview.
OpenVPN Cookbook - Second Edition
OpenVPN Cookbook - Second Edition
Jan Just Keijser
¥90.46
Discover over 90 practical and exciting recipes that leverage the power of OpenVPN 2.4 to help you obtain a reliable and secure VPN About This Book Master the skills of configuring, managing, and securing your VPN using the latest OpenVPN Gain expertise in establishing IPv6 connections and understand PolarSSL using the latest version of OpenVPN This book contains enticing recipes about OpenVPN functionalities that cater to mission critical applications Who This Book Is For This book is for system administrators who have a basic knowledge of OpenVPN and are eagerly waiting to build, secure, and manage VPNs using the latest version. This book assumes some prior knowledge of TCP/IP networking and OpenVPN and you must have network administration skills to get the most out of this book. What You Will Learn Determine the best type of OpenVPN setup for your networking needs Get to grips with the encryption, authentication, and certifications features of OpenSSL. Integrate an OpenVPN server into the local IT infrastructure with the *ing features of OpenVPN Ease the integration of Windows clients into the VPN using Windows-specific client-side configuration Understand the authentication plugins for PAM and LDAP Get to know the difference between TUN-style and TAP-style networks and when to use what Troubleshoot your VPN setup Establish a connection via IPv6 along with demonstrations In Detail OpenVPN provides an extensible VPN framework that has been designed to ease site-specific customization, such as providing the capability to distribute a customized installation package to clients, and supporting alternative authentication methods via OpenVPN’s plugin module interface. This book provides you with many different recipes to help you set up, monitor, and troubleshoot an OpenVPN network. You will learn to configure a scalable, load-balanced VPN server farm that can handle thousands of dynamic connections from incoming VPN clients. You will also get to grips with the encryption, authentication, security, extensibility, and certifications features of OpenSSL. You will also get an understanding of IPv6 support and will get a demonstration of how to establish a connection via IPv64. This book will explore all the advanced features of OpenVPN and even some undocumented options, covering all the common network setups such as point-to-point networks and multi-client TUN-style and TAP-style networks. Finally, you will learn to manage, secure, and troubleshoot your virtual private networks using OpenVPN 2.4. Style and approach This practical, recipe-based book covers the core functionalities of OpenVPN ending with troubleshooting, performance tuning and making the readers inquisitive about the advanced features.
Software Architecture with Python
Software Architecture with Python
Anand Balachandran Pillai
¥90.46
"Key Features ?Identify design issues and make the necessary adjustments to achieve improved performance ?Understand practical architectural quality attributes from the perspective of a practicing engineer and architect using Python ?Gain knowledge of architectural principles and how they can be used to provide accountability and rationale for architectural decisions Book De*ion This book starts off by explaining how Python fits into an application architecture. As you move along, you will understand the architecturally significant demands and how to determine them. Later, you'll get a complete understanding of the different architectural quality requirements that help an architect to build a product that satisfies business needs, such as maintainability/reusability, testability, scalability, performance, usability, and security. You will use various techniques such as incorporating DevOps, Continuous Integration, and more to make your application robust. You will understand when and when not to use object orientation in your applications. You will be able to think of the future and design applications that can scale proportionally to the growing business. The focus is on building the business logic based on the business process documentation and which frameworks are to be used when. We also cover some important patterns that are to be taken into account while solving design problems as well as those in relatively new domains such as the Cloud. This book will help you understand the ins and outs of Python so that you can make those critical design decisions that not just live up to but also surpass the expectations of your clients. What you will learn ?Build programs with the right architectural attributes ?Use Enterprise Architectural Patterns to solve scalable problems on the Web ?Understand design patterns from a Python perspective ?Optimize the performance testing tools in Python ?Deploy code in remote environments or on the Cloud using Python ?Secure architecture applications in Python About the Author Anand Balachandran Pillai is an Engineering and Technology professional with over 18 years of experience in the software industry in Product Engineering, Software Design & Architecture and Research. He has a Bachelor's degree in Mechanical Engineering from the Indian Institute of Technology, Madras. He has worked at companies such as Yahoo!, McAfee, and Infosys in the roles of Lead Engineer and Architect in product development teams, to build new products. His interests lie in Software Performance Engineering, High Scalability Architectures, Security and Open source communities. He often works with startups in lead technical or consulting role. He is the founder of the Bangalore Python Users Group and a Fellow of the Python Software Foundation (PSF). Anand is currently working as Senior Architect of Yegii Inc. "
Practical Windows Forensics
Practical Windows Forensics
Ayman Shaaban,Konstantin Sapronov
¥90.46
Leverage the power of digital forensics for Windows systems About This Book Build your own lab environment to analyze forensic data and practice techniques. This book offers meticulous coverage with an example-driven approach and helps you build the key skills of performing forensics on Windows-based systems using digital artifacts. It uses specific open source and Linux-based tools so you can become proficient at analyzing forensic data and upgrade your existing knowledge. Who This Book Is For This book targets forensic analysts and professionals who would like to develop skills in digital forensic analysis for the Windows platform. You will acquire proficiency, knowledge, and core skills to undertake forensic analysis of digital data. Prior experience of information security and forensic analysis would be helpful. You will gain knowledge and an understanding of performing forensic analysis with tools especially built for the Windows platform. What You Will Learn Perform live analysis on victim or suspect Windows systems locally or remotely Understand the different natures and acquisition techniques of volatile and non-volatile data. Create a timeline of all the system actions to restore the history of an incident. Recover and analyze data from FAT and NTFS file systems. Make use of various tools to perform registry analysis. Track a system user's browser and e-mail activities to prove or refute some hypotheses. Get to know how to dump and analyze computer memory. In Detail Over the last few years, the wave of the cybercrime has risen rapidly. We have witnessed many major attacks on the governmental, military, financial, and media sectors. Tracking all these attacks and crimes requires a deep understanding of operating system operations, how to extract evident data from digital evidence, and the best usage of the digital forensic tools and techniques. Regardless of your level of experience in the field of information security in general, this book will fully introduce you to digital forensics. It will provide you with the knowledge needed to assemble different types of evidence effectively, and walk you through the various stages of the analysis process. We start by discussing the principles of the digital forensics process and move on to show you the approaches that are used to conduct analysis. We will then study various tools to perform live analysis, and go through different techniques to analyze volatile and non-volatile data. Style and approach This is a step-by-step guide that delivers knowledge about different Windows artifacts. Each topic is explained sequentially, including artifact analysis using different tools and techniques. These techniques make use of the evidence extracted from infected machines, and are accompanied by real-life examples.
3D Game Design with Unreal Engine 4 and Blender
3D Game Design with Unreal Engine 4 and Blender
Justin Plowman
¥90.46
Combine the powerful UE4 with Blender to create visually appealing and comprehensive game environments About This Book The only resource that shows how you can incorporate Blender into your Unreal Engine 4 Game environment Create amazing 3D game environments by leveraging the power of Blender and Unreal Engine 4 Practical step-by-step approach with plenty of illustrative examples to get you started immediately Who This Book Is For This book would be ideal for 3D artists and game designers who want to create amazing 3D game environments and leverage the power of Blender with Unreal Engine 4. 3D design basics would be necessary to get the most out of this book. Some previous experience with Blender would be helpful but not essential What You Will Learn Create a fully functioning game level of your own design using Blender and Unreal Engine 4 Customize your level with detailed 3D assets created with Blender Import assets into Unreal Engine 4 to create an amazing finished product Build a detailed dynamic environment with goals and an ending Explore Blender’s incredible animation tools to animate elements of your game Create great environments using sound effects, particle effects, and class blueprints In Detail Unreal Engine 4 now has support for Blender, which was not available in earlier versions. This has opened up new possibilities and that is where this book comes in. This is the first book in the market combining these two powerful game and graphic engines. Readers will build an amazing high-level game environment with UE4 and will show them how to use the power of Blender 3D to create stunning animations and 3D effects for their game. This book will start with creating levels, 3D assets for the game, game progression, light and environment control, animation, and so on. Then it will teach readers to add amazing visual effects to their game by applying rendering, lighting, rigging, and compositing techniques in Blender. Finally, readers will learn how to smoothly transfer blender files to UE4 and animate the game assets. Each chapter will add complexities to the game environment. Style and approach This will have a clear, step-by-step approach to creating game assets in Blender and then importing them to UE4 to create stunning game environments. All asset creation techniques are explained in detail along with tips on how to use them to create your own game environments. The book offers end-to-end coverage of how to design a game level from scratch.
Kali Linux 2: Windows Penetration Testing
Kali Linux 2: Windows Penetration Testing
Wolf Halton,Bo Weaver
¥90.46
Kali Linux: a complete pentesting toolkit facilitating smooth backtracking for working hackers About This Book Conduct network testing, surveillance, pen testing and forensics on MS Windows using Kali Linux Footprint, monitor, and audit your network and investigate any ongoing infestations Customize Kali Linux with this professional guide so it becomes your pen testing toolkit Who This Book Is For If you are a working ethical hacker who is looking to expand the offensive skillset with a thorough understanding of Kali Linux, then this is the book for you. Prior knowledge about Linux operating systems and the BASH terminal emulator along with Windows desktop and command line would be highly beneficial. What You Will Learn Set up Kali Linux for pen testing Map and enumerate your Windows network Exploit several common Windows network vulnerabilities Attack and defeat password schemes on Windows Debug and reverse-engineer Windows programs Recover lost files, investigate successful hacks and discover hidden data in innocent-looking files Catch and hold admin rights on the network, and maintain backdoors on the network after your initial testing is done In Detail Microsoft Windows is one of the two most common OS and managing its security has spawned the discipline of IT security. Kali Linux is the premier platform for testing and maintaining Windows security. Kali is built on the Debian distribution of Linux and shares the legendary stability of that OS. This lets you focus on using the network penetration, password cracking, forensics tools and not the OS. This book has the most advanced tools and techniques to reproduce the methods used by sophisticated hackers to make you an expert in Kali Linux penetration testing. First, you are introduced to Kali's top ten tools and other useful reporting tools. Then, you will find your way around your target network and determine known vulnerabilities to be able to exploit a system remotely. Next, you will prove that the vulnerabilities you have found are real and exploitable. You will learn to use tools in seven categories of exploitation tools. Further, you perform web access exploits using tools like websploit and more. Security is only as strong as the weakest link in the chain. Passwords are often that weak link. Thus, you learn about password attacks that can be used in concert with other approaches to break into and own a network. Moreover, you come to terms with network sniffing, which helps you understand which users are using services you can exploit, and IP spoofing, which can be used to poison a system's DNS cache. Once you gain access to a machine or network, maintaining access is important. Thus, you not only learn penetrating in the machine you also learn Windows privilege’s escalations. With easy to follow step-by-step instructions and support images, you will be able to quickly pen test your system and network. Style and approach This book is a hands-on guide for Kali Linux pen testing. This book will provide all the practical knowledge needed to test your network's security using a proven hacker's methodology. The book uses easy-to-understand yet professional language for explaining concepts.
Machine Learning for OpenCV
Machine Learning for OpenCV
Michael Beyeler
¥90.46
Expand your OpenCV knowledge and master key concepts of machine learning using this practical, hands-on guide. About This Book ? Load, store, edit, and visualize data using OpenCV and Python ? Grasp the fundamental concepts of classification, regression, and clustering ? Understand, perform, and experiment with machine learning techniques using this easy-to-follow guide ? Evaluate, compare, and choose the right algorithm for any task Who This Book Is For This book targets Python programmers who are already familiar with OpenCV; this book will give you the tools and understanding required to build your own machine learning systems, tailored to practical real-world tasks. What You Will Learn ? Explore and make effective use of OpenCV's machine learning module ? Learn deep learning for computer vision with Python ? Master linear regression and regularization techniques ? Classify objects such as flower species, handwritten digits, and pedestrians ? Explore the effective use of support vector machines, boosted decision trees, and random forests ? Get acquainted with neural networks and Deep Learning to address real-world problems ? Discover hidden structures in your data using k-means clustering ? Get to grips with data pre-processing and feature engineering In Detail Machine learning is no longer just a buzzword, it is all around us: from protecting your email, to automatically tagging friends in pictures, to predicting what movies you like. Computer vision is one of today's most exciting application fields of machine learning, with Deep Learning driving innovative systems such as self-driving cars and Google’s DeepMind. OpenCV lies at the intersection of these topics, providing a comprehensive open-source library for classic as well as state-of-the-art computer vision and machine learning algorithms. In combination with Python Anaconda, you will have access to all the open-source computing libraries you could possibly ask for. Machine learning for OpenCV begins by introducing you to the essential concepts of statistical learning, such as classification and regression. Once all the basics are covered, you will start exploring various algorithms such as decision trees, support vector machines, and Bayesian networks, and learn how to combine them with other OpenCV functionality. As the book progresses, so will your machine learning skills, until you are ready to take on today's hottest topic in the field: Deep Learning. By the end of this book, you will be ready to take on your own machine learning problems, either by building on the existing source code or developing your own algorithm from scratch! Style and approach OpenCV machine learning connects the fundamental theoretical principles behind machine learning to their practical applications in a way that focuses on asking and answering the right questions. This book walks you through the key elements of OpenCV and its powerful machine learning classes, while demonstrating how to get to grips with a range of models.
Mastering Concurrency Programming with Java 9 - Second Edition
Mastering Concurrency Programming with Java 9 - Second Edition
Javier Fernández González
¥90.46
Master the principles to make applications robust, scalable and responsive About This Book ? Implement concurrent applications using the Java 9 Concurrency API and its new components ? Improve the performance of your applications and process more data at the same time, taking advantage of all of your resources ? Construct real-world examples related to machine learning, data mining, natural language processing, and more Who This Book Is For This book is for competent Java developers who have basic understanding of concurrency, but knowledge of effective implementation of concurrent programs or usage of streams for making processes more efficient is not required What You Will Learn ? Master the principles that every concurrent application must follow ? See how to parallelize a sequential algorithm to obtain better performance without data inconsistencies and deadlocks ? Get the most from the Java Concurrency API components ? Separate the thread management from the rest of the application with the Executor component ? Execute phased-based tasks in an efficient way with the Phaser components ? Solve problems using a parallelized version of the divide and conquer paradigm with the Fork / Join framework ? Find out how to use parallel Streams and Reactive Streams ? Implement the “map and reduce” and “map and collect” programming models ? Control the concurrent data structures and synchronization mechanisms provided by the Java Concurrency API ? Implement efficient solutions for some actual problems such as data mining, machine learning, and more In Detail Concurrency programming allows several large tasks to be divided into smaller sub-tasks, which are further processed as individual tasks that run in parallel. Java 9 includes a comprehensive API with lots of ready-to-use components for easily implementing powerful concurrency applications, but with high flexibility so you can adapt these components to your needs. The book starts with a full de*ion of the design principles of concurrent applications and explains how to parallelize a sequential algorithm. You will then be introduced to Threads and Runnables, which are an integral part of Java 9's concurrency API. You will see how to use all the components of the Java concurrency API, from the basics to the most advanced techniques, and will implement them in powerful real-world concurrency applications. The book ends with a detailed de*ion of the tools and techniques you can use to test a concurrent Java application, along with a brief insight into other concurrency mechanisms in JVM. Style and approach This is a complete guide that implements real-world examples of algorithms related to machine learning, data mining, and natural language processing in client/server environments. All the examples are explained using a step-by-step approach.
Apache Spark 2.x for Java Developers
Apache Spark 2.x for Java Developers
Sourav Gulati; Sumit Kumar
¥90.46
Unleash the data processing and analytics capability of Apache Spark with the language of choice: Java About This Book ? Perform big data processing with Spark—without having to learn Scala! ? Use the Spark Java API to implement efficient enterprise-grade applications for data processing and analytics ? Go beyond mainstream data processing by adding querying capability, Machine Learning, and graph processing using Spark Who This Book Is For If you are a Java developer interested in learning to use the popular Apache Spark framework, this book is the resource you need to get started. Apache Spark developers who are looking to build enterprise-grade applications in Java will also find this book very useful. What You Will Learn ? Process data using different file formats such as XML, JSON, CSV, and plain and delimited text, using the Spark core Library. ? Perform analytics on data from various data sources such as Kafka, and Flume using Spark Streaming Library ? Learn SQL schema creation and the analysis of structured data using various SQL functions including Windowing functions in the Spark SQL Library ? Explore Spark Mlib APIs while implementing Machine Learning techniques to solve real-world problems ? Get to know Spark GraphX so you understand various graph-based analytics that can be performed with Spark In Detail Apache Spark is the buzzword in the big data industry right now, especially with the increasing need for real-time streaming and data processing. While Spark is built on Scala, the Spark Java API exposes all the Spark features available in the Scala version for Java developers. This book will show you how you can implement various functionalities of the Apache Spark framework in Java, without stepping out of your comfort zone. The book starts with an introduction to the Apache Spark 2.x ecosystem, followed by explaining how to install and configure Spark, and refreshes the Java concepts that will be useful to you when consuming Apache Spark's APIs. You will explore RDD and its associated common Action and Transformation Java APIs, set up a production-like clustered environment, and work with Spark SQL. Moving on, you will perform near-real-time processing with Spark streaming, Machine Learning analytics with Spark MLlib, and graph processing with GraphX, all using various Java packages. By the end of the book, you will have a solid foundation in implementing components in the Spark framework in Java to build fast, real-time applications. Style and approach This practical guide teaches readers the fundamentals of the Apache Spark framework and how to implement components using the Java language. It is a unique blend of theory and practical examples, and is written in a way that will gradually build your knowledge of Apache Spark.
Node Cookbook - Third Edition
Node Cookbook - Third Edition
David Mark Clements; Matthias Buus; Matteo Collina;Peter Elger
¥90.46
Over 60 high-quality recipes covering debugging, security, performance, microservices, web frameworks, databases, deployment and more; rewritten for Node 4, 6, and 8. About This Book ? Security between Node.js and browser applications explained and applied in depth ? Cutting edge techniques and tools for measuring and improving performance ? Contemporary techniques to create developer-ergonomic, readily-scalable production systems Who This Book Is For If you have good knowledge of JavaScript and want to build fast, efficient, scalable client-server solutions, then this book is for you. Some experience with Node.js is assumed to get the most out of this book. If working from a beginner level Node Cookbook 2nd Edition is recommended as a primer for Node Cookbook 3rd Edition. What You Will Learn ? Rapidly become proficient at debugging Node.js programs ? Write and publish your own Node.js modules ? Become deeply acquainted with Node.js core API’s ? Use web frameworks such as Express, Hapi and Koa for accelerated web application development ? Apply Node.js streams for low-footprint infinite-capacity data processing ? Fast-track performance knowledge and optimization abilities ? Compare and contrast various persistence strategies, including database integrations with MongoDB, MySQL/MariaDB, Postgres, Redis, and LevelDB ? Grasp and apply critically essential security concepts ? Understand how to use Node with best-of-breed deployment technologies: Docker, Kubernetes and AWS In Detail The principles of asynchronous event-driven programming are perfect for today's web, where efficient real-time applications and scalability are at the forefront. Server-side JavaScript has been here since the 90s but Node got it right. This edition is a complete rewrite of the original, and is targeted against Node 4, 6, and 8. It shows you how to build fast, efficient, and scalable client-server solutions using the latest versions of Node. Beginning with adopting debugging tips and tricks of the trade and learning how to write your own modules, then covering the fundamentals of streams in Node.js, you will go on to discover I/O control, implementation of various web protocols, you’ll work up to integrating with cross-section of databases such as MongoDB, MySQL/MariaDB, Postgres, Redis, and LevelDB and building web application with Express, Hapi and Koa. You will then learn about security essentials in Node.js and the advanced optimization tools and techniques By the end of the book you should have acquired a level of proficiency that allows you to confidently build a full production-ready and scalable Node.js system. Style and approach This recipe-based practical guide presents each topic with step-by-step instructions on how you can create fast and efficient server side applications using the latest features and capabilities in Node 8 whilst also supporting usage with Node 4 and 6.
Mastering Machine Learning with Spark 2.x
Mastering Machine Learning with Spark 2.x
Alex Tellez;Max Pumperla;Michal Malohlava
¥90.46
Unlock the complexities of machine learning algorithms in Spark to generate useful data insights through this data analysis tutorial About This Book ? Process and analyze big data in a distributed and scalable way ? Write sophisticated Spark pipelines that incorporate elaborate extraction ? Build and use regression models to predict flight delays Who This Book Is For Are you a developer with a background in machine learning and statistics who is feeling limited by the current slow and “small data” machine learning tools? Then this is the book for you! In this book, you will create scalable machine learning applications to power a modern data-driven business using Spark. We assume that you already know the machine learning concepts and algorithms and have Spark up and running (whether on a cluster or locally) and have a basic knowledge of the various libraries contained in Spark. What You Will Learn ? Use Spark streams to cluster tweets online ? Run the PageRank algorithm to compute user influence ? Perform complex manipulation of DataFrames using Spark ? Define Spark pipelines to compose individual data transformations ? Utilize generated models for off-line/on-line prediction ? Transfer the learning from an ensemble to a simpler Neural Network ? Understand basic graph properties and important graph operations ? Use GraphFrames, an extension of DataFrames to graphs, to study graphs using an elegant query language ? Use K-means algorithm to cluster movie reviews dataset In Detail The purpose of machine learning is to build systems that learn from data. Being able to understand trends and patterns in complex data is critical to success; it is one of the key strategies to unlock growth in the challenging contemporary marketplace today. With the meteoric rise of machine learning, developers are now keen on finding out how can they make their Spark applications smarter. This book gives you access to transform data into actionable knowledge. The book commences by defining machine learning primitives by the MLlib and H2O libraries. You will learn how to use Binary classification to detect the Higgs Boson particle in the huge amount of data produced by CERN particle collider and classify daily health activities using ensemble Methods for Multi-Class Classification. Next, you will solve a typical regression problem involving flight delay predictions and write sophisticated Spark pipelines. You will analyze Twitter data with help of the doc2vec algorithm and K-means clustering. Finally, you will build different pattern mining models using MLlib, perform complex manipulation of DataFrames using Spark and Spark SQL, and deploy your app in a Spark streaming environment. Style and approach This book takes a practical approach to help you get to grips with using Spark for analytics and to implement machine learning algorithms. We'll teach you about advanced applications of machine learning through illustrative examples. These examples will equip you to harness the potential of machine learning, through Spark, in a variety of enterprise-grade systems.
Learning Redux
Learning Redux
Daniel Bugl
¥90.46
Build consistent web apps with Redux by easily centralizing the state of your application. About This Book ? Write applications that behave consistently, run in different environments (client, server and native), and are easy to test ? Take your web apps to the next level by combining the power of Redux with other frameworks such as React and Angular ? Uncover the best practices and hidden features of Redux to build applications that are powerful, consistent, and maintainable Who This Book Is For This book targets developers who are already fluent in JavaScript but want to extend their web development skills to develop and maintain bigger applications. What You Will Learn ? Understand why and how Redux works ? Implement the basic elements of Redux ? Use Redux in combination with React/Angular to develop a web application ? Debug a Redux application ? Interface with external APIs with Redux ? Implement user authentication with Redux ? Write tests for all elements of a Redux application ? Implement simple and more advanced routing with Redux ? Learn about server-side rendering with Redux and React ? Create higher-order reducers for Redux ? Extend the Redux store via middleware In Detail The book starts with a short introduction to the principles and the ecosystem of Redux, then moves on to show how to implement the basic elements of Redux and put them together. Afterward, you are going to learn how to integrate Redux with other frameworks, such as React and Angular. Along the way, you are going to develop a blog application. To practice developing growing applications with Redux, we are going to start from nothing and keep adding features to our application throughout the book. You are going to learn how to integrate and use Redux DevTools to debug applications, and access external APIs with Redux. You are also going to get acquainted with writing tests for all elements of a Redux application. Furthermore, we are going to cover important concepts in web development, such as routing, user authentication, and communication with a backend server After explaining how to use Redux and how powerful its ecosystem can be, the book teaches you how to make your own abstractions on top of Redux, such as higher-order reducers and middleware. By the end of the book, you are going to be able to develop and maintain Redux applications with ease. In addition to learning about Redux, you are going be familiar with its ecosystem, and learn a lot about JavaScript itself, including best practices and patterns. Style and approach This practical guide will teach you how to develop a complex, data-intensive application leveraging the capabilities of the Redux framework.
Python Network Programming Cookbook - Second Edition
Python Network Programming Cookbook - Second Edition
Pradeeban Kathiravelu;Dr. M. O. Faruque Sarker
¥90.46
Discover practical solutions for a wide range of real-world network programming tasks About This Book ? Solve real-world tasks in the area of network programming, system/networking administration, network monitoring, and more. ? Familiarize yourself with the fundamentals and functionalities of SDN ? Improve your skills to become the next-gen network engineer by learning the various facets of Python programming Who This Book Is For This book is for network engineers, system/network administrators, network programmers, and even web application developers who want to solve everyday network-related problems. If you are a novice, you will develop an understanding of the concepts as you progress with this book. What You Will Learn ? Develop TCP/IP networking client/server applications ? Administer local machines' IPv4/IPv6 network interfaces ? Write multi-purpose efficient web clients for HTTP and HTTPS protocols ? Perform remote system administration tasks over Telnet and SSH connections ? Interact with popular websites via web services such as XML-RPC, SOAP, and REST APIs ? Monitor and analyze major common network security vulnerabilities ? Develop Software-Defined Networks with Ryu, OpenDaylight, Floodlight, ONOS, and POX Controllers ? Emulate simple and complex networks with Mininet and its extensions for network and systems emulations ? Learn to configure and build network systems and Virtual Network Functions (VNF) in heterogeneous deployment environments ? Explore various Python modules to program the Internet In Detail Python Network Programming Cookbook - Second Edition highlights the major aspects of network programming in Python, starting from writing simple networking clients to developing and deploying complex Software-Defined Networking (SDN) and Network Functions Virtualization (NFV) systems. It creates the building blocks for many practical web and networking applications that rely on various networking protocols. It presents the power and beauty of Python to solve numerous real-world tasks in the area of network programming, network and system administration, network monitoring, and web-application development. In this edition, you will also be introduced to network modelling to build your own cloud network. You will learn about the concepts and fundamentals of SDN and then extend your network with Mininet. Next, you’ll find recipes on Authentication, Authorization, and Accounting (AAA) and open and proprietary SDN approaches and frameworks. You will also learn to configure the Linux Foundation networking ecosystem and deploy and automate your networks with Python in the cloud and the Internet scale. By the end of this book, you will be able to analyze your network security vulnerabilities using advanced network packet capture and analysis techniques. Style and approach This book follows a practical approach and covers major aspects of network programming in Python. It provides hands-on recipes combined with short and concise explanations on code snippets. This book will serve as a supplementary material to develop hands-on skills in any academic course on network programming. This book further elaborates network softwarization, including Software-Defined Networking (SDN), Network Functions Virtualization (NFV), and orchestration. We learn to configure and deploy enterprise network platforms, develop applications on top of them with Python.
Learning C++ Functional Programming
Learning C++ Functional Programming
Wisnu Anggoro
¥90.46
Apply Functional Programming techniques to C++ to build highly modular, testable, and reusable code About This Book ? Modularize your applications and make them highly reusable and testable ? Get familiar with complex concepts such as metaprogramming, concurrency, and immutability ? A highly practical guide to building functional code in C++ filled with lots of examples and real-world use cases Who This Book Is For This book is for C++ developers comfortable with OOP who are interested in learning how to apply the functional paradigm to create robust and testable apps. What You Will Learn ? Get to know the difference between imperative and functional approaches ? See the use of first-class functions and pure functions in a functional style ? Discover various techniques to apply immutable state to avoid side effects ? Design a recursive algorithm effectively ? Create faster programs using lazy evaluation ? Structure code using design patterns to make the design process easier ? Use concurrency techniques to develop responsive software ? Learn how to use the C++ Standard Template Library and metaprogramming in a functional way to improve code optimization In Detail Functional programming allows developers to divide programs into smaller, reusable components that ease the creation, testing, and maintenance of software as a whole. Combined with the power of C++, you can develop robust and scalable applications that fulfill modern day software requirements. This book will help you discover all the C++ 17 features that can be applied to build software in a functional way. The book is divided into three modules—the first introduces the fundamentals of functional programming and how it is supported by modern C++. The second module explains how to efficiently implement C++ features such as pure functions and immutable states to build robust applications. The last module describes how to achieve concurrency and apply design patterns to enhance your application’s performance. Here, you will also learn to optimize code using metaprogramming in a functional way. By the end of the book, you will be familiar with the functional approach of programming and will be able to use these techniques on a daily basis. Style and approach This book uses a module-based approach, where each module will cover important aspects of functional programming in C++ and will help you develop efficient and robust applications through gaining a practical understanding.
Mastering Apache Storm
Mastering Apache Storm
Ankit Jain
¥90.46
Master the intricacies of Apache Storm and develop real-time stream processing applications with ease About This Book ? Exploit the various real-time processing functionalities offered by Apache Storm such as parallelism, data partitioning, and more ? Integrate Storm with other Big Data technologies like Hadoop, HBase, and Apache Kafka ? An easy-to-understand guide to effortlessly create distributed applications with Storm Who This Book Is For If you are a Java developer who wants to enter into the world of real-time stream processing applications using Apache Storm, then this book is for you. No previous experience in Storm is required as this book starts from the basics. After finishing this book, you will be able to develop not-so-complex Storm applications. What You Will Learn ? Understand the core concepts of Apache Storm and real-time processing ? Follow the steps to deploy multiple nodes of Storm Cluster ? Create Trident topologies to support various message-processing semantics ? Make your cluster sharing effective using Storm scheduling ? Integrate Apache Storm with other Big Data technologies such as Hadoop, HBase, Kafka, and more ? Monitor the health of your Storm cluster In Detail Apache Storm is a real-time Big Data processing framework that processes large amounts of data reliably, guaranteeing that every message will be processed. Storm allows you to scale your data as it grows, making it an excellent platform to solve your big data problems. This extensive guide will help you understand right from the basics to the advanced topics of Storm. The book begins with a detailed introduction to real-time processing and where Storm fits in to solve these problems. You’ll get an understanding of deploying Storm on clusters by writing a basic Storm Hello World example. Next we’ll introduce you to Trident and you’ll get a clear understanding of how you can develop and deploy a trident topology. We cover topics such as monitoring, Storm Parallelism, scheduler and log processing, in a very easy to understand manner. You will also learn how to integrate Storm with other well-known Big Data technologies such as HBase, Redis, Kafka, and Hadoop to realize the full potential of Storm. With real-world examples and clear explanations, this book will ensure you will have a thorough mastery of Apache Storm. You will be able to use this knowledge to develop efficient, distributed real-time applications to cater to your business needs. Style and approach This easy-to-follow guide is full of examples and real-world applications to help you get an in-depth understanding of Apache Storm. This book covers the basics thoroughly and also delves into the intermediate and slightly advanced concepts of application development with Apache Storm.
MATLAB for Machine Learning
MATLAB for Machine Learning
Giuseppe Ciaburro
¥90.46
Extract patterns and knowledge from your data in easy way using MATLAB About This Book ? Get your first steps into machine learning with the help of this easy-to-follow guide ? Learn regression, clustering, classification, predictive analytics, artificial neural networks and more with MATLAB ? Understand how your data works and identify hidden layers in the data with the power of machine learning. Who This Book Is For This book is for data analysts, data scientists, students, or anyone who is looking to get started with machine learning and want to build efficient data processing and predicting applications. A mathematical and statistical background will really help in following this book well. What You Will Learn ? Learn the introductory concepts of machine learning. ? Discover different ways to transform data using SAS XPORT, import and export tools, ? Explore the different types of regression techniques such as simple & multiple linear regression, ordinary least squares estimation, correlations and how to apply them to your data. ? Discover the basics of classification methods and how to implement Naive Bayes algorithm and Decision Trees in the Matlab environment. ? Uncover how to use clustering methods like hierarchical clustering to grouping data using the similarity measures. ? Know how to perform data fitting, pattern recognition, and clustering analysis with the help of MATLAB Neural Network Toolbox. ? Learn feature selection and extraction for dimensionality reduction leading to improved performance. In Detail MATLAB is the language of choice for many researchers and mathematics experts for machine learning. This book will help you build a foundation in machine learning using MATLAB for beginners. You’ll start by getting your system ready with t he MATLAB environment for machine learning and you’ll see how to easily interact with the Matlab workspace. We’ll then move on to data cleansing, mining and analyzing various data types in machine learning and you’ll see how to display data values on a plot. Next, you’ll get to know about the different types of regression techniques and how to apply them to your data using the MATLAB functions. You’ll understand the basic concepts of neural networks and perform data fitting, pattern recognition, and clustering analysis. Finally, you’ll explore feature selection and extraction techniques for dimensionality reduction for performance improvement. At the end of the book, you will learn to put it all together into real-world cases covering major machine learning algorithms and be comfortable in performing machine learning with MATLAB. Style and approach The book takes a very comprehensive approach to enhance your understanding of machine learning using MATLAB. Sufficient real-world examples and use cases are included in the book to help you grasp the concepts quickly and apply them easily in your day-to-day work.
Microsoft IIS 10.0 Cookbook
Microsoft IIS 10.0 Cookbook
Ashraf Khan
¥90.46
Over 60 recipes to install, configure, and manage your IIS 10.0 About This Book ? Provide a secure, easy-to-manage extensible platform for hosting your websites ? Leverage IIS 10.0 in order to deploy web site in seconds ? Integrate Windows and Nano Server 2016 and automate it with PowerShell ? Recipes to Manage and monitor your IIS 10.0 Who This Book Is For If you are an administrator or web developer with a basic (or no) knowledge of Microsoft IIS and want to set up your own web server, then this is the book for you. What You Will Learn ? Integrate IIS 10.0 on Windows server 2016 ? Host multiple websites and Wildcard Host on IIS 10.0 ? Deploy and administrate IIS 10.0 on Nano Server. ? IIS administration with Powershell. ? Manage and troubleshoot IIS 10.0 In Detail This book will start with customizing your IIS 10 to various platforms/OS and tune it according to your business requirements. Moving on, we will focus on the functionalities of core fundamentals and perform practical scenarios in order to maximize the use of a reliable web server. Going further we will be covering topics like IIS 10 architecture, IIS modules,hosting web server platforms, virtual directories along with web site deployment, ports, enhanced security. We will also cover new features of IIS 10 like integration with Windows Server 2016 and Nano Server, HTTP/2, PowerShell 5 cmdlets etc . Towards the end, we will cover troubleshooting & diagnostic techniques of IIS 10. By the end of this book you will be well versed with maximizing the reliability of your webserver and will have immense knowledge in using IIS 10 effectively Style and approach A set of exciting recipes on using Microsoft IIS 10.0 effectively..
Mastering Spring 5.0
Mastering Spring 5.0
Ranga Rao Karanam
¥90.46
Develop cloud native applications with microservices using Spring Boot, Spring Cloud, and Spring Cloud Data Flow About This Book ? Explore the new features and components in Spring ? Evolve towards micro services and cloud native applications ? Gain powerful insights into advanced concepts of Spring and Spring Boot to develop applications more effectively ? Understand the basics of Kotlin and use it to develop a quick service with Spring Boot Who This Book Is For This book is for an experienced Java developer who knows the basics of Spring, and wants to learn how to use Spring Boot to build applications and deploy them to the cloud. What You Will Learn ? Explore the new features in Spring Framework 5.0 ? Build microservices with Spring Boot ? Get to know the advanced features of Spring Boot in order to effectively develop and monitor applications ? Use Spring Cloud to deploy and manage applications on the Cloud ? Understand Spring Data and Spring Cloud Data Flow ? Understand the basics of reactive programming ? Get to know the best practices when developing applications with the Spring Framework ? Create a new project using Kotlin and implement a couple of basic services with unit and integration testing In Detail Spring 5.0 is due to arrive with a myriad of new and exciting features that will change the way we’ve used the framework so far. This book will show you this evolution—from solving the problems of testable applications to building distributed applications on the cloud. The book begins with an insight into the new features in Spring 5.0 and shows you how to build an application using Spring MVC. You will realize how application architectures have evolved from monoliths to those built around microservices. You will then get a thorough understanding of how to build and extend microservices using Spring Boot. You will also understand how to build and deploy Cloud-Native microservices with Spring Cloud. The advanced features of Spring Boot will be illustrated through powerful examples. We will be introduced to a JVM language that’s quickly gaining popularity - Kotlin. Also, we will discuss how to set up a Kotlin project in Eclipse. By the end of the book, you will be equipped with the knowledge and best practices required to develop microservices with the Spring Framework. Style and Approach This book follows an end-to-end tutorial approach with lots of examples and sample applications, covering the major building blocks of the Spring framework.
Mastering Python Networking
Mastering Python Networking
Eric Chou
¥90.46
Become an expert in implementing advanced, network-related tasks with Python. About This Book ? Build the skills to perform all networking tasks using Python with ease ? Use Python for network device automation, DevOps, and software-defined networking ? Get practical guidance to networking with Python Who This Book Is For If you are a network engineer or a programmer who wants to use Python for networking, then this book is for you. A basic familiarity with networking-related concepts such as TCP/IP and a familiarity with Python programming will be useful. What You Will Learn ? Review all the fundamentals of Python and the TCP/IP suite ? Use Python to execute commands when the device does not support the API or programmatic interaction with the device ? Implement automation techniques by integrating Python with Cisco, Juniper, and Arista eAPI ? Integrate Ansible using Python to control Cisco, Juniper, and Arista networks ? Achieve network security with Python ? Build Flask-based web-service APIs with Python ? Construct a Python-based migration plan from a legacy to scalable SDN-based network. In Detail This book begins with a review of the TCP/ IP protocol suite and a refresher of the core elements of the Python language. Next, you will start using Python and supported libraries to automate network tasks from the current major network vendors. We will look at automating traditional network devices based on the command-line interface, as well as newer devices with API support, with hands-on labs. We will then learn the concepts and practical use cases of the Ansible framework in order to achieve your network goals. We will then move on to using Python for DevOps, starting with using open source tools to test, secure, and analyze your network. Then, we will focus on network monitoring and visualization. We will learn how to retrieve network information using a polling mechanism, ?ow-based monitoring, and visualizing the data programmatically. Next, we will learn how to use the Python framework to build your own customized network web services. In the last module, you will use Python for SDN, where you will use a Python-based controller with OpenFlow in a hands-on lab to learn its concepts and applications. We will compare and contrast OpenFlow, OpenStack, OpenDaylight, and NFV. Finally, you will use everything you’ve learned in the book to construct a migration plan to go from a legacy to a scalable SDN-based network. Style and approach An easy-to-follow guide packed with hands-on examples of using Python for network device automation, DevOps, and SDN.
Practical GIS
Practical GIS
Gábor Farkas
¥90.46
Learn the basics of Geographic Information Systems by solving real-world problems with powerful open source tools About This Book ? This easy-to-follow guide allows you to manage and analyze geographic data with ease using open source tools ? Publish your geographical data online ? Learn the basics of geoinformatics in a practical way by solving problems Who This Book Is For The book is for IT professionals who have little or no knowledge of GIS. It’s also useful for those who are new to the GIS field who don’t want to spend a lot of money buying licenses of commercial tools and training. What You Will Learn ? Collect GIS data for your needs ? Store the data in a PostGIS database ? Exploit the data using the power of the GIS queries ? Analyze the data with basic and more advanced GIS tools ? Publish your data and share it with others ? Build a web map with your published data In Detail The most commonly used GIS tools automate tasks that were historically done manually—compiling new maps by overlaying one on top of the other or physically cutting maps into pieces representing specific study areas, changing their projection, and getting meaningful results from the various layers by applying mathematical functions and operations. This book is an easy-to-follow guide to use the most matured open source GIS tools for these tasks. We’ll start by setting up the environment for the tools we use in the book. Then you will learn how to work with QGIS in order to generate useful spatial data. You will get to know the basics of queries, data management, and geoprocessing. After that, you will start to practice your knowledge on real-world examples. We will solve various types of geospatial analyses with various methods. We will start with basic GIS problems by imitating the work of an enthusiastic real estate agent, and continue with more advanced, but typical tasks by solving a decision problem. Finally, you will find out how to publish your data (and results) on the web. We will publish our data with QGIS Server and GeoServer, and create a basic web map with the API of the lightweight Leaflet web mapping library. Style and approach The book guides you step by step through each of the core concepts of the GIS toolkit, building an overall picture of its capabilities. This guide approaches the topic systematically, allowing you to build upon what you learned in previous chapters. By the end of this book, you’ll have an understanding of the aspects of building a GIS system and will be able to take that knowledge with you to whatever project calls for it.
The DevOps 2.1 Toolkit: Docker Swarm
The DevOps 2.1 Toolkit: Docker Swarm
Viktor Farcic
¥90.46
Viktor Farcic's latest book, The DevOps 2.1 Toolkit: Docker Swarm, shows you how to successfully integrate Docker Swarm into your DevOps toolset. About This Book ? Expand your DevOps Toolkit with the DevOps thought leader, Viktor Farcic ? Build, test, deploy, and monitor services inside Docker Swarm clusters ? Translate your understanding to different hosting providers like AWS, Azure, and DigitalOcean ? Go beyond simple deployment to explore how to create a continuous deployment process ? Extend the deep understanding you gained from Viktor's DevOps 2.0 Toolkit book Who This Book Is For This book is for professionals interested in the full microservices life cycle combined with continuous deployment and containers. Target audience could be architects who want to know how to design their systems around microservices. It could be DevOps wanting to know how to apply modern configuration management practices and continuously deploy applications packed in containers. It is for developers who would like to take the process back into their hands as well as for managers who would like to gain a better understanding of the process used to deliver software from the beginning to the end. This book is for everyone wanting to know more about the software development life cycle starting from requirements and design, through the development and testing all the way until deployment and post-deployment phases. We'll create the processes taking into account the best practices developed by and for some of the biggest companies. What You Will Learn ? Learn all aspects of Docker Swarm from building, testing, deploying, and monitoring services inside Docker Swarm clusters, available since Docker 1.12. ? Master the deeper logic of DevOps with Viktor, so that you can successfully apply that logic across any specific set of tools you’re working with. ? Translate a deep understanding to different hosting providers like AWS, Azure, DigitalOcean, among others. ? You’ll go beyond simple deployment: you will explore with Viktor how to create a continuous deployment process. Accomplish zero-downtime deployments, and what to do in case of a failover. ? Know how to run services at scale, how to monitor the systems, and how to make it heal itself. In Detail Viktor Farcic's latest book, The DevOps 2.1 Toolkit: Docker Swarm, takes you deeper into one of the major subjects of his international best seller, The DevOps 2.0 Toolkit, and shows you how to successfully integrate Docker Swarm into your DevOps toolset. Viktor shares with you his expert knowledge in all aspects of building, testing, deploying, and monitoring services inside Docker Swarm clusters. You'll go through all the tools required for running a cluster. You'll travel through the whole process with clusters running locally on a laptop. Once you're confident with that outcome, Viktor shows you how to translate your experience to different hosting providers like AWS, Azure, and DigitalOcean. Viktor has updated his DevOps 2.0 framework in this book to use the latest and greatest features and techniques introduced in Docker. We'll go through many practices and even more tools. While there will be a lot of theory, this is a hands-on book. You won't be able to complete it by reading it on the metro on your way to work. You'll have to read this book while in front of the computer and get your hands dirty. Style and approach We'll go through many practices and even more tools. While there will be a lot of theory, this is a hands-on book. You'll have to read this book while in front of the computer and get your hands dirty. The goal is not to master one particular set of tools, but to learn the logic behind them so that you can apply it to your job in various contexts.