万本电子书0元读

万本电子书0元读

Building a Home Security System with Raspberry Pi
Building a Home Security System with Raspberry Pi
Matthew Poole
¥63.21
Build your own sophisticated modular home security system using the popular Raspberry Pi board About This Book This book guides you through building a complete home security system with Raspberry Pi and helps you remotely access it from a mobile device over the Interne It covers the fundamentals of interfacing sensors and cameras with the Raspberry Pi so that you can connect it to the outside world It follows a modular approach so that you can choose the modules and features you want for your customized home security system Who This Book Is For This book is for anyone who is interested in building a modular home security system from scratch using a Raspberry Pi board, basic electronics, sensors, and simple *s. This book is ideal for enthusiastic novice programmers, electronics hobbyists, and engineering professionals. It would be great if you have some basic soldering skills in order to build some of the interface modules. What You Will Learn Understand the concepts behind alarm systems and intrusion detection devices Connect sensors and devices to the on-board digital GPIO ports safely Monitor and control connected devices easily using Bash shell *ing Build an I/O port expander using the I2C bus and connect sensors and anti-tamper circuits Capture and store images using motion detectors and cameras Access and manage your system remotely from your mobile phone Receive intrusion alerts and images through your e-mail Build a sophisticated multi-zone alarm system In Detail The Raspberry Pi is a powerful low-cost credit-card-sized computer, which lends itself perfectly as the controller for a sophisticated home security system. Using the on-board interfaces available, the Raspberry Pi can be expanded to allow the connection of a virtually infinite number of security sensors and devices. The Raspberry Pi has the processing power and interfaces available to build a sophisticated home security system but at a fraction of the cost of commercially available systems. Building a Home Security System with Raspberry Pi starts off by showing you the Raspberry Pi and how to set up the Linux-based operating system. It then guides you through connecting switch sensors and LEDs to the native GPIO connector safely, and how to access them using simple Bash *s. As you dive further in, you’ll learn how to build an input/output expansion board using the I2C interface and power supply, allowing the connection of the large number of sensors needed for a typical home security setup. In the later chapters of the book, we'll look at more sophisticated topics such as adding cameras, remotely accessing the system using your mobile phone, receiving intrusion alerts and images by e-mail, and more. By the end of the book, you will be well-versed with the use of Raspberry Pi to power a home-based security system that sends message alerts whenever it is triggered and will be able to build a truly sophisticated and modular home security system. You will also gain a good understanding of Raspberry Pi's ecosystem and be able to write the functions required for a security system. Style and approach This easy-to-follow guide comprises a series of projects, where every chapter introduces a new concept and at the end of the book, all these concepts are brought together to create an entire home security system. This book features clear diagrams and code every step of the way.
Mastering Linux Shell Scripting
Mastering Linux Shell Scripting
Andrew Mallett
¥63.21
Master the complexities of Bash shell *ing and unlock the power of shell for your enterprise About This Book Identify the high level steps such as verifying user input, using command lines and conditional statements in creating and executing simple shell *s Create and edit dynamic shell *s to manage complex and repetitive tasks Learn about *ing in Perl and programming in Python as a BASH *ing alternative with this practical, step-by-step guide Who This Book Is For Mastering Linux Shell Scripting has been written for Linux administrators who want to automate tasks in their daily lives, saving time and effort. You’ll need to have command-line experience and be familiar with the tasks that you need to automate. What You Will Learn Use the type command to identify the order of command evaluation Create interactive *s that prompt for user input Foster menu structures for operators with little command-line experience Develop *s that dynamically edit web configuration files to produce a new virtual host Write *s that use AWK to search and reports on log files Draft effective *s using functions as building blocks, reducing maintenance and build time Make informed choices by comparing different * languages such as Perl and Python with BASH In Detail Shell *ing is a quick method to prototype a complex application or a problem by automating tasks when working on Linux-based systems. Using both simple one-line commands and command sequences complex problems can be solved with ease, from text processing to backing up sysadmin tools. In this book, you’ll discover everything you need to know to master shell *ing and make informed choices about the elements you employ. Get to grips with the fundamentals of creating and running a * in normal mode, and in debug mode. Learn about various conditional statements' code snippets, and realize the power of repetition and loops in your shell *. Implement functions and edit files using the Stream Editor, * in Perl, program in Python – as well as complete coverage of other *ing languages to ensure you can choose the best tool for your project. Style and approach The book will capture your attention and keep you engaged with the simplicity and clarity of each explanation. Every step is accompanied with screen captures so you can cross-check the results before moving on.
Learning RabbitMQ
Learning RabbitMQ
Martin Toshev
¥80.65
Build and optimize efficient messaging applications with ease About This Book Learn to administer, configure, and manage RabbitMQ instances Discover ways to secure and troubleshoot RabbitMQ instances This book is fully up-to-date with all the latest changes to version 3.5 Who This Book Is For If you are a developer or system administrator with a basic knowledge of messaging who wants to learn RabbitMQ, or if you want to further enhance your knowledge in working with the message broker, then this book is ideal for you. To fully understand some examples in the book, a basic knowledge of the Java programming language is required. What You Will Learn Apply messaging patterns using the message broker Administer RabbitMQ using the command line, management Web console, or management REST services Create a cluster of scalable, and highly-available, RabbitMQ instances Use RabbitMQ with the Spring Framework, MuleESB, WSO2, and Oracle databases Deploy RabbitMQ using Puppet, Vagrant, or Docker Fine-tune the performance of RabbitMQ Monitor RabbitMQ using Nagios, Munin, or Monit Secure, troubleshoot, and extend RabbitMQ In Detail RabbitMQ is Open Source Message Queuing software based on the Advanced Message Queue Protocol Standard written in the Erlang Language. RabbitMQ is an ideal candidate for large-scale projects ranging from e-commerce and finance to Big Data and social networking because of its ease of use and high performance. Managing RabbitMQ in such a dynamic environment can be a challenging task that requires a good understanding not only of how to work properly with the message broker but also of its best practices and pitfalls. Learning RabbitMQ starts with a concise de*ion of messaging solutions and patterns, then moves on to concrete practical scenarios for publishing and subscribing to the broker along with basic administration. This knowledge is further expanded by exploring how to establish clustering and high availability at the level of the message broker and how to integrate RabbitMQ with a number of technologies such as Spring, and enterprise service bus solutions such as MuleESB and WSO2. We will look at advanced topics such as performance tuning, secure messaging, and the internals of RabbitMQ. Finally we will work through case-studies so that we can see RabbitMQ in action and, if something goes wrong, we'll learn to resolve it in the Troubleshooting section. Style and approach Each chapter of the book is an easy-to-follow guide that expands and builds on the knowledge already gained in previous chapters. Throughout the course of the book, a sample system called the CSN (Corporate Social Network) is used to illustrate the core principles described. At the end of each chapter, there is a Q&A session that covers practical questions that may arise in practice when working with RabbitMQ.
wxPython Application Development Cookbook
wxPython Application Development Cookbook
Cody Precord
¥80.65
Over 80 step-by-step recipes to get you up to speed with building your own wxPython applications About This Book This book empowers you to create rich cross-platform graphical user interfaces using Python It helps you develop applications that can be deployed on Windows, OSX, and Linux The recipes in the book involve real-world applications, giving you a first-hand experience of the practical scenarios Who This Book Is For For those who are familiar with programming in Python and want to start building applications with graphical user interfaces, this book will get you up and running quickly. A basic understanding of the Python programming language and object-oriented concepts are all that is needed. What You Will Learn Create full featured user interfaces Design and develop custom controls Deploy and distribute wxPython applications to Windows, Macintosh OS X, Linux, and other UNIX-like environments Handle and respond to application events Manage and display data using grids Interact with web services from your GUI Use Paint events to draw custom displays Support the display of user interfaces in multiple languages In Detail wxPython is a GUI toolkit for the Python programming language built on top of the cross-platform wxWidgets GUI libraries. wxPython provides a powerful set of tools that allow you to quickly and efficiently building applications that can run on a variety of different platforms. Since wxWidgets provides a wrapper around each platform’s native GUI toolkit, the applications built with wxPython will have a native look and feel wherever they are deployed. This book will provide you with the skills to build highly functional and native looking user interfaces for Python applications on multiple operating system environments. By working through the recipes, you will gain insights into and exposure to creating applications using wxPython. With a wide range of topics covered in the book, there are recipes to get the most basic of beginners started in GUI programming as well as tips to help experienced users get more out of their applications. The recipes will take you from the most basic application constructs all the way through to the deployment of complete applications. Style and approach This book is a collection of step-by-step recipes that introduce the various components and concepts of wxPython in a conversational and easy-to-follow way. Each recipe contains coded examples along with detailed explanations about the key points of each topic. Each topic is designed to introduce and show you how to use a single feature from the wxPython library.
JavaScript Concurrency
JavaScript Concurrency
Adam Boduch
¥80.65
Build better software with concurrent JavaScript programming, and unlock a more efficient and forward thinking approach to web development About This Book Apply the core principles of concurrency to both browser and server side development Explore the latest tools and techniques at the forefront of concurrent programming, including JavaScript promises, web workers, and generators Learn how concurrent and parallel programming can help you tackle the challenges of fast, data heavy web development Who This Book Is For JavaScript Concurrency is written for any JavaScript developer who wants to learn how to write more efficient, powerful, and maintainable applications that utilize the latest developments in the JavaScript language. All aspects of concurrent, asynchronous, and parallel programming are covered from first principles and by the end of the book you’ll be able to create a fully-worked application that leverages all the topics covered in the book. What You Will Learn Understand exactly how JavaScript works in a web browser environment, and how these mechanisms power our event-driven JavaScript code Use promises to turn complex synchronization scenarios into readable and maintainable values Compute values lazily and avoid unnecessary memory allocations using generators. Write concurrent code that doesn’t feel like concurrent code by abstracting away boilerplate chores Leverage true hardware parallelism with web workers to get a better performance Get to grips with the NodeJS model of concurrency and learn why it’s good for I/O-intensive web applications In Detail Concurrent programming may sound abstract and complex, but it helps to deliver a better user experience. With single threaded JavaScript, applications lack dynamism. This means that when JavaScript code is running, nothing else can happen. The DOM can’t update, which means the UI freezes. In a world where users expect speed and responsiveness – in all senses of the word – this is something no developer can afford. Fortunately, JavaScript has evolved to adopt concurrent capabilities – one of the reasons why it is still at the forefront of modern web development. This book helps you dive into concurrent JavaScript, and demonstrates how to apply its core principles and key techniques and tools to a range of complex development challenges. Built around the three core principles of concurrency – parallelism, synchronization, and conservation – you’ll learn everything you need to unlock a more efficient and dynamic JavaScript, to lay the foundations of even better user experiences. Throughout the book you’ll learn how to put these principles into action by using a range of development approaches. Covering everything from JavaScript promises, web workers, generators and functional programming techniques, everything you learn will have a real impact on the performance of your applications. You’ll also learn how to move between client and server, for a more frictionless and fully realized approach to development. With further guidance on concurrent programming with Node.js, JavaScript Concurrency is committed to making you a better web developer. The best developers know that great design is about more than the UI – with concurrency, you can be confident every your project will be expertly designed to guarantee its dynamism and power. Style and approach Beginning with the fundamentals of concurrency and how they apply to JavaScript development, the book then takes you through the relevant constructs that will help you implement concurrent code. You’ll learn how even the most abstract and theoretical aspects of concurrent programming help you solve real world challenges, with clear and practical demonstrations that show you how concurrent JavaScript will make you a better developer.
SQL Server 2014 with PowerShell v5 Cookbook
SQL Server 2014 with PowerShell v5 Cookbook
Donabel Santos
¥107.90
Over 150 real-world recipes to simplify database management, automate repetitive tasks, and enhance your productivity About This Book This book helps you build a strong foundation to get you comfortable using PowerShell with SQL Server, empowering you to create more complex *s for your day-to-day job The book provides numerous guidelines, tips, and explanations on how and when to use PowerShell cmdlets, WMI, SMO, .NET classes, or other components It offers easy-to-follow, practical recipes to help you get the most out of SQL Server and PowerShell Who This Book Is For If you are a SQL Server database professional (DBA, developer, or BI developer) who wants to use PowerShell to automate, integrate, and simplify database tasks, this books is for you. Prior knowledge of *ing would be helpful, but it is not necessary. What You Will Learn Explore database objects and execute queries on multiple servers Manage and monitor the running of SQL Server services and accounts Back up and restore databases Create an inventory of database properties and server configuration settings Maintain permissions and security for users Work with CLR assemblies, XML, and BLOB objects in SQL Manage and deploy SSIS packages and SSRS reports In Detail PowerShell can be leveraged when automating and streamlining SQL Server tasks. PowerShell comes with a rich set of cmdlets, and integrates tightly with the .NET framework. Its *ing capabilities are robust and flexible, allowing you to simplify automation and integration across different Microsoft applications and components. The book starts with an introduction to the new features in SQL Server 2014 and PowerShell v5 and the installation of SQL Server. You will learn about basic SQL Server administration tasks and then get to know about some security-related topics such as the authentication mode and assigning permissions. Moving on, you will explore different methods to back up and restore your databases and perform advanced administration tasks such as working with Policies, Filetables, and SQL audits. The next part of the book covers more advanced HADR tasks such as log shipping and data mirroring, and then shows you how to develop your server to work with BLOB, XML, and JSON. Following on from that, you will learn about SQL Server's BI stack, which includes SSRS reports, the SSIS package, and the SSAS cmdlet and database. Snippets not specific to SQL Server will help you perform tasks quickly on SQL servers. Towards the end of the book, you will find some useful information, which includes a PowerShell tutorial for novice users, some commonly-used PowerShell and SQL Server syntax, and a few online resources. Finally, you will create your own SQL Server Sandbox VMs. All these concepts will help you to efficiently manage your administration tasks. Style and approach SQL Server 2014 with PowerShell v5 Cookbook is an example-focused book that provides step-by-step instructions on how to accomplish specific SQL Server tasks using PowerShell. Each recipe is followed by an analysis of the steps or design decisions taken and additional information about the task at hand. Working *s are provided for all examples so that you can dive in right away. You can read this book sequentially by chapter or you can pick and choose which topics you need right away.
Mastering ROS for Robotics Programming
Mastering ROS for Robotics Programming
Lentin Joseph
¥99.18
Design, build and simulate complex robots using Robot Operating System and master its out-of-the-box functionalities About This Book Develop complex robotic applications using ROS for interfacing robot manipulators and mobile robots with the help of high end robotic sensors Gain insights into autonomous navigation in mobile robot and motion planning in robot manipulators Discover the best practices and troubleshooting solutions everyone needs when working on ROS Who This Book Is For If you are a robotics enthusiast or researcher who wants to learn more about building robot applications using ROS, this book is for you. In order to learn from this book, you should have a basic knowledge of ROS, GNU/Linux, and C++ programming concepts. The book will also be good for programmers who want to explore the advanced features of ROS. What You Will Learn Create a robot model of a Seven-DOF robotic arm and a differential wheeled mobile robot Work with motion planning of a Seven-DOF arm using MoveIt! Implement autonomous navigation in differential drive robots using SLAM and AMCL packages in ROS Dig deep into the ROS Pluginlib, ROS nodelets, and Gazebo plugins Interface I/O boards such as Arduino, Robot sensors, and High end actuators with ROS Simulation and motion planning of ABB and Universal arm using ROS Industrial Explore the ROS framework using its latest version In Detail The area of robotics is gaining huge momentum among corporate people, researchers, hobbyists, and students. The major challenge in robotics is its controlling software. The Robot Operating System (ROS) is a modular software platform to develop generic robotic applications.This book discusses the advanced concepts in robotics and how to program using ROS. It starts with deep overview of the ROS framework, which will give you a clear idea of how ROS really works. During the course of the book, you will learn how to build models of complex robots, and simulate and interface the robot using the ROS MoveIt motion planning library and ROS navigation stacks.After discussing robot manipulation and navigation in robots, you will get to grips with the interfacing I/O boards, sensors, and actuators of ROS. One of the essential ingredients of robots are vision sensors, and an entire chapter is dedicated to the vision sensor, its interfacing in ROS, and its programming.You will discuss the hardware interfacing and simulation of complex robot to ROS and ROS Industrial (Package used for interfacing industrial robots).Finally, you will get to know the best practices to follow when programming using ROS.Style and approach This is a simplified guide to help you learn and master advanced topics in ROS using hands-on examples.
Test-Driven JavaScript Development
Test-Driven JavaScript Development
Ravi Kumar Gupta
¥71.93
Learn JavaScript test-driven development using popular frameworks and tools About This Book Learn the life cycle of TDD and its importance in real-world application Gain knowledge about popular tools and analyze features, syntax, and how they help in JavaScript testing Implement test-driven programming exercises using the practical code examples Who This Book Is For If you have an intermediate knowledge of HTML, CSS, and JavaScript and want to learn how and why the test-driven development approach is better for your assignments, then this book is for you. What You Will Learn Basic TDD fundamentals, life cycle, and benefits Become acquainted with the concepts and elements of unit testing and writing basic unit tests for JavaScript Understand the way JsUnit, Qunit, Karma and DalekJs work Use the Jasmine framework Interpret feature detection and devise tests specific to cross-browser compatibility Integrate jsTestDriver with Eclipse and run tests with jsTestDriver Explore re-factoring, adding and notifying observers Understand test-driven development in case of server-side JS In Detail Initially, all processing used to happen on the server-side and simple output was the response to web browsers. Nowadays, there are so many JavaScript frameworks and libraries created that help readers to create charts, animations, simulations, and so on. By the time a project finishes or reaches a stable state, so much JavaScript code has already been written that changing and maintaining it further is tedious. Here comes the importance of automated testing and more specifically, developing all that code in a test-driven environment. Test-driven development is a methodology that makes testing the central part of the design process – before writing code developers decide upon the conditions that code must meet to pass a test. The end goal is to help the readers understand the importance and process of using TDD as a part of development. This book starts with the details about test-driven development, its importance, need, and benefits. Later the book introduces popular tools and frameworks like YUI, Karma, QUnit, DalekJS, JsUnit and goes on to utilize Jasmine, Mocha, Karma for advanced concepts like feature detection, server-side testing, and patterns. We are going to understand, write, and run tests, and further debug our programs. The book concludes with best practices in JavaScript testing. By the end of the book, the readers will know why they should test, how to do it most efficiently, and will have a number of versatile tests (and methods for devising new tests) to get to work immediately. Style and approach Easy-to-follow guide with suitable examples for developing JavaScript code in the test-Driven environment, with popular tools and frameworks. User experience and statements are also included to help readers make a better choice of tool for real-world projects.
GameMaker Cookbook
GameMaker Cookbook
Brandon Gardiner
¥80.65
Over 50 hands-on recipes to help you build exhilarating games using the robust GameMaker system About This Book Design and develop game elements that can be used alone or stacked to enhance your gaming experience Explore extensions that can unlock GameMaker: Studio’s true potential to create complex games A recipe-based, easy-to-follow guide to take your GameMaker skills to the next level Who This Book Is For This book is intended for GameMaker: Studio enthusiasts who are looking to add more substance and improve their content. If know your way around the program and have some basic GML skills but want to take them further, then this book is for you. What You Will Learn Set up player control schemes of various types, such as touch controls and a gamepad Create your own physics sandbox Get accustomed to advanced player movement Implement music and 3D sound in your games Utilize GameMaker’s GUI layers to create exciting games Generate adjustable game settings and save systems Add depth to your game with lighting and special effects In Detail GameMaker: Studio started off as a tool capable of creating simple games using a drag-and-drop interface. Since then, it has grown to become a powerful instrument to make release-ready games for PC, Mac, mobile devices, and even current-gen consoles. GameMaker is designed to allow its users to develop games without having to learn any of the complex programming languages such as C++ or Java. It also allows redistribution across multiple platforms. This book teaches you to harness GameMaker: Studio’s full potential and take your game development to new heights. It begins by covering the basics and lays a solid foundation for advanced GameMaker concepts. Moving on, it covers topics such as controls, physics, and advanced movement, employing a strategic approach to the learning curve. The book concludes by providing insights into complex concepts such as the GUI, menus, save system, lighting, particles, and VFX. By the end of the book, you will be able to design games using GameMaker: Studio and implement the same techniques in other games you intend to design. Style and approach A problem-solving guide that teaches you the construction of game elements and mechanics to be integrated in games for rapid prototyping. Each overall topic includes several individual recipes taught through step-by-step instructions, and in-depth follow-up with examples.
Apache Solr for Indexing Data
Apache Solr for Indexing Data
Sachin Handiekar
¥63.21
Enhance your Solr indexing experience with advanced techniques and the built-in functionalities available in Apache Solr About This Book Learn about distributed indexing and real-time optimization to change index data on fly Index data from various sources and web crawlers using built-in analyzers and tokenizers This step-by-step guide is packed with real-life examples on indexing data Who This Book Is For This book is for developers who want to increase their experience of indexing in Solr by learning about the various index handlers, analyzers, and methods available in Solr. Beginner level Solr development skills are expected. What You Will Learn Get to know the basic features of Solr indexing and the analyzers/tokenizers available Index XML/JSON data in Solr using the HTTP Post tool and CURL command Work with Data Import Handler to index data from a database Use Apache Tika with Solr to index word documents, PDFs, and much more Utilize Apache Nutch and Solr integration to index crawled data from web pages Update indexes in real-time data feeds Discover techniques to index multi-language and distributed data in Solr Combine the various indexing techniques into a real-life working example of an online shopping web application In Detail Apache Solr is a widely used, open source enterprise search server that delivers powerful indexing and searching features. These features help fetch relevant information from various sources and documentation. Solr also combines with other open source tools such as Apache Tika and Apache Nutch to provide more powerful features. This fast-paced guide starts by helping you set up Solr and get acquainted with its basic building blocks, to give you a better understanding of Solr indexing. You’ll quickly move on to indexing text and boosting the indexing time. Next, you’ll focus on basic indexing techniques, various index handlers designed to modify documents, and indexing a structured data source through Data Import Handler. Moving on, you will learn techniques to perform real-time indexing and atomic updates, as well as more advanced indexing techniques such as de-duplication. Later on, we’ll help you set up a cluster of Solr servers that combine fault tolerance and high availability. You will also gain insights into working scenarios of different aspects of Solr and how to use Solr with e-commerce data. By the end of the book, you will be competent and confident working with indexing and will have a good knowledge base to efficiently program elements. Style and approach This fast-paced guide is packed with examples that are written in an easy-to-follow style, and are accompanied by detailed explanation. Working examples are included to help you get better results for your applications.
Mastering RabbitMQ
Mastering RabbitMQ
Emrah Ayanoglu
¥99.18
Master the art of developing message-based applications with RabbitMQAbout This BookLearn how to administer, manage, and extend your own message broker, RabbitMQDevelop clients to make a message bridge between your software systems using RabbitMQDiscover how to achieve proficiency with RabbitMQ with the well-defined de*ions of the topicsWho This Book Is ForIf you are an intermediate-level RabbitMQ developer, who wants to achieve professional-level expertise in the subject, this book is for you. You’ll also need to have a decent understanding of message queuing.What You Will LearnAdminister RabbitMQ using different toolsUnderstand the roots and details of messaging, message brokers, and AMQP protocolScale the RabbitMQ server using the clusters and high availability techniquesExtend RabbitMQ by developing the Erlang OTP-based applications that use the RabbitMQ APIManage the RabbitMQ server using its powerful toolsMonitor the RabbitMQ Server using different open source tools such as Nagios, Munin, and ZabbixEnsure your RabbitMQ’s security using SSL, SASL, and access controlDevelop RabbitMQ clients using Java, Python, and C# with an industry exampleIn DetailRabbitMQ is one of the most powerful Open Source message broker software, which is widely used in tech companies such as Mozilla, VMware, Google, AT&T, and so on. RabbitMQ gives you lots of fantastic and easy-to-manage functionalities to control and manage the messaging facility with lots of community support. As scalability is one of our major modern problems, messaging with RabbitMQ is the main part of the solution to this problem.This book explains and demonstrates the RabbitMQ server in a detailed way. It provides you with lots of real-world examples and advanced solutions to tackle the scalability issues.You’ll begin your journey with the installation and configuration of the RabbitMQ server, while also being given specific details pertaining to the subject. Next, you’ll study the major problems that our server faces, including scalability and high availability, and try to get the solutions for both of these issues by using the RabbitMQ mechanisms. Following on from this, you’ll get to design and develop your own plugins using the Erlang language and RabbitMQ’s internal API. This knowledge will help you to start with the management and monitoring of the messages, tools, and applications. You’ll also gain an understanding of the security and integrity of the messaging facilities that RabbitMQ provides. In the last few chapters, you will build and keep track of your clients (senders and receivers) using Java, Python, and C#.Style and approach An easy-to-follow guide, full of hands-on examples based around managing, monitoring, extending, and securing RabbitMQ and its internal tools. You will learn how to develop your own clients using Java, Python, and C#.
Mastering Git
Mastering Git
Jakub Narębski
¥90.46
Attain expert-level proficiency with Git for enhanced productivity and efficient collaboration by mastering advanced distributed version control features About This Book Set up Git for solo and collaborative development Harness the full power of Git version control system to customize Git behavior, manipulate history, integrate external tools and explore platform shortcuts A detailed guide, which explains how to apply advanced Git techniques and workflows and ways to handle submodules Who This Book Is For If you are a Git user with reasonable knowledge of Git and familiarity with basic concepts such as branching, merging, staging, and workflows, this is the book for you. Basic knowledge of installing Git and software configuration management concepts is essential. What You Will Learn Explore project history, find revisions using different criteria, and filter and format how history looks Manage your working directory and staging area for commits and interactively create new revisions and amend them Set up repositories and branches for collaboration Submit your own contributions and integrate contributions from other developers via merging or rebasing Customize Git behavior system-wide, on a per-user, per-repository, and per-file basis Take up the administration and set up of Git repositories, configure access, find and recover from repository errors, and perform repository maintenance Chose a workflow and configure and set up support for the chosen workflow In Detail Git is one of the most popular types of Source Code Management (SCM) and Distributed Version Control System (DVCS). Despite the powerful and versatile nature of the tool enveloping strong support for nonlinear development and the ability to handle large projects efficiently, it is a complex tool and often regarded as “user-unfriendly”. Getting to know the ideas and concepts behind the architecture of Git will help you make full use of its power and understand its behavior. Learning the best practices and recommended workflows should help you to avoid problems and ensure trouble-free development. The book scope is meticulously designed to help you gain deeper insights into Git's architecture, its underlying concepts, behavior, and best practices. Mastering Git starts with a quick implementation example of using Git for a collaborative development of a sample project to establish the foundation knowledge of Git operational tasks and concepts. Furthermore, as you progress through the book, the tutorials provide detailed de*ions of various areas of usage: from archaeology, through managing your own work, to working with other developers. This book also helps augment your understanding to examine and explore project history, create and manage your contributions, set up repositories and branches for collaboration in centralized and distributed version control, integrate work from other developers, customize and extend Git, and recover from repository errors. By exploring advanced Git practices, you will attain a deeper understanding of Git’s behavior, allowing you to customize and extend existing recipes and write your own. Style and approach Step-by-step instructions and useful information make this book the ultimate guide to understanding and mastering Git. This book will show road to mastery example by example, while explaining mental model of Git. The Introduction section covers the 'Essentials' just for refreshing the basics. The main highlight is that the concepts are based on HOW the technology/framework works and not just practical 'WHAT to do'.
RSpec Essentials
RSpec Essentials
Mani Tadayon
¥71.93
Develop testable, modular, and maintainable Ruby software for the real world using RSpec About This Book Explore the concept of testability and how to implement tests that deliver the most value Maximize the quality of your Ruby code through a wide variety of tests Master the real-world tradeoffs of testing through detailed examples supported by in-depth discussion Who This Book Is For This book is aimed at the software engineer who wants to make their code more reliable and their development process easier. It is also aimed at test engineers who need to automate the testing of complex systems. Knowledge of Ruby is helpful, but even someone new to the language should find it easy to follow the code and tests. What You Will Learn Identify a unit of software for the purposes of testing Manage test states with hooks, fixtures, and mocks Handle external web services in tests using various techniques Configure RSpec flexibly and cleanly using support code and environment variables Interact with rich web apps in tests using Capybara Build the right feature with behavior-driven development Customize matchers and failure messages Verify correct development and production environments In Detail This book will teach you how to use RSpec to write high-value tests for real-world code. We start with the key concepts of the unit and testability, followed by hands-on exploration of key features. From the beginning, we learn how to integrate tests into the overall development process to help create high-quality code, avoiding the dangers of testing for its own sake. We build up sample applications and their corresponding tests step by step, from simple beginnings to more sophisticated versions that include databases and external web services. We devote three chapters to web applications with rich JavaScript user interfaces, building one from the ground up using behavior-driven development (BDD) and test-driven development (TDD). The code examples are detailed enough to be realistic while simple enough to be easily understood. Testing concepts, development methodologies, and engineering tradeoffs are discussed in detail as they arise. This approach is designed to foster the reader’s ability to make well-informed decisions on their own. Style and approach This comprehensive tutorial is packed with real-world examples of testing with RSpec. The most important features of RSpec are introduced in the early chapters and are used in examples of growing complexity in the following chapters. Concepts and methodologies are discussed in detail.
Salesforce Platform App Builder Certification Handbook
Salesforce Platform App Builder Certification Handbook
Siddhesh Kabe
¥80.65
A handy guide that covers the most essential topics for Salesforce Platform App Builder Certification in an easy-to-understand format About This Book Get to grips with the fundamentals of Force.com to pass the certification exam with flying colors Create Force.com applications, automate business processes, and manage data operations to be a successful Salesforce.com Certified Force.com app builder A step-by-step guide that covers the most essential topics for the Platform App Builder Certification in an easy-to-understand format Who This Book Is For Salesforce beginners who need to prepare for the Salesforce Platform App Builder Certification exam will benefit from this book. This book is ideal for developers and admins who are new to Salesforce CRM and the Force.com platform. It is recommended that users have some basic programming knowledge and are familiar with salesforce. By the end of the book, you will be ready to appear for the exam and develop various applications on the cloud platform. What You Will Learn Learn the basics of the force.com cloud platform Learn to build objects that align with your business Understand the process of building an application on force.com platform Kick-start your certification journey in basic- easy-to-follow guide Focus on important topics that help you accomplish your certification goals Learn to secure your application with the Salesforce security model Manipulate and process large amount of data using the data tools Prepare for the exam with sample mock questions In Detail The Salesforce Certified Platform App Builder exam is for individuals who want to demonstrate their skills and knowledge in designing, building, and implementing custom applications using the declarative customization capabilities of Force.com. This book will build a strong foundation in Force.com to prepare you for the platform app builder certification exam. It will guide you through designing the interface while introducing the Lightning Process Builder. Next, we will implement business logic using various point and click features of Force.com. We will learn to manage data and create reports and dashboards. We will then learn to administer the force.com application by configuring the object-level, field-level, and record-level security. By the end of this book, you will be completely equipped to take the Platform App Builder certification exam. Style and approach Simple and to-the-point examples that can be tried out in your developer org. A practical book for professionals who want to take the Salesforce Platform App Builder Certification exam. Sample questions for every topic in an exam pattern to help you prepare better, and tips to get things started. Full of screen-shots, diagrams, and clear step-by-step instructions that cover the entire syllabus for the exam.
Julia High Performance
Julia High Performance
Avik Sengupta
¥63.21
Design and develop high performing programs with Julia About This Book Learn to code high reliability and high performance programs Stand out from the crowd by developing code that runs faster than your peers’ codes This book is intended for developers who are interested in high performance technical programming. Who This Book Is For This book is for beginner and intermediate Julia programmers who are interested in high performance technical computing. You will have a basic familiarity with Julia syntax, and have written some small programs in the language. What You Will Learn Discover the secrets behind Julia’s speed Get a sense of the possibilities and limitations of Julia’s performance Analyze the performance of Julia programs Measure the time and memory taken by Julia programs Create fast machine code using Julia’s type information Define and call functions without compromising Julia’s performance Understand number types in Julia Use Julia arrays to write high performance code Get an overview of Julia’s distributed computing capabilities In Detail Julia is a high performance, high-level dynamic language designed to address the requirements of high-level numerical and scientific computing. Julia brings solutions to the complexities faced by developers while developing elegant and high performing code. Julia High Performance will take you on a journey to understand the performance characteristics of your Julia programs, and enables you to utilize the promise of near C levels of performance in Julia. You will learn to analyze and measure the performance of Julia code, understand how to avoid bottlenecks, and design your program for the highest possible performance. In this book, you will also see how Julia uses type information to achieve its performance goals, and how to use multuple dispatch to help the compiler to emit high performance machine code. Numbers and their arrays are obviously the key structures in scientific computing – you will see how Julia’s design makes them fast. The last chapter will give you a taste of Julia’s distributed computing capabilities. Style and approach This is a hands-on manual that will give you good explanations about the important concepts related to Julia programming.
Practical Data Analysis Cookbook
Practical Data Analysis Cookbook
Tomasz Drabas
¥90.46
Over 60 practical recipes on data exploration and analysis About This Book Clean dirty data, extract accurate information, and explore the relationships between variables Forecast the output of an electric plant and the water flow of American rivers using pandas, NumPy, Statsmodels, and scikit-learn Find and extract the most important features from your dataset using the most efficient Python libraries Who This Book Is For If you are a beginner or intermediate-level professional who is looking to solve your day-to-day, analytical problems with Python, this book is for you. Even with no prior programming and data analytics experience, you will be able to finish each recipe and learn while doing so. What You Will Learn Read, clean, transform, and store your data usng Pandas and OpenRefine Understand your data and explore the relationships between variables using Pandas and D3.js Explore a variety of techniques to classify and cluster outbound marketing campaign calls data of a bank using Pandas, mlpy, NumPy, and Statsmodels Reduce the dimensionality of your dataset and extract the most important features with pandas, NumPy, and mlpy Predict the output of a power plant with regression models and forecast water flow of American rivers with time series methods using pandas, NumPy, Statsmodels, and scikit-learn Explore social interactions and identify fraudulent activities with graph theory concepts using NetworkX and Gephi Scrape Internet web pages using urlib and BeautifulSoup and get to know natural language processing techniques to classify movies ratings using NLTK Study simulation techniques in an example of a gas station with agent-based modeling In Detail Data analysis is the process of systematically applying statistical and logical techniques to describe and illustrate, condense and recap, and evaluate data. Its importance has been most visible in the sector of information and communication technologies. It is an employee asset in almost all economy sectors. This book provides a rich set of independent recipes that dive into the world of data analytics and modeling using a variety of approaches, tools, and algorithms. You will learn the basics of data handling and modeling, and will build your skills gradually toward more advanced topics such as simulations, raw text processing, social interactions analysis, and more. First, you will learn some easy-to-follow practical techniques on how to read, write, clean, reformat, explore, and understand your data—arguably the most time-consuming (and the most important) tasks for any data scientist. In the second section, different independent recipes delve into intermediate topics such as classification, clustering, predicting, and more. With the help of these easy-to-follow recipes, you will also learn techniques that can easily be expanded to solve other real-life problems such as building recommendation engines or predictive models. In the third section, you will explore more advanced topics: from the field of graph theory through natural language processing, discrete choice modeling to simulations. You will also get to expand your knowledge on identifying fraud origin with the help of a graph, scrape Internet websites, and classify movies based on their reviews. By the end of this book, you will be able to efficiently use the vast array of tools that the Python environment has to offer. Style and approach This hands-on recipe guide is divided into three sections that tackle and overcome real-world data modeling problems faced by data analysts/scientist in their everyday work. Each independent recipe is written in an easy-to-follow and step-by-step fashion.
Getting Started with React
Getting Started with React
Doel Sengupta
¥63.21
A light but powerful way to build dynamic real-time applications using ReactJS About This Book Learn how to develop powerful JavaScript applications using ReactJS Integrate a React-based app with an external API (Facebook login) while using React components, with the Facebook developer app Implement the Reactive paradigm to build stateless and asynchronous apps with React Who This Book Is For This book is for any front-end web or mobile-app developer who wants to learn ReactJS. Knowledge of basic JavaScript will give you a good head start with the book. What You Will Learn Understand the ReactJS basics through an overview Install and create your first React component Refactor the ReactJS component using JSX Integrate your React application with the Facebook login and Graph API, then fetch data from your liked pages in Facebook and display them in a browser Handle UI elements events with React, respond to users input, and create stateful components Use some core lifecycle events for integration and find out about ES6 syntaxes in the React world Understand the FLUX architecture and create an application using FLUX with React Make a component more reusable with mixins and validation helpers and structure your components properly Explore techniques to test your ReactJS code Deploy your code using webpack and Gulp In Detail ReactJS, popularly known as the V (view) of the MVC architecture, was developed by the Facebook and Instagram developers. It follows a unidirectional data flow, virtual DOM, and DOM difference that are generously leveraged in order to increase the performance of the UI. Getting Started with React will help you implement the Reactive paradigm to build stateless and asynchronous apps with React. We will begin with an overview of ReactJS and its evolution over the years, followed by building a simple React component. We will then build the same react component with JSX syntax to demystify its usage. You will see how to configure the Facebook Graph API, get your likes list, and render it using React. Following this, we will break the UI into components and you’ll learn how to establish communication between them and respond to users input/events in order to have the UI reflect their state. You’ll also get to grips with the ES6 syntaxes. Moving ahead, we will delve into the FLUX and its architecture, which is used to build client-side web applications and complements React’s composable view components by utilizing a unidirectional data flow. Towards the end, you’ll find out how to make your components reusable, and test and deploy them into a production environment. Finally, we’ll briefly touch on other topics such as React on the server side, Redux and some advanced concepts. Style and approach The book follows a step-by-step, practical, tutorial approach with examples that explain the key concepts of ReactJS. Each topic is sequentially explained and contextually placed to give sufficient details of ReactJS.
Alfresco for Administrators
Alfresco for Administrators
Vandana Pal
¥54.49
A fast-paced administrator's guide to Alfresco from the administration, managing, and high-level design perspectives About This Book Understand system capabilities in order to make informed and appropriate decisions about its administration Manage users, groups, email, file systems, and transformer availability using Alfresco Use Alfresco to capture and efficiently manage information about repositories, servers, and statistics Who This Book Is For The target audience would be users with a basic knowledge of Content Management System, and also users who want to understand Alfresco from the administration and high-level design perspectives. What You Will Learn Understand Alfresco's architecture and important building blocks Learn to install Alfresco on various application servers such as Tomcat , JBoss, and WebLogic. Become familiar with various configurations in Alfresco such as databases, filesystems, email, and audits Administrate Alfresco using the Explorer Admin Console, Share Admin Console, and Workflow Admin Console Understand how to integrate LDAP and Active Directory with Alfresco for centralized user management Learn how Alfresco environments can be clustered for high availability Fully understand how Alfresco stores content and easily retrieve any information from Alfresco Monitor and manage Alfresco systems in production In Detail Alfresco is an open source Enterprise Content Management (ECM) system for Windows and Linux-like operating systems. The year-on-year growth of business connections, contacts, and communications is expanding enterprise boundaries more than ever before. Alfresco enables organizations to collaborate more effectively, improve business process efficiency, and ensure information governance. The basic purpose of Alfresco is to help users to capture and manage information in a better way. It helps you capture, organize, and share binary files. This book will cover the basic building blocks of an Alfresco system, how the components fit together, and the information required to build a system architecture. This book will also focus on security aspects of Alfresco. such as authentication, troubleshooting, managing permissions, and so on. It will also focus on managing content and storage, indexing and searches, setting up clustering for high availability, and so forth. Style and approach A step-by-step guide to understanding the Alfresco system and making informed and appropriate decisions about administration.
Practical Linux Security Cookbook
Practical Linux Security Cookbook
Tajinder Kalsi
¥80.65
Secure your Linux machines and keep them secured with the help of exciting recipes About This Book This book provides code-intensive discussions with detailed recipes that help you understand better and learn faster. More than 50 hands-on recipes to create and administer a secure Linux system locally as well as on a network Enhance file system security and local and remote user authentication by using various security tools and different versions of Linux for different tasks Who This Book Is For Practical Linux Security Cookbook is intended for all those Linux users who already have knowledge of Linux File systems and administration. You should be familiar with basic Linux commands. Understanding Information security and its risks to a Linux system is also helpful in understanding the recipes more easily. However, even if you are unfamiliar with Information security, you will be able to easily follow and understand the recipes discussed. Since Linux Security Cookbook follows a practical approach, following the steps is very easy. What You Will Learn Learn about various vulnerabilities and exploits in relation to Linux systems Configure and build a secure kernel and test it Learn about file permissions and security and how to securely modify files Explore various ways to authenticate local users while monitoring their activities. Authenticate users remotely and securely copy files on remote systems Review various network security methods including firewalls using iptables and TCP Wrapper Explore various security tools including Port Sentry, Squid Proxy, Shorewall, and many more Understand Bash vulnerability/security and patch management In Detail With the growing popularity of Linux, more and more administrators have started moving to the system to create networks or servers for any task. This also makes Linux the first choice for any attacker now. Due to the lack of information about security-related attacks, administrators now face issues in dealing with these attackers as quickly as possible. Learning about the different types of Linux security will help create a more secure Linux system. Whether you are new to Linux administration or experienced, this book will provide you with the skills to make systems more secure. With lots of step-by-step recipes, the book starts by introducing you to various threats to Linux systems. You then get to walk through customizing the Linux kernel and securing local files. Next you will move on to manage user authentication locally and remotely and also mitigate network attacks. Finally, you will learn to patch bash vulnerability and monitor system logs for security. With several screenshots in each example, the book will supply a great learning experience and help you create more secure Linux systems. Style and approach An easy-to-follow cookbook with step-by-step practical recipes covering the various Linux security administration tasks. Each recipe has screenshots, wherever needed, to make understanding more easy.
Getting Started with hapi.js
Getting Started with hapi.js
John Brett
¥54.49
Build well-structured, testable applications and APIs using hapi.js About This Book With the help of this book, you will improve your productivity as a developer and that of your team by focusing on business logic utilizing the structure that Hapi.js provides You will be introduced to a real-world problem and we’ll demonstrate how to use the tools Hapi provides to resolve it This is the only book with a learn-by-example approach Who This Book Is For If you are a JavaScript developer with or without Node.js experience and would like to learn to build applications, APIs, and web servers with the best-in-class framework hapi.js, this book is perfect for you. What You Will Learn Increase your productivity by taking advantage of the out-of-the-box features hapi.js provides Build secure API servers Create websites and applications using your favorite templating language Leverage hapi.js plugins to better structure your codebase Simplify your security workflows with the built-in authentication and authorization functionality of hapi.js Ensure application reliability with testing and code coverage Reduce code complexity using reusable validation logic with joi Gather insight into your application performance via logging Start the journey to building robust production-ready applications In Detail This book will introduce hapi.js and walk you through the creation of your first working application using the out-of-the-box features hapi.js provides. Packed with real-world problems and examples, this book introduces some of the basic concepts of hapi.js and Node.js and takes you through the typical journey you'll face when developing an application. Starting with easier concepts such as routing requests, building APIs serving JSON, using templates to build websites and applications, and connecting databases, we then move on to more complex problems such as authentication, model validation, caching, and techniques for structuring your codebase to scale gracefully. You will also develop skills to ensure your application's reliability through testing, code coverage, and logging. By the end of this book, you'll be equipped with all the skills you need to build your first fully featured application. This book will be invaluable if you are investigating Node.js frameworks or planning on using hapi.js in your next project. Style and approach This book takes a step-by-step approach to building an application or web server using hapi.js though examples.
App Inventor 2 Essentials
App Inventor 2 Essentials
Felicia Kamriani
¥54.49
A step-by-step introductory guide to mobile app development with App Inventor 2 About This Book Get an introduction to the functionalities of App Inventor 2 and use it to unleash your creativity Learn to navigate the App Inventor platform, develop basic coding skills and become familiar with a blocks based programming language Build your very first mobile app and feel proud of your accomplishment Follow tutorials to expand your app development skills Who This Book Is For App Inventor 2 Essentials is for anyone who wants to learn to make mobile apps for Android devices – no prior coding experience is necessary. What You Will Learn Perform technical setup and navigate the App Inventor platform Utilize the interactive development environment by pairing a mobile device with a computer using Wi-Fi or USB Build three apps: a game, an event app and a raffle app Create the user interface of the app in the Designer and program the code in the Blocks Editor Integrate basic computer science principles along with more complex elements such fusion tables and lists Test and troubleshoot your applications Publish your apps on Google Play Store to reach a wide audience Unleash your creativity for further app development In Detail App Inventor 2 will take you on a journey of mobile app development. We begin by introducing you to the functionalities of App Inventor and giving you an idea about the types of apps you can develop using it. We walk you through the technical set up so you can take advantage of the interactive development environment (live testing). You will get hands-on, practical experience building three different apps using tutorials. Along the way, you will learn computer science principles as well as tips to help you prepare for the creative process of building an app from scratch. By the end of the journey, you will learn how to package an app and deploy it to app markets. App Inventor 2 Essentials prepares you to amass a resource of skills, knowledge and experience to become a mobile app developer Style and approach Every topic in this book is explained in step-by-step and easy-to-follow fashion, accompanied with screenshots of the interface that will make it easier for you to understand the processes.