Last Uploaded Books

CoverTitleYear
80 hands-on recipes to efficiently work with the Docker 1.6 environment on Linux
About This Book Provides practical techniques and knowledge of various emerging and developing APIs to help you create scalable services Create, manage, and automate production-quality services while dealing with inherent issues. Each recipe is carefully organized with instructions to complete the task more » efficiently Who This Book Is For Docker Cookbook is for developers, system administrators, and DevOps engineers who want to use Docker in his/her development, QA, or production environments. It is expected that the reader has basic Linux/Unix skills such as installing packages, editing files, managing services, and so on. Any experience in virtualization technologies such as KVM, XEN, and VMware will help the reader to relate with container technologies better, but it is not required. What You Will Learn Install and set up Docker on different environments Work with Docker images and containers to Dockerize applications Create services with Docker to enable the swift development and deployment of applications Make optimum use of Docker in a testing environment do complete CI/CD Plan efficient working with Docker APIs, orchestration, and hosting platform such as Project Atomic Learn the various use cases available for Docker Troubleshoot, maintain, and optimize your Docker services effectively In Detail Docker is a Linux container engine that allows you to create consistent, stable, and production-quality environments with containers. You will start by installing Docker and understanding and working with containers and images. You then proceed to learn about network and data management for containers. The book explores the RESTful APIs provided by Docker to perform different actions such as image/container operations. Finally, the book explores logs and troubleshooting Docker to solve issues and bottlenecks. This book will also help you « less
2015
Master the best practices of Git with the help of real-time scenarios to maximize team efficiency and workflow
ABOUT THIS BOOK * Work with a versioning tool for continuous integration using Git * Learn how to make the best use of Git's features * Comprehensible guidelines with useful tricks and tips for effectively using Git for collaborative and Agile development WHO THIS BOOK IS FOR If you are a developer more » and you want to completely master Git without heavy theory, this is the book for you. A reasonable knowledge level and basic understanding of Git concepts will get you started with this book. WHAT YOU WILL LEARN * Create a Git repository and learn how to push your code to the repository * Discover the easiest Git commands to use and manage your repository * Learn how to find and resolve conflicts and mistakes * Explore Git with your team members using commands such as clone, pull, and branch * Set up Git for Continuous Integration to improve workflow * Understand tag commits for mapping the application version * An introduction to repository management and other Git tools IN DETAIL Git is a powerful versioning system. It is fast and logical, and helps developers to work with a team efficiently. The command set and learning curve of Git are pretty similar to and even better than any other SCM, and therefore it is comparatively easier to learn. Starting with the basic Git commands, this book will take you on a journey to explore all the features of Git and provide you with a way to integrate Git in a team to set up Agile methods and Continuous Integration. The book covers how to create and manage a repository on Git before moving on to explain the best practices to work with other developers as a team. It provides descriptions of Git's features, such as applying patch, using submodules, migrating from SVN, hooks, and cherry pick. This book is invaluable to anyone who wants a thorough reference guide to go back to every time they have questions about any feature of Git. « less
2014
Become an expert in Bayesian Machine Learning methods using R and apply them to solve real-world big data problems
ABOUT THIS BOOK * Understand the principles of Bayesian Inference with less mathematical equations * Learn state-of-the art Machine Learning methods * Familiarize yourself with the recent advances in Deep Learning and Big Data frameworks with this step-by-step guide WHO THIS BOOK IS FOR This book more » is for statisticians, analysts, and data scientists who want to build a Bayes-based system with R and implement it in their day-to-day models and projects. It is mainly intended for Data Scientists and Software Engineers who are involved in the development of Advanced Analytics applications. To understand this book, it would be useful if you have basic knowledge of probability theory and analytics and some familiarity with the programming language R. WHAT YOU WILL LEARN * Set up the R environment * Create a classification model to predict and explore discrete variables * Get acquainted with Probability Theory to analyze random events * Build Linear Regression models * Use Bayesian networks to infer the probability distribution of decision variables in a problem * Model a problem using Bayesian Linear Regression approach with the R package BLR * Use Bayesian Logistic Regression model to classify numerical data * Perform Bayesian Inference on massively large data sets using the MapReduce programs in R and Cloud computing IN DETAIL Bayesian Inference provides a unified framework to deal with all sorts of uncertainties when learning patterns form data using machine learning models and use it for predicting future observations. However, learning and implementing Bayesian models is not easy for data science practitioners due to the level of mathematical treatment involved. Also, applying Bayesian methods to real-world problems requires high computational resources. With the recent advances in computation and several open sources packages available in R, Bayesian modeling has become more feasible to use for practical applications today. Therefore, it would be advantageous for all data scientists and engineers to understand Bayesian methods and apply them in their projects to achieve better results. Learning Bayesian Models with R starts by giving you a comprehensive coverage of the Bayesian Machine Learning models and the R packages that implement them. It begins with an introduction to the fundamentals of probability theory and R programming for those who are new to the subject. Then the book covers some of the important machine learning methods, both supervised and unsupervised learning, implemented using Bayesian Inference and R. Every chapter begins with a theoretical description of the method explained in a very simple manner. Then, relevant R packages are discussed and some illustrations using data sets from the UCI Machine Learning repository are given. Each chapter ends with some simple exercises for you to get hands-on experience of the concepts and R packages discussed in the chapter. The last chapters are devoted to the latest development in the field, specifically Deep Learning, which uses a class of Neural Network models that are currently at the frontier of Artificial Intelligence. The book concludes with the application of Bayesian methods on Big Data using the Hadoop and Spark frameworks. STYLE AND APPROACH The book first gives you a theoretical description of the Bayesian models in simple language, followed by details of its implementation in the R package. Each chapter has illustrations for the use of Bayesian model and the corresponding R package, using data sets from the UCI Machine Learning repository. Each chapter also contains sufficient exercises for you to get more hands-on practice. « less
2015
Create robust and maintainable Java applications using the functional style of programming
ABOUT THIS BOOK * Explore how you can blend object-oriented and functional programming styles in Java * Use lambda expressions to write flexible and succinct code * A tutorial that strengthens your fundamentals in functional programming techniques to enhance your applications WHO THIS BOOK IS FOR If more » you are a Java developer with object-oriented experience and want to use a functional programming approach in your applications, then this book is for you. All you need to get started is familiarity with basic Java object-oriented programming concepts. WHAT YOU WILL LEARN * Use lambda expressions to simplyfy code * Use function composition to achieve code fluency * Apply streams to simply implementations and achieve parallelism * Incorporate recursion to support an application's functionality * Provide more robust implementations using Optionals * Implement design patterns with less code * Refactor object-oriented code to create a functional solution * Use debugging and testing techniques specific to functional programs IN DETAIL Functional programming is an increasingly popular technology that allows you to simplify many tasks that are often cumbersome and awkward using an object-oriented approach. It is important to understand this approach and know how and when to apply it. Functional programming requires a different mindset, but once mastered it can be very rewarding. This book simplifies the learning process as a problem is described followed by its implementation using an object-oriented approach and then a solution is provided using appropriate functional programming techniques. Writing succinct and maintainable code is facilitated by many functional programming techniques including lambda expressions and streams. In this book, you will see numerous examples of how these techniques can be applied starting with an introduction to lambda expressions. Next, you will see how they can replace older approaches and be combined to achieve surprisingly elegant solutions to problems. This is followed by the investigation of related concepts such as the Optional class and monads, which offer an additional approach to handle problems. Design patterns have been instrumental in solving common problems. You will learn how these are enhanced with functional techniques. To transition from an object-oriented approach to a functional one, it is useful to have IDE support. IDE tools to refactor, debug, and test functional programs are demonstrated through the chapters. The end of the book brings together many of these functional programming techniques to create a more comprehensive application. You will find this book a very useful resource to learn and apply functional programming techniques in Java. STYLE AND APPROACH In this tutorial, each chapter starts with an introduction to the terms and concepts covered in that chapter. It quickly progresses to contrast an object-oriented approach with a functional approach using numerous code examples. « less
2015
Unlock your creative programming potential by creating web technologies, image processing, electronics- and robotics-based projects using the Raspberry Pi
ABOUT THIS BOOK * Learn how to create games, web, and desktop applications using the best features of the Raspberry Pi * Discover the powerful development tools that allow you to cross-compile your software and build your own Linux distribution for maximum performance * Step-by-step tutorials show more » you how to quickly develop real-world applications using the Raspberry Pi WHO THIS BOOK IS FOR If you have a passion for technology and want to explore the world of Raspberry Pi, then this book provides you with all the tools and information you are looking for. Although being familiar with basic programming concepts is useful, you can still learn a lot from this book as a wide variety of topics are covered. WHAT YOU WILL LEARN * Get to grips with the basics of Linux administration, along with the inner workings of Linux distributions * Develop a web interface that can be used to upload selected files and create playlists * Discover how to connect your Raspberry Pi to the real world using analog inputs * Build your own remote-controlled robot * Get to know about different image processing operations * Explore troubleshooting tips and tricks * Create your own Twitter-enabled Raspberry Pi camera IN DETAIL Raspberry Pi is one of the most popular development boards and a staple tool among developers because of its low cost and flexibility. Learning Raspberry Pi is a practical tutorial, providing you with the skills required to design and build your own projects. By working through the examples and projects in the book, you will build up your knowledge of software and hardware development and be able to create projects of your own. This book contains a set of tutorials and examples for commonly used technologies, accompanied by practical projects that bring the topics together. Each individual project that you become involved with allows you to develop an important set of skills, building up your confidence to tackle more advanced applications of your own. « less
2015
KEY FEATURES * Extract data from any source to perform real time analytics. * Full of techniques and examples to help you crawl websites and extract data within hours. * A hands-on guide to web scraping and crawling with real-life problems and solutions BOOK DESCRIPTION This book covers the long more » awaited Scrapy v 1.0 that empowers you to extract useful data from virtually any source with very little effort. It starts off by explaining the fundamentals of Scrapy framework, followed by a thorough description of how to extract data from any source, clean it up, shape it as per your requirement using Python and 3rd party APIs. Next you will be familiarised with the process of storing the scrapped data in databases as well as search engines and performing real time analytics on them with Spark Streaming. By the end of this book, you will perfect the art of scarping data for your applications with ease WHAT YOU WILL LEARN * Understand HTML pages and write XPath to extract the data you need * Write Scrapy spiders with simple Python and do web crawls * Push your data into any database, search engine or analytics system * Configure your spider to download files, images and use proxies * Create efficient pipelines that shape data in precisely the form you want * Use Twisted Asynchronous API to process hundreds of items concurrently * Make your crawler super-fast by learning how to tune Scrapy's performance * Perform large scale distributed crawls with scrapyd and scrapinghub ABOUT THE AUTHOR Dimitrios Kouzis-Loukas has over fifteen years experience as a topnotch software developer. He uses his acquired knowledge and expertise to teach a wide range of audiences how to write great software, as well. He studied and mastered several disciplines, including mathematics, physics, and microelectronics. His thorough understanding of these subjects helped him raise his standards beyond the scope of "pragmatic solutions." He knows that true solutions should be as certain as the laws of physics, as robust as ECC memories, and as universal as mathematics. Dimitrios now develops distributed, low-latency, highly-availability systems using the latest datacenter technologies. He is language agnostic, yet has a slight preference for Python, C++, and Java. A firm believer in open source software and hardware, he hopes that his contributions will benefit individual communities as well as all of humanity. TABLE OF CONTENTS 1. Introducing Scrapy 2. Understanding HTML and XPath 3. Basic Crawling 4. From Scrapy to a Mobile App 5. Quick Spider Recipes 6. Deploying to Scrapinghub 7. Configuration and Management 8. Programming Scrapy 9. Pipeline Recipes 10. Understanding Scrapy's Performance 11. Distributed Crawling with Scrapyd and Real-Time Analytics 12. Installing and troubleshooting prerequisite software « less
2016
WANT TO LEARN JAVA? Then,Murach's Beginning Java with Eclipse is for you! Its goal is to ease the steep learning curve and it uses the Eclipse IDE to make you productive as quickly as possible. In fact, you'll grow from beginner to entry-level professional! Here's how: * Section 1 guides you through more » the core concepts and coding you need to create simple object-oriented applications. By the end of this section, you'll be using Eclipse to code, test, and debug 3-tier Java applications that use classes from the java SE 8 API as well as your own classes. * Then, sections 2, 3, and 4 let you build out your core Java and OOP skills. Here, you'll find chapters that expand on skills that were presented in section 1 or that teach you new skills. That includes working with features that are new in Java 8, like lambda expressions and the new date/time API. * At that point, you'll have all the Java prerequisites you need to start learning web or Android programming. Or, you can go on to section 5 to start developing desktop applications for business with a Swing interface and a MySQL database. Along the way, the sample applications will show you how to apply your skills in the real world. And the chapter exercises will give you valuable hands-on experience programming (the solutions to these exercises are posted at our website, so you can check your work). « less
2015
Harness the power of Magento 2 – The most recent version of the world's favourite e-Commerce platform for your online store ABOUT THIS BOOK * Set up, configure, and power up your Magento environment from development to production * Master the use of Web API to communicate with the Magento system more » and create custom services * Create custom modules from scratch to extend the core functionality of the Magento system WHO THIS BOOK IS FOR This book is intended primarily for intermediate to professional-level PHP developers who are interested in Magento development. For backend developers, several topics are covered that will enable you to modify and extend your Magento 2 store. Frontend developers will also find some coverage on how to customize the look of the site in the frontend. WHAT YOU WILL LEARN * Set up the development and production environment of Magento 2 * Understand the new major concepts and conventions used in Magento 2 * Build a miniature yet fully-functional module from scratch to manage your e-commerce platform efficiently * Write models and collections to manage and search your entity data * Dive into backend development such as creating events, observers, cron jobs, logging, profiling, and messaging features * Get to the core of frontend development such as blocks, templates, layouts, and the themes of Magento 2 * Use token, session, and Oauth token-based authentication via various flavors of API calls, as well as creating your own APIs * Get to grips with testing Magento modules and custom themes, which forms an integral part of development IN DETAIL Magento is one of the most exciting, flexible, and customizable e-commerce systems. It offers you an extensive suite of powerful tools for creating and managing an online store. After years of development, Magento 2 introduces itself with a strong emphasis on modularity, Web API's, automated testing and overall new technology stack platform. The long-awaited Magento 2 release introduces a whole new e-commerce platform to develop online stores. The all new Magento 2 architecture, Web APIs, and a host of other features are equally challenging to master as much as they are exciting to use. This book will ease the learning curve by offering step-by-step guidance on how to extend the core functionality of your Magento 2 store. This book is your one-stop guide to build and customize a quality e-commerce website from the latest version of one of the largest, fastest growing, and most popular e-commerce platforms—Magento 2. We start off with an introduction to the fundamental concepts of Magento to give you a foundation to work from. We then move on to configure the development and basic production environment for Magento. After this, you'll get to grips with the major concepts and conventions that are new to the Magento 2 platform. We then delve deeper to get to the core of automated deployments, persisting data, writing data fixture scripts and applying various backend and frontend modifications. As we near the end of the book, you will learn to make API calls and write automated tests. Finally, you will be guided through building a full-blown helpdesk module from scratch. By the end of this book, you will have learned a wide range of techniques to extend and customize your Magento 2 store to fit the requirements of your business. STYLE AND APPROACH This book is a mix of theoretical and step-by-step approaches, explained in a conversational and easy-to-follow style. Topics are explained sequentially, giving detailed explanations of the basic and advanced features to get you working on Magneto 2. « less
2015
This book makes use of the LISP programming language to provide readers with the necessary background to understand and use fuzzy logic to solve simple to medium-complexity real-world problems. It introduces the basics of LISP required to use a Fuzzy LISP programming toolbox, which was specifically implemented more » by the author to “teach” the theory behind fuzzy logic and at the same time equip readers to use their newly-acquired knowledge to build fuzzy models of increasing complexity. The book fills an important gap in the literature, providing readers with a practice-oriented reference guide to fuzzy logic that offers more complexity than popular books yet is more accessible than other mathematical treatises on the topic. As such, students in first-year university courses with a basic tertiary mathematical background and no previous experience with programming should be able to easily follow the content. The book is intended for students and professionals in the fields of computer science and engineering, as well as disciplines including astronomy, biology, medicine and earth sciences. Software developers may also benefit from this book, which is intended as both an introductory textbook and self-study reference guide to fuzzy logic and its applications. The complete set of functions that make up the Fuzzy LISP programming toolbox can be downloaded from a companion book’s website. « less
2015
KEY FEATURES * Set up the PHP environment and get started with web programming * Leverage the potential of PHP for server-side programming, memory management, and object-oriented programming (OOP) * This book is packed with real-life examples to help you implement the concepts as you learn BOOK more » DESCRIPTION PHP is a great language for building web applications. It is essentially a server-side scripting language that is also used for general purpose programming. PHP 7 is the latest version with a host of new features, and it provides major backwards-compatibility breaks. This book begins with the fundamentals of PHP programming by covering the basic concepts such as variables, functions, class, and objects. You will set up PHP server on your machine and learn to read and write procedural PHP code. After getting an understanding of OOP as a paradigm, you will execute MySQL queries on your database. Moving on, you will find out how to use MVC to create applications from scratch and add tests. Then, you will build REST APIs and perform behavioral tests on your applications. By the end of the book, you will have the skills required to read and write files, debug, test, and work with MySQL. WHAT YOU WILL LEARN * Set up a server on your machine with PHP * Use PHP syntax with the built-in server to create apps * Apply the OOP paradigm to PHP to write richer code * Use MySQL to manage data in your web applications * Create a web application from scratch using MVC * Add tests to your web application and write testable code * Use an existing PHP framework to build and manage your applications * Build REST APIs for your PHP applications * Test the behavior of web applications with Behat ABOUT THE AUTHOR Antonio Lopez is a software engineer with more than 7 years of experience. He has worked with PHP since university, which was 10 years ago, building small personal projects. Later, Antonio started his journey around Europe, working in Barcelona, London, Dublin, and back in Barcelona. He has worked in a number of different areas, from web applications to REST APIs and internal tools. Antonio likes to spend his spare time on personal projects and start-ups and has a strong vocation in education and teaching. TABLE OF CONTENTS 1. Setting Up the Environment 2. Web Applications with PHP 3. Understanding PHP Basics 4. Creating Clean Code with OOP 5. Using Databases 6. Adapting to MVC 7. Testing Web Applications 8. Using Existing PHP Frameworks 9. Building REST APIs 10. Behavioral Testing « less
2016