万本电子书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.
Optimizing Citrix? XenDesktop? for High Performance
Optimizing Citrix? XenDesktop? for High Performance
Craig Thomas Ellrod
¥90.46
Successfully deploy XenDesktop sites for a high performance Virtual Desktop Infrastructure (VDI) About This Book Size the VDI environment so the administrator has breathing room to design and build their XenDesktop systems efficiently Use desktop virtualization tools to provide users fast, convenient access to their Windows Desktops Understand the key pinch points in the resource layers such as; the Client layer, Network Layer, Access Layer, Control Layer, Services Layer and Resources Layer Who This Book Is For Citrix XenDesktop High Performance is written for administrators who would like to deploy Citrix XenDesktop in their enterprises with the aim of providing high efficiency. Basic familiarity with Citrix XenDesktop is assumed. What You Will Learn Understand key concepts, terminology, and system requirements Discover how components work in regards to virtualization and performance Identify architectural resource layers and components Explore the hypervisor virtualization software that runs on top of the hardware and learn how to tune it for maximum performance Analyze client hardware and software, including thin clients and mobile devices In Detail Citrix XenDesktop is a suite of desktop virtualization tools designed to provide users with fast and convenient access to their Windows desktops and applications through any device. Virtual desktops mean that rather than setting up hundreds or thousands of individual computers in an enterprise, companies can instead opt to create servers with large amounts of memory, disk, and processing resources, and use virtualization to offer these resources to end users. The result of this is that users are provided with an experience that appears to be identical to having an individual desktop PC. Each user has some disk space, processor time, and memory allocated to them, as though it is present on their own physical machine, when in reality, the resources are physically present on a centralized server. This book starts by answering the basic questions you need to ask when considering XenDesktop, followed by methods of how you can properly size your server infrastructure for XenDesktop. You’ll discover how to optimize the virtual machines used in XenDesktop, how to optimize your network for XenDesktop, and how to optimize the hypervisor and the cloud. You’ll also learn how to monitor XenDesktop to maximize performance. By the end of the book, you will be able to plan, design, build, and deploy high performance XenDesktop Virtualization systems in enterprises. You will also know how to monitor and maintain your systems to ensure smooth operation. Style and approach This book is an all-inclusive guide that uncovers hidden and previously unpublished performance improvement areas for any XenDesktop site.
Scala Functional Programming Patterns
Scala Functional Programming Patterns
Atul S.Khot
¥90.46
Grok and perform effective functional programming in Scala About This Book Understand functional programming patterns by comparing them with the traditional object-oriented design patterns Write robust, safer, and better code using the declarative programming paradigm An illustrative guide for programmers to create functional programming patterns with Scala Who This Book Is For If you have done Java programming before and have a basic knowledge of Scala and its syntax, then this book is an ideal choice to help you to understand the context, the traditional design pattern applicable, and the Scala way. Having previous knowledge of design patterns will help, though it is not strictly necessary. What You Will Learn Get to know about functional programming and the value Scala's FP idioms bring to the table Solve day-to-day programming problems using functional programming idioms Cut down the boiler-plate and express patterns simply and elegantly using Scala's concise syntax Tame system complexity by reducing the moving parts Write easier to reason about concurrent code using the actor paradigm and the Akka library Apply recursive thinking and understand how to create solutions without mutation Reuse existing code to compose new behavior Combine the object-oriented and functional programming approaches for effective programming using Scala In Detail Scala is used to construct elegant class hierarchies for maximum code reuse and extensibility and to implement their behavior using higher-order functions. Its functional programming (FP) features are a boon to help you design “easy to reason about” systems to control the growing software complexities. Knowing how and where to apply the many Scala techniques is challenging. Looking at Scala best practices in the context of what you already know helps you grasp these concepts quickly, and helps you see where and why to use them. This book begins with the rationale behind patterns to help you understand where and why each pattern is applied. You will discover what tail recursion brings to your table and will get an understanding of how to create solutions without mutations. We then explain the concept of memorization and infinite sequences for on-demand computation. Further, the book takes you through Scala’s stackable traits and dependency injection, a popular technique to produce loosely-coupled software systems. You will also explore how to currying favors to your code and how to simplify it by de-construction via pattern matching. We also show you how to do pipeline transformations using higher order functions such as the pipes and filters pattern. Then we guide you through the increasing importance of concurrent programming and the pitfalls of traditional code concurrency. Lastly, the book takes a paradigm shift to show you the different techniques that functional programming brings to your plate. This book is an invaluable source to help you understand and perform functional programming and solve common programming problems using Scala’s programming patterns. Style and approach This is a hands-on guide to Scala's game-changing features for programming. It is filled with many code examples and figures that illustrate various Scala idioms and best practices.
Troubleshooting Citrix XenApp?
Troubleshooting Citrix XenApp?
Dragos Madarasan
¥63.21
Identify and resolve key Citrix XenAppissues using trusted troubleshooting and monitoring techniques About This BookUnderstand the key troubleshooting methodologies when working with XenApp 7.5 version and aboveUncover effective tips and techniques to solve real-world XenAppinfrastructure problemsThis is a fast-paced guide to developing key troubleshooting and problem resolution skills you can put to use in a Citrix environmentWho This Book Is ForThis book is for Citrix Administrators or Citrix Engineers who are currently managing Citrix XenAppin a production environment and want to learn how to troubleshoot XenAppissues in the shortest possible time. It is assumed that you have a basic understanding of XenApp’s components and how to implement and manage a XenAppinfrastructure.What You Will LearnGet to know about troubleshooting methodologies and perform a root cause analysis of the problemUnderstand the individual components and interactions required for a successful XenApp environmentsIdentify and troubleshoot issues around the core Citrix componentsIdentify XenAppcomponents and their roles and learn how they interact with the communication channelsGain tips and tricks to optimize Citrix deploymentsMonitor and optimize the XenAppenvironmentIn DetailCitrix XenAppis an application virtualization product from Citrix. It allows users to connect to their corporate applications from various computer systems and even mobile devices. XenApphas grown into a complex software with ever-expanding infrastructures in place. Together with tight integrations with other systems such as Terminal Services, Active Directory, and other third-party authentication services, troubleshooting XenApphas become more complicated.This book teaches you how to approach troubleshooting complex issues with XenAppdeployments and understand the problem, find a fix or workaround, determine the root cause, and apply corrective steps wherever applicable. The book progresses to give you an idea about the many supportive components that play an important role in XenApp’s application delivery model and should be considered while troubleshooting XenAppissues. It also shows you standard troubleshooting processes so that you can resolve complex XenAppissues in a mission critical environment.By the end of this book, you will see how and where to use supportive components that help minimize XenAppissues. Also, we’ll explain various tools that can be useful when monitoring and optimizing entire application and desktop delivery model.Style and approachThis is an easy-to-follow, fast-paced, example-oriented guide with a brief explanation on various troubleshooting methodologies to walk you through a host of real-life problems.
Learning iOS UI Development
Learning iOS UI Development
Yari D'areglia
¥54.49
Implement complex iOS user interfaces with ease using Swift About This Book Build compelling user interfaces that users will enjoy using the iOS UIKit frameworkMake your iOS apps easily recognizable and familiar with the UIKit frameworkUse this comprehensive, step-by-step guide to create a complete custom layoutWho This Book Is ForThis easy-to-follow guide is perfect for beginner-level iOS developers who want to become proficient in user interface development. It would also be useful for experienced iOS developers who need a complete overview of this broad topic all in one place, without having to consult various sources.What You Will LearnUnderstand the basic requirements to work with iOS user interfacesGet to know about the UI tools, frameworks, and built-in componentsPlot dynamic layout structures using Auto LayoutShape and implement adaptive user interfaces for different screen sizesDraw and animate your user interfaces using the CALayer and UIKit animationsIntercept and handle user touches to create user interface interactivity Create and depict totally custom controls Design with iOS through Core Graphics In Detail Through this comprehensive one-stop guide, you’ll get to grips with the entire UIKit framework and in a flash, you’ll be creating modern user interfaces for your iOS devices using Swift. Starting with an overview of the iOS drawing system and the available tools, you will then learn how to use these technologies to create adaptable layouts and custom elements for your applications. Next, you’ll be introduced to other topics such as animation and code-drawing with Core Graphics, which will give you all the knowledge you need to create astonishing user interfaces. By the end of this book, you will have a solid foundation in iOS user interface development and will have gained valuable insights on the process of building firm and complex UIs. Style and approach This concise yet information-packed guide is full of step-by-step instructions and screenshots of real-life examples, delivered in a direct manner, to get you creating modern user interfaces for your iOS devices using SWIFT in no time.
Python Unlocked
Python Unlocked
Arun Tigeraniya
¥71.93
Become more fluent in Python—learn strategies and techniques for smart and high-performance Python programming About This Book Write smarter, bug-free, high performance code with minimal effort Uncover the best tools and options available to Python developers today Deploy decorators, design patters, and various optimization techniques to use Python 3.5 effectively Who This Book Is For If you are a Python developer and you think that you don’t know everything about the language yet, then this is the book for you. We will unlock the mysteries and re-introduce you to the hidden features of Python to write efficient programs, making optimal use of the language. What You Will Learn Manipulate object creation processes for instances, classes, and functions Use the best possible language constructs to write data structures with super speed and maintainability Make efficient use of design patterns to decrease development time and make your code more maintainable Write better test cases with an improved understanding of the testing framework of Python and unittests, and discover how to develop new functionalities in it Write fully-optimized code with the Python language by profiling, compiling C modules, and more Unlock asynchronous programming to build efficient and scalable applications In Detail Python is a versatile programming language that can be used for a wide range of technical tasks—computation, statistics, data analysis, game development, and more. Though Python is easy to learn, it’s range of features means there are many aspects of it that even experienced Python developers don’t know about. Even if you’re confident with the basics, its logic and syntax, by digging deeper you can work much more effectively with Python – and get more from the language. Python Unlocked walks you through the most effective techniques and best practices for high performance Python programming - showing you how to make the most of the Python language. You’ll get to know objects and functions inside and out, and will learn how to use them to your advantage in your programming projects. You will also find out how to work with a range of design patterns including abstract factory, singleton, strategy pattern, all of which will help make programming with Python much more efficient. Finally, as the process of writing a program is never complete without testing it, you will learn to test threaded applications and run parallel tests. If you want the edge when it comes to Python, use this book to unlock the secrets of smarter Python programming. Style and approach This is book had been created to help you to “unlock” the best ways to tackle the challenges and performance bottlenecks that many Python developers face today. The keys are supported with program examples to help you understand the concepts better and see them in action.
Learning Linux Shell Scripting
Learning Linux Shell Scripting
Ganesh Sanjiv Naik
¥90.46
Unleash the power of shell *s to solve real-world problems by breaking through the practice of writing tedious code About This Book Learn how to efficiently and effectively build shell *s and develop advanced applications with this handy book Develop high quality and efficient solutions by writing professional and real-world *s, and debug *s by checking and shell tracing A step-by-step tutorial to automate routine tasks by developing *s from a basic level to very advanced functionality Who This Book Is For This book is ideal for those who are proficient at working with Linux and who want to learn about shell *ing to improve their efficiency and practical skills. By the end of this book, you will be able to confidently use your own shell *s in the real world. What You Will Learn Familiarize yourself with the various text filtering tools available in Linux Combine the fundamental text and file processing commands to process data and automate repetitive tasks Understand expressions and variables and how to use them practically Automate decision-making and save a lot of time and effort of revisiting code Get to grips with advanced functionality such as using traps and signals and using dialogs to develop screens Start up a system and customize a Linux system Take an in-depth look at regular expressions and pattern matching to understand the capabilities of *ing In Detail Linux is the one of the most powerful and universally adopted OSes. Shell is a program that gives the user direct interaction with the operating system. Scripts are collections of commands that are stored in a file. The shell can read this file and act on the commands as if they were typed on the keyboard. Shell *ing is used to automate day-to-day administration, and for testing or product development tasks.This book covers Bash, GNU Bourne Again SHell, preparing you to work in the exciting world of Linux shell *ing. We start with an introduction to the Shell environment and explain basic commands used in Shell. Next we move on to check, kill, and control the execution of processes in Linux OS. Further, we teach you about the filter tools available in Linux and explain standard output and standard errors devices.Then we will ensure you understand Shell’s interpretation of commands and get a firmer grasp so you use them in practice. Next, you’ll experience some real-world essentials such as debugging and perform Shell arithmetic fluently. Then you’ll take a step ahead and learn new and advanced topics in Shell *ing, such as starting up a system and customizing a Linux system. Finally, you’ll get to understand the capabilities of *ing and learn about Grep, Stream Editor, and Awk.Style and approach This practical book will go from the very basics of shell *ing to complex, customized automation. The idea behind this book is to be as practical as possible and give you the look and feel of what real-world *ing is like.
Appcelerator Titanium Smartphone App Development Cookbook - Second Edition
Appcelerator Titanium Smartphone App Development Cookbook - Second Edition
Jason Kneen
¥80.65
Over 100 recipes to help you develop cross-platform, native applications in JavaScript About This Book Leverage your JavaScript skills to write mobile applications using Titanium Studio tools with the native advantage Deploy your application on the App Store and Google Play Add your own IOS native modules in objective-C, in an easy-to-follow step-by-step format Who This Book Is For This book is an essential for any developer learning or using JavaScript who wants to write native UI applications for iOS and Android. No knowledge of Objective-C, Swift and Java is required and you’ll quickly be developing native, cross-platform apps, in JavaScript! What You Will Learn Transfer data between applications with URL schemes, and make your application accessible to other mobile applications and services Connect with remote services using JSON Work with Google Maps and Apple Maps, GPS and annotate routes Create animations and special effects Integrate notifications and connect with social media services such as Facebook and Twitter Build applications with Alloy MVC – a rapid application development framework Design native APIs and use local databases In Detail The mobile web has paved the way but many users want to have “native” applications installed. Using Appcelerator as a platform it’s now possible to write iOS, Android, and Windows phone applications in JavaScript! It allows developers to develop fully native UI applications using Appcelerator studio tools without any knowledge of Objective-C, Swift or Java. This book will take you through the process of building cross-platform, native UI applications for the mobile from scratch. You will learn how to develop apps, how to use GPS, cameras and photos and how to build socially connected apps. You will also learn how to package them for submission to the App Store and Google Play. This cookbook takes a pragmatic approach to creating applications in JavaScript from putting together basic UIs, to handling events and implementation of third party services such as Twitter, Facebook and Push notifications. The book shows you how to integrate datasources and server APIs, and how to use local databases. The topics covered will guide you to use Appcelerator Studio tools for all the mobile features such as Geolocation, Accelerometer, animation and more. You’ll also learn about Alloy, the Appcelerator MVC framework for rapid app development, and how to transfer data between applications using URLSchemes, enabling other developers to access and launch specific parts of your app. Finally, you will learn how to register developer accounts and publish your very own applications on the App Store and Google Play. Style and approach This book offers a set of practical recipes with a step-by-step approach for building native applications for both the iOS and Android using JavaScript. This hands-on guide shows you exactly how to use the Appcelerator platform to rapidly develop cross-platform, native apps.
Test-Driven Machine Learning
Test-Driven Machine Learning
Justin Bozonier
¥71.93
Control your machine learning algorithms using test-driven development to achieve quantifiable milestones About This Book Build smart extensions to pre-existing features at work that can help maximize their value Quantify your models to drive real improvement Take your knowledge of basic concepts, such as linear regression and Na?ve Bayes classification, to the next level and productionalize their models Play what-if games with your models and techniques by following the test-driven exploration process Who This Book Is For This book is intended for data technologists (scientists, analysts, or developers) with previous machine learning experience who are also comfortable reading code in Python. You may be starting, or have already started, a machine learning project at work and are looking for a way to deliver results quickly to enable rapid iteration and improvement. Those looking for examples of how to isolate issues in models and improve them will find ideas in this book to move forward. What You Will Learn Get started with an introduction to test-driven development and familiarize yourself with how to apply these concepts to machine learning Build and test a neural network deterministically, and learn to look for niche cases that cause odd model behaviour Learn to use the multi-armed bandit algorithm to make optimal choices in the face of an enormous amount of uncertainty Generate complex and simple random data to create a wide variety of test cases that can be codified into tests Develop models iteratively, even when using a third-party library Quantify model quality to enable collaboration and rapid iteration Adopt simpler approaches to common machine learning algorithms Take behaviour-driven development principles to articulate test intent In Detail Machine learning is the process of teaching machines to remember data patterns, using them to predict future outcomes, and offering choices that would appeal to individuals based on their past preferences. Machine learning is applicable to a lot of what you do every day. As a result, you can’t take forever to deliver your first iteration of software. Learning to build machine learning algorithms within a controlled test framework will speed up your time to deliver, quantify quality expectations with your clients, and enable rapid iteration and collaboration. This book will show you how to quantifiably test machine learning algorithms. The very different, foundational approach of this book starts every example algorithm with the simplest thing that could possibly work. With this approach, seasoned veterans will find simpler approaches to beginning a machine learning algorithm. You will learn how to iterate on these algorithms to enable rapid delivery and improve performance expectations. The book begins with an introduction to test driving machine learning and quantifying model quality. From there, you will test a neural network, predict values with regression, and build upon regression techniques with logistic regression. You will discover how to test different approaches to na?ve bayes and compare them quantitatively, along with how to apply OOP (Object-Oriented Programming) and OOP patterns to test-driven code, leveraging SciKit-Learn. Finally, you will walk through the development of an algorithm which maximizes the expected value of profit for a marketing campaign by combining one of the classifiers covered with the multiple regression example in the book. Style and approach An example-driven guide that builds a deeper knowledge and understanding of iterative machine learning development, test by test. Each topic develops solutions using failing tests to illustrate problems; these are followed by steps to pass the tests, simply and straightforwardly. Topics which use generated data explore how the data was generated, alongside explanations of the assumptions behind different machine learning techniques.
Oracle SOA Suite 12c Administrator's Guide
Oracle SOA Suite 12c Administrator's Guide
Arun Pareek
¥107.90
A guide to everything an Oracle SOA Suite 12c administrator needs to hit the ground running About This Book Understand core administrative tasks such as deployments, purging, startup and shutdown, configuration, and backup and recovery Manage, monitor, and troubleshoot SOA composites and OSB services Follow step-by-step instructions to easily and quickly install a highly available two-node cluster Who This Book Is For With topic areas ranging from the simple to the complex, this book is intended for novice, mid-level, and experienced administrators of the Oracle SOA Suite 12c platform as well as Oracle WebLogic Server and Oracle Database administrators interested in diving into the product. What You Will Learn Navigate Oracle Enterprise Manager Fusion Middleware Control Monitor and manage the Oracle SOA Suite 12 c infrastructure Deploy and promote code Monitor and manage services Configure and administer the environment Manage the dehydration store and enterprise scheduler service Troubleshoot Oracle SOA Suite 12c infrastructure Set up backups, recovery, and high availability In Detail Oracle SOA Suite 12 c is the most comprehensive and integrated infrastructure on the market today that is used for building applications based on service-oriented architecture. With the vast number of features and capabilities that Oracle SOA Suite 12c has to offer comes numerous complexities and challenges for administration. Oracle SOA Suite 12c Administrator's Guide covers all the core areas of administration needed for you to effectively manage and monitor the Oracle SOA Suite environment and its transactions, from deployments, to monitoring, to performance tuning, and much, much more. Manage, monitor, and troubleshoot SOA composites and OSB services from a single product set. Understand core administrative activities such as deployments, purging, startup and shutdown, configuration, backup, and recovery. Also learn about new features such as Oracle Enterprise Scheduler, lazy loading, work manager groups, high availability, and more. Style and approach Presented in a reference guide format where chapters can be read in any sequence, this book explains the core concepts while providing real-world implementation specifics, detailing the what, why, and how of all the administration-related activities that involve Oracle SOA Suite 12c. We take a step-by-step approach and offers tips, instructions, and examples that you can easily follow and execute.
Windows Malware Analysis Essentials
Windows Malware Analysis Essentials
Victor Marak
¥90.46
Master the fundamentals of malware analysis for the Windows platform and enhance your anti-malware skill set About This Book Set the baseline towards performing malware analysis on the Windows platform and how to use the tools required to deal with malware Understand how to decipher x86 assembly code from source code inside your favourite development environment A step-by-step based guide that reveals malware analysis from an industry insider and demystifies the process Who This Book Is For This book is best for someone who has prior experience with reverse engineering Windows executables and wants to specialize in malware analysis. The book presents the malware analysis thought process using a show-and-tell approach, and the examples included will give any analyst confidence in how to approach this task on their own the next time around. What You Will Learn Use the positional number system for clear conception of Boolean algebra, that applies to malware research purposes Get introduced to static and dynamic analysis methodologies and build your own malware lab Analyse destructive malware samples from the real world (ITW) from fingerprinting and static/dynamic analysis to the final debrief Understand different modes of linking and how to compile your own libraries from assembly code and integrate the codein your final program Get to know about the various emulators, debuggers and their features, and sandboxes and set them up effectively depending on the required scenario Deal with other malware vectors such as pdf and MS-Office based malware as well as *s and shellcode In Detail Windows OS is the most used operating system in the world and hence is targeted by malware writers. There are strong ramifications if things go awry. Things will go wrong if they can, and hence we see a salvo of attacks that have continued to disrupt the normal scheme of things in our day to day lives. This book will guide you on how to use essential tools such as debuggers, disassemblers, and sandboxes to dissect malware samples. It will expose your innards and then build a report of their indicators of compromise along with detection rule sets that will enable you to help contain the outbreak when faced with such a situation. We will start with the basics of computing fundamentals such as number systems and Boolean algebra. Further, you'll learn about x86 assembly programming and its integration with high level languages such as C++.You'll understand how to decipher disassembly code obtained from the compiled source code and map it back to its original design goals. By delving into end to end analysis with real-world malware samples to solidify your understanding, you'll sharpen your technique of handling destructive malware binaries and vector mechanisms. You will also be encouraged to consider analysis lab safety measures so that there is no infection in the process. Finally, we'll have a rounded tour of various emulations, sandboxing, and debugging options so that you know what is at your disposal when you need a specific kind of weapon in order to nullify the malware. Style and approach An easy to follow, hands-on guide with de*ions and screenshots that will help you execute effective malicious software investigations and conjure up solutions creatively and confidently.
Clojure for Data Science
Clojure for Data Science
Henry Garner
¥80.65
Statistics, big data, and machine learning for Clojure programmers About This Book Write code using Clojure to harness the power of your data Discover the libraries and frameworks that will help you succeed A practical guide to understanding how the Clojure programming language can be used to derive insights from data Who This Book Is For This book is aimed at developers who are already productive in Clojure but who are overwhelmed by the breadth and depth of understanding required to be effective in the field of data science. Whether you’re tasked with delivering a specific analytics project or simply suspect that you could be deriving more value from your data, this book will inspire you with the opportunities–and inform you of the risks–that exist in data of all shapes and sizes. What You Will Learn Perform hypothesis testing and understand feature selection and statistical significance to interpret your results with confidence Implement the core machine learning techniques of regression, classification, clustering and recommendation Understand the importance of the value of simple statistics and distributions in exploratory data analysis Scale algorithms to web-sized datasets efficiently using distributed programming models on Hadoop and Spark Apply suitable analytic approaches for text, graph, and time series data Interpret the terminology that you will encounter in technical papers Import libraries from other JVM languages such as Java and Scala Communicate your findings clearly and convincingly to nontechnical colleagues In Detail The term “data science” has been widely used to define this new profession that is expected to interpret vast datasets and translate them to improved decision-making and performance. Clojure is a powerful language that combines the interactivity of a *ing language with the speed of a compiled language. Together with its rich ecosystem of native libraries and an extremely simple and consistent functional approach to data manipulation, which maps closely to mathematical formula, it is an ideal, practical, and flexible language to meet a data scientist’s diverse needs. Taking you on a journey from simple summary statistics to sophisticated machine learning algorithms, this book shows how the Clojure programming language can be used to derive insights from data. Data scientists often forge a novel path, and you’ll see how to make use of Clojure’s Java interoperability capabilities to access libraries such as Mahout and Mllib for which Clojure wrappers don’t yet exist. Even seasoned Clojure developers will develop a deeper appreciation for their language’s flexibility! You’ll learn how to apply statistical thinking to your own data and use Clojure to explore, analyze, and visualize it in a technically and statistically robust way. You can also use Incanter for local data processing and ClojureScript to present interactive visualisations and understand how distributed platforms such as Hadoop sand Spark’s MapReduce and GraphX’s BSP solve the challenges of data analysis at scale, and how to explain algorithms using those programming models. Above all, by following the explanations in this book, you’ll learn not just how to be effective using the current state-of-the-art methods in data science, but why such methods work so that you can continue to be productive as the field evolves into the future. Style and approach This is a practical guide to data science that teaches theory by example through the libraries and frameworks accessible from the Clojure programming language.
PhoneGap Essentials
PhoneGap Essentials
Ivan Turkovic
¥54.49
Use PhoneGap to build cross-platform mobile applications quickly and efficiently About This Book Build native mobile phone applications with HTML5, JavaScript, and CSS Incorporate smartphone capabilities such as GPS, camera, accelerometer, and more into your apps for any mobile platform Use Cordova view to embed PhoneGap into native applications to either transit smoothly to PhoneGap or incorporate PhoneGap functionalities Who This Book Is For If you are a mobile application developer in iOS or Android, or a web application developer who wants to learn how to make cross-platform mobile applications using PhoneGap, this book is perfect for you. To make the most of this book, it will be helpful if you have prior knowledge of HTML5, CSS, and JavaScript. What You Will Learn Get to grips with the fundamentals of PhoneGap to get started Set up a development environment for Linux, Mac OS, and Windows Use Cordova CLI, workflows, and Plugman Plugin manager to create mobile applications efficiently Understand the development workflow to create native cross-platform mobile applications Embed plugin support to transition to PhoneGap or use it to enhance existing applications Improve your mobile development knowledge using object-oriented programming (OOP), reusable components, and AJAX closures Be empowered to build your own mobile apps quickly with ease Discover tips and tricks to make app development fun and easy In Detail PhoneGap is an open source framework that allows you to quickly build cross-platform mobile apps using HTML5, JavaScript, and CSS. PhoneGap Build is a cloud service that allows you to quickly develop and compile mobile applications without SDKs, compilers, and hardware. PhoneGap allows you to use its existing plugins or create new ones, as per your requirements, to enhance your mobile applications. Starting by installing PhoneGap, you’ll develop an app that uses various device capabilities through different plugins and learn how to build an app in the cloud with PhoneGap’s Build service. You’ll discover how to use PhoneGap to create an application view, along with how to use a camera, geolocation, and other device capabilities to create engaging apps. Next, you’ll augment applications with PhoneGap's plugins using minimalistic code. You’ll explore the app preparation process to deploy your app to the app store. By the end of the book, you’ll have also learned how to apply hybrid mobile UIs that will work across different platforms and different screen sizes for better user experience. Style and approach This is an example-based, fast-paced guide that covers the fundamentals of creating cross-platform mobile applications with PhoneGap.
Redis Essentials
Redis Essentials
Maxwell Dayvson Da Silva
¥71.93
Harness the power of Redis to integrate and manage your projects efficiently About This Book Learn how to use Redis's data types efficiently to manage large data sets Scale Redis to multiple servers with Twemproxy, Redis Sentinel, and Redis Cluster A fast-paced guide, full of real-world examples to help you get the best out of the features offered by Redis Who This Book Is For If you are a competent developer with experience of working with data structure servers and want to boost your project's performance by learning about features of Redis, then this book is for you. What You Will Learn Build analytics applications using Bitmaps and Hyperloglogs Enhance scalability with Twemproxy, Redis Sentinel, and Redis Cluster Build a Time Series implementation in Node.js and Redis Create your own Redis commands by extending Redis with Lua Get to know security techniques to protect your data (SSL encryption, firewall rules, basic authorization) Persist data to disk and learn the trade-offs of AOF and RDB Understand how to use Node.js, PHP, Python, and Ruby clients for Redis Avoid common pitfalls when designing your next solution In Detail Redis is the most popular in-memory key-value data store. It’s very lightweight and its data types give it an edge over the other competitors. If you need an in-memory database or a high-performance cache system that is simple to use and highly scalable, Redis is what you need. Redis Essentials is a fast-paced guide that teaches the fundamentals on data types, explains how to manage data through commands, and shares experiences from big players in the industry. We start off by explaining the basics of Redis followed by the various data types such as Strings, hashes, lists, and more. Next, Common pitfalls for various scenarios are described, followed by solutions to ensure you do not fall into common traps. After this, major differences between client implementations in PHP, Python, and Ruby are presented. Next, you will learn how to extend Redis with Lua, get to know security techniques such as basic authorization, firewall rules, and SSL encryption, and discover how to use Twemproxy, Redis Sentinel, and Redis Cluster to scale infrastructures horizontally. At the end of this book, you will be able to utilize all the essential features of Redis to optimize your project's performance. Style and approach A practical guide that offers the foundation upon which you can begin to understand the capabilities of Redis using a step-by-step approach. This book is full of real-world problems and in-depth knowledge of the concepts and features of Redis, with plenty of examples.
Apache Spark Graph Processing
Apache Spark Graph Processing
Rindra Ramamonjison
¥63.21
Build, process and analyze large-scale graph data effectively with Spark About This Book Find solutions for every stage of data processing from loading and transforming graph data to Improve the scalability of your graphs with a variety of real-world applications with complete Scala code. A concise guide to processing large-scale networks with Apache Spark. Who This Book Is For This book is for data scientists and big data developers who want to learn the processing and analyzing graph datasets at scale. Basic programming experience with Scala is assumed. Basic knowledge of Spark is assumed. What You Will Learn Write, build and deploy Spark applications with the Scala Build Tool. Build and analyze large-scale network datasets Analyze and transform graphs using RDD and graph-specific operations Implement new custom graph operations tailored to specific needs. Develop iterative and efficient graph algorithms using message aggregation and Pregel abstraction Extract subgraphs and use it to discover common clusters Analyze graph data and solve various data science problems using real-world datasets. In Detail Apache Spark is the next standard of open-source cluster-computing engine for processing big data. Many practical computing problems concern large graphs, like the Web graph and various social networks. The scale of these graphs - in some cases billions of vertices, trillions of edges - poses challenges to their efficient processing. Apache Spark GraphX API combines the advantages of both data-parallel and graph-parallel systems by efficiently expressing graph computation within the Spark data-parallel framework. This book will teach the user to do graphical programming in Apache Spark, apart from an explanation of the entire process of graphical data analysis. You will journey through the creation of graphs, its uses, its exploration and analysis and finally will also cover the conversion of graph elements into graph structures. This book begins with an introduction of the Spark system, its libraries and the Scala Build Tool. Using a hands-on approach, this book will quickly teach you how to install and leverage Spark interactively on the command line and in a standalone Scala program. Then, it presents all the methods for building Spark graphs using illustrative network datasets. Next, it will walk you through the process of exploring, visualizing and analyzing different network characteristics. This book will also teach you how to transform raw datasets into a usable form. In addition, you will learn powerful operations that can be used to transform graph elements and graph structures. Furthermore, this book also teaches how to create custom graph operations that are tailored for specific needs with efficiency in mind. The later chapters of this book cover more advanced topics such as clustering graphs, implementing graph-parallel iterative algorithms and learning methods from graph data. Style and approach A step-by-step guide that will walk you through the key ideas and techniques for processing big graph data at scale, with practical examples that will ensure an overall understanding of the concepts of Spark.
Python Machine Learning
Python Machine Learning
Sebastian Raschka
¥80.65
Unlock deeper insights into Machine Leaning with this vital guide to cutting-edge predictive analytics About This Book Leverage Python’s most powerful open-source libraries for deep learning, data wrangling, and data visualization Learn effective strategies and best practices to improve and optimize machine learning systems and algorithms Ask – and answer – tough questions of your data with robust statistical models, built for a range of datasets Who This Book Is For If you want to find out how to use Python to start answering critical questions of your data, pick up Python Machine Learning – whether you want to get started from scratch or want to extend your data science knowledge, this is an essential and unmissable resource. What You Will Learn Explore how to use different machine learning models to ask different questions of your data Learn how to build neural networks using Keras and Theano Find out how to write clean and elegant Python code that will optimize the strength of your algorithms Discover how to embed your machine learning model in a web application for increased accessibility Predict continuous target outcomes using regression analysis Uncover hidden patterns and structures in data with clustering Organize data using effective pre-processing techniques Get to grips with sentiment analysis to delve deeper into textual and social media data In Detail Machine learning and predictive analytics are transforming the way businesses and other organizations operate. Being able to understand trends and patterns in complex data is critical to success, becoming one of the key strategies for unlocking growth in a challenging contemporary marketplace. Python can help you deliver key insights into your data – its unique capabilities as a language let you build sophisticated algorithms and statistical models that can reveal new perspectives and answer key questions that are vital for success. Python Machine Learning gives you access to the world of predictive analytics and demonstrates why Python is one of the world’s leading data science languages. If you want to ask better questions of data, or need to improve and extend the capabilities of your machine learning systems, this practical data science book is invaluable. Covering a wide range of powerful Python libraries, including scikit-learn, Theano, and Keras, and featuring guidance and tips on everything from sentiment analysis to neural networks, you’ll soon be able to answer some of the most important questions facing you and your organization. Style and approach Python Machine Learning connects the fundamental theoretical principles behind machine learning to their practical application in a way that focuses you on asking and answering the right questions. It walks you through the key elements of Python and its powerful machine learning libraries, while demonstrating how to get to grips with a range of statistical models.
DynamoDB Cookbook
DynamoDB Cookbook
Tanmay Deshpande
¥63.21
Over 90 hands-on recipes to design Internet scalable web and mobile applications with Amazon DynamoDB About This Book Construct top-notch mobile and web applications with the Internet scalable NoSQL database and host it on cloud Integrate your applications with other AWS services like AWS EMR, AWS S3, AWS Redshift, and AWS CloudSearch etc. in order to achieve a one-stop application stack Step-by-step implementation guide that provides real-world use with hands-on recipes Who This Book Is For This book is intended for those who have a basic understanding of AWS services and want to take their knowledge to the next level by getting their hands dirty with coding recipes in DynamoDB. What You Will Learn Design DynamoDB tables to achieve high read and write throughput Discover best practices like caching, exponential back-offs and auto-retries, storing large items in AWS S3, storing compressed data etc. Effectively use DynamoDB Local in order to make your development smooth and cost effective Implement cost effective best practices to reduce the burden of DynamoDB charges Create and maintain secondary indexes to support improved data access Integrate various other AWS services like AWS EMR, AWS CloudSearch, AWS Pipeline etc. with DynamoDB In Detail AWS DynamoDB is an excellent example of a production-ready NoSQL database. In recent years, DynamoDB has been able to attract many customers because of its features like high-availability, reliability and infinite scalability. DynamoDB can be easily integrated with massive data crunching tools like Hadoop /EMR, which is an essential part of this data-driven world and hence it is widely accepted. The cost and time-efficient design makes DynamoDB stand out amongst its peers. The design of DynamoDB is so neat and clean that it has inspired many NoSQL databases to simply follow it. This book will get your hands on some engineering best practices DynamoDB engineers use, which can be used in your day-to-day life to build robust and scalable applications. You will start by operating with DynamoDB tables and learn to manipulate items and manage indexes. You will also discover how to easily integrate applications with other AWS services like EMR, S3, CloudSearch, RedShift etc. A couple of chapters talk in detail about how to use DynamoDB as a backend database and hosting it on AWS ElasticBean. This book will also focus on security measures of DynamoDB as well by providing techniques on data encryption, masking etc. By the end of the book you’ll be adroit in designing web and mobile applications using DynamoDB and host it on cloud. Style and approach An easy-to-follow guide, full of real-world examples, which takes you through the world of DynamoDB following a step-by-step, problem-solution based approach.