QGIS Blueprints
¥90.46
Develop analytical location-based web applications with QGIS About This Book Tame geographic information workflows with QGIS blueprints for smart web applications Create geographic web applications using QGIS and free/open source software Blueprints provide real-world applications covering many use cases Who This Book Is For This book encompasses relatively experienced GIS developers who have a strong grounding in the fundamentals of GIS development. They will have used QGIS before, but are looking to understand how to develop more complex, layered map applications that expose various data sets, utilize different visualizations, and are consumable (usable) by end users What You Will Learn Review geographic information principles and the application of these principles in the QGIS free/open source ecosystem Perform advanced analysis with site selection, hydrologic, and topological networks Build performant web applications by tile caching and generating static assets Provide collaborative editing capabilities for your team or community Develop custom and dynamic analysis and visualization capabilities Select the best components from desktop and web, for your use case Integrate it with social media and crowdsourcing In Detail QGIS, the world’s most popular free/open source desktop geographic information system software, enables a wide variety of use cases involving location – previously only available through expensive specialized commercial software. However, designing and executing a multi-tiered project from scratch on this complex ecosystem remains a significant challenge. This book starts with a primer on QGIS and closely related data, software, and systems. We’ll guide you through six use-case blueprints for geographic web applications. Each blueprint boils down a complex workflow into steps you can follow to reduce time lost to trial and error. By the end of this book readers should be able to build complex layered applications that visualize multiple data sets, employing different types of visualization, and give end users the ability to interact with and manipulate this data for the purpose of analysis. Style and approach This is a comprehensive guide to the application of QGIS and free/open source software in creating web applications from analysis. Step-by-step blueprints guide the reader through analytical and web development topics and designs.
Groovy for Domain-specific Languages - Second Edition
¥90.46
Extend and enhance your Java applications with domain-specific *ing in Groovy About This Book Build domain-specific mini languages in Groovy that integrate seamlessly with your Java apps with this hands-on guide Increase stakeholder participation in the development process with domain-specific *ing in Groovy Get up to speed with the newest features in Groovy using this second edition and integrate Groovy-based DSLs into your existing Java applications. Who This Book Is For This book is for Java software developers who have an interest in building domain *ing into their Java applications. No knowledge of Groovy is required, although it will be helpful. This book does not teach Groovy, but quickly introduces the basic ideas of Groovy. An experienced Java developer should have no problems with these and move quickly on to the more involved aspects of creating DSLs with Groovy. No experience of creating a DSL is required. What You Will Learn Familiarize yourself with Groovy *ing and work with Groovy closures Use the meta-programming features in Groovy to build mini languages Employ Groovy mark-up and builders to simplify application development Familiarize yourself with Groovy mark-up and build your own Groovy builders Build effective DSLs with operator overloading, command chains, builders, and a host of other Groovy language features Integrate Groovy with your Java and JVM based applications In Detail The times when developing on the JVM meant you were a Java programmer have long passed. The JVM is now firmly established as a polyglot development environment with many projects opting for alternative development languages to Java such as Groovy, Scala, Clojure, and JRuby. In this pantheon of development languages, Groovy stands out for its excellent DSL enabling features which allows it to be manipulated to produce mini languages that are tailored to a project’s needs. A comprehensive tutorial on designing and developing mini Groovy based Domain Specific Languages, this book will guide you through the development of several mini DSLs that will help you gain all the skills needed to develop your own Groovy based DSLs with confidence and ease. Starting with the bare basics, this book will focus on how Groovy can be used to construct domain specific mini languages, and will go through the more complex meta-programming features of Groovy, including using the Abstract Syntax Tree (AST). Practical examples are used throughout this book to de-mystify these seemingly complex language features and to show how they can be used to create simple and elegant DSLs. Packed with examples, including several fully worked DSLs, this book will serve as a springboard for developing your own DSLs. Style and approach This book is a hands-on guide that will walk you through examples for building DSLs with Groovy rather than just talking about "metaprogramming with Groovy". The examples in this book have been designed to help you gain a good working knowledge of the techniques involved and apply these to producing your own Groovy based DSLs.
CentOS 7 Linux Server Cookbook - Second Edition
¥90.46
Over 80 recipes to get up and running with CentOS 7 Linux serverAbout This BookA practical guide to install, configure, administer and maintain CentOS 7 serversAn in-depth guide to the CentOS 7 operating system, exploring its various new features and changes in server administrationPresents tricks and solutions to tackle common server issues with the help of practical examples and real-life scenariosWho This Book Is ForThis book is targeted at beginner and more experienced system administrators alike who want to use CentOS as their server solution. Readers do not need much pre-knowledge or experience at all to work with this book.What You Will LearnInstall and configure CentOS 7 Linux server system from scratch using normal and advanced methodsMaintain a performance-based and secure server solution by deploying expert configuration advice and managing software packagesMonitor, manage and develop your server's file system to maintain a stable performanceGain best practice methods on sharing files and resources through a networkInstall and configure common standard services such as web, mail, FTP, database and domain name server technologiesIntroduce you to the world of operating-system-level virtualization using the Docker platform.Understand the fundamentals of the Security-Enhanced Linux access control architectureMonitor your IT infrastructure using NagiosIn DetailThis book will provide you with a comprehensive series of starting points that will give you direct access to the inner workings of the latest CentOS version 7 and help you trim the learning curve to master your server.You will begin with the installation and basic configuration of CentOS 7, followed by learning how to manage your system, services and software packages. You will then gain an understanding of how to administer the file system, secure access to your server and configure various resource sharing services such as file, printer and DHCP servers across your network. Further on, we cover advanced topics such as FTP services, building your own DNS server, running database servers, and providing mail and web services. Finally, you will get a deep understanding of SELinux and you will learn how to work with Docker operating-system virtualization and how to monitor your IT infrastructure with Nagios.By the end of this book, you will have a fair understanding of all the aspects of configuring, implementing and administering CentOS 7 Linux server and how to put it in control.Style and approachThis book is a practical reference guide with hands-on examples and solutions to real-world administration problems. It covers in-depth and comprehensive information on CentOS 7 and its new features.
Nagios Core Administration Cookbook - Second Edition
¥90.46
Over 90 hands-on recipes that will employ Nagios Core as the anchor of monitoring on your networkAbout This BookMaster the advanced configuration techniques of Nagios Core to model your network better by improving hosts, services, and contactsFilter and improve the notifications that Nagios Core sends in response to failed checks, which can greatly assist you when diagnosing problemsPull Nagios Core's data into a database to write clever custom reports of your own deviseWho This Book Is ForIf you are a network or system administrator and are looking for instructions and examples on working with Nagios Core, then this book is for you. Some basic shell command-line experience is required, and some knowledge of *ing would be helpful when we discuss how plugins work.What You Will LearnManage the configuration of Nagios Core with advanced techniques to achieve fine detail in your checksFind, install, and even write your own check pluginsFilter notifications to send them to the right people or programs at the right timeWork around difficult network accessibility issues and delegate checks to other machinesTweak a Nagios Core server to achieve both high performance and redundancy in case of disasterProcess the results of checks performed by other machines to monitor backups and similar processesExtend Nagios Core to allow advanced *ing, reporting, and network visualization behaviorIn DetailNagios Core is an open source monitoring framework suitable for any network that ensures both internal and customer-facing services are running correctly and manages notification and reporting behavior to diagnose and fix outages promptly. It allows very fine configuration of exactly when, where, what, and how to check network services to meet both the uptime goals of your network and systems team and the needs of your users.This book shows system and network administrators how to use Nagios Core to its fullest as a monitoring framework for checks on any kind of network services, from the smallest home network to much larger production multi-site services. You will discover that Nagios Core is capable of doing much more than pinging a host or to see whether websites respond.The recipes in this book will demonstrate how to leverage Nagios Core's advanced configuration, *ing hooks, reports, data retrieval, and extensibility to integrate it with your existing systems, and to make it the rock-solid center of your network monitoring world.Style and approachEach chapter contains a set of step-by-step recipes to perform an example of a commonly performed task related to network administration. The book begins by focusing closely on the properties and configuration of Nagios Core itself, and gradually moves on to other pieces of software that can support, manage, and extend the system.
Moodle 3 Administration - Third Edition
¥90.46
An administrator’s guide to configuring, securing, customizing, and extending MoodleAbout This BookLearn how to plan, install, optimize, customize, and configure MoodleGuarantee a cutting-edge learning experience in a secure and customizable environment while optimizing your day-to-day workloadA one-stop guide with a problem-solution approach and a wide range of real-world examplesWho This Book Is ForIf you are a technician, systems administrator, or part of academic staff, this is the book for you. This book is ideal for anyone who has to administer a Moodle system. Whether you are dealing with a small-scale local Moodle system or a large-scale multi-site Virtual Learning Environment, this book will assist you with any administrative task. Some basic Moodle knowledge is helpful, but not essential.What You Will LearnInstall and update Moodle on multiple platforms manually and via CLI and GITManage courses and categories, users and cohorts, as well as rolesGet Moodle hooked up to repositories, portfolios, and open badgesConfigure Moodle for mobile usage, accessibility, localization, communication, and collaborationGuarantee backups, security and privacy, and achieve maximum performance via the Moodle Universal Cache and the new cron systemConfigure the Moodle events system to generate comprehensive reports, statistics, and learning analyticsNetwork Moodle with Mahara and extend it with third-party add-ons and via LTICustomize Moodle web services to enable mobile learning and integration with other IT systemsIn DetailMoodle is the de facto standard for open source learning platforms. However, setting up and managing a learning environment can be a complex task since it covers a wide range of technical, organizational, and pedagogical topics. This ranges from basic user and course management, to configuring plugins and design elements, all the way to system settings, performance optimization, events frameworks, and so on.This book concentrates on basic tasks such as how to set up and configure Moodle and how to perform day-to-day administration activities, and progresses on to more advanced topics that show you how to customize and extend Moodle, manage courses, cohorts, and users, and how to work with roles and capabilities. You’ll learn to configure Moodle plugins and ensure your VLE conforms to pedagogical and technical requirements in your organization. You’ll then learn how to integrate the VLE via web services and network it with other sites, including Mahara, and extend your system via plugins and LTI. By the end of this book, you will be able to set up an efficient, fully fledged, and secure Moodle system.Style and approachThe book takes a problem-solution approach to fall in line with your day-to-day operations. This is a one-stop reference for any task you will ever come across when administering a Moodle site of any shape and size.
Kali Linux Web Penetration Testing Cookbook
¥90.46
Over 80 recipes on how to identify, exploit, and test web application security with Kali Linux 2About This BookFamiliarize yourself with the most common web vulnerabilities a web application faces, and understand how attackers take advantage of themSet up a penetration testing lab to conduct a preliminary assessment of attack surfaces and run exploitsLearn how to prevent vulnerabilities in web applications before an attacker can make the most of itWho This Book Is ForThis book is for IT professionals, web developers, security enthusiasts, and security professionals who want an accessible reference on how to find, exploit, and prevent security vulnerabilities in web applications. You should know the basics of operating a Linux environment and have some exposure to security technologies and tools.What You Will LearnSet up a penetration testing laboratory in a secure wayFind out what information is useful to gather when performing penetration tests and where to look for itUse crawlers and spiders to investigate an entire website in minutesDiscover security vulnerabilities in web applications in the web browser and using command-line toolsImprove your testing efficiency with the use of automated vulnerability scannersExploit vulnerabilities that require a complex setup, run custom-made exploits, and prepare for extraordinary scenariosSet up Man in the Middle attacks and use them to identify and exploit security flaws within the communication between users and the web serverCreate a malicious site that will find and exploit vulnerabilities in the user's web browserRepair the most common web vulnerabilities and understand how to prevent them becoming a threat to a site's securityIn DetailWeb applications are a huge point of attack for malicious hackers and a critical area for security professionals and penetration testers to lock down and secure. Kali Linux is a Linux-based penetration testing platform and operating system that provides a huge array of testing tools, many of which can be used specifically to execute web penetration testing.This book will teach you, in the form step-by-step recipes, how to detect a wide array of vulnerabilities, exploit them to analyze their consequences, and ultimately buffer attackable surfaces so applications are more secure, for you and your users.Starting from the setup of a testing laboratory, this book will give you the skills you need to cover every stage of a penetration test: from gathering information about the system and the application to identifying vulnerabilities through manual testing and the use of vulnerability scanners to both basic and advanced exploitation techniques that may lead to a full system compromise. Finally, we will put this into the context of OWASP and the top 10 web application vulnerabilities you are most likely to encounter, equipping you with the ability to combat them effectively. By the end of the book, you will have the required skills to identify, exploit, and prevent web application vulnerabilities.Style and approachTaking a recipe-based approach to web security, this book has been designed to cover each stage of a penetration test, with de*ions on how tools work and why certain programming or configuration practices can become security vulnerabilities that may put a whole system, or network, at risk. Each topic is presented as a sequence of tasks and contains a proper explanation of why each task is performed and what it accomplishes.
Mobile Application Penetration Testing
¥90.46
Explore real-world threat scenarios, attacks on mobile applications, and ways to counter them About This Book Gain insights into the current threat landscape of mobile applications in particular Explore the different options that are available on mobile platforms and prevent circumventions made by attackers This is a step-by-step guide to setting up your own mobile penetration testing environment Who This Book Is For If you are a mobile application evangelist, mobile application developer, information security practitioner, penetration tester on infrastructure web applications, an application security professional, or someone who wants to learn mobile application security as a career, then this book is for you. This book will provide you with all the skills you need to get started with Android and iOS pen-testing. What You Will Learn Gain an in-depth understanding of Android and iOS architecture and the latest changes Discover how to work with different tool suites to assess any application Develop different strategies and techniques to connect to a mobile device Create a foundation for mobile application security principles Grasp techniques to attack different components of an Android device and the different functionalities of an iOS device Get to know secure development strategies for both iOS and Android applications Gain an understanding of threat modeling mobile applications Get an in-depth understanding of both Android and iOS implementation vulnerabilities and how to provide counter-measures while developing a mobile app In Detail Mobile security has come a long way over the last few years. It has transitioned from "should it be done?" to "it must be done!"Alongside the growing number of devises and applications, there is also a growth in the volume of Personally identifiable information (PII), Financial Data, and much more. This data needs to be secured. This is why Pen-testing is so important to modern application developers. You need to know how to secure user data, and find vulnerabilities and loopholes in your application that might lead to security breaches. This book gives you the necessary skills to security test your mobile applications as a beginner, developer, or security practitioner. You'll start by discovering the internal components of an Android and an iOS application. Moving ahead, you'll understand the inter-process working of these applications. Then you'll set up a test environment for this application using various tools to identify the loopholes and vulnerabilities in the structure of the applications. Finally, after collecting all information about these security loop holes, we'll start securing our applications from these threats. Style and approach This is an easy-to-follow guide full of hands-on examples of real-world attack simulations. Each topic is explained in context with respect to testing, and for the more inquisitive, there are more details on the concepts and techniques used for different platforms.
OpenCV By Example
¥90.46
Enhance your understanding of Computer Vision and image processing by developing real-world projects in OpenCV 3About This BookGet to grips with the basics of Computer Vision and image processingThis is a step-by-step guide to developing several real-world Computer Vision projects using OpenCV 3This book takes a special focus on working with Tesseract OCR, a free, open-source library to recognize text in imagesWho This Book Is ForIf you are a software developer with a basic understanding of Computer Vision and image processing and want to develop interesting Computer Vision applications with Open CV, this is the book for you. Knowledge of C++ is required.What You Will LearnInstall OpenCV 3 on your operating systemCreate the required CMake *s to compile the C++ application and manage its dependenciesGet to grips with the Computer Vision workflows and understand the basic image matrix format and filtersUnderstand the segmentation and feature extraction techniquesRemove backgrounds from a static scene to identify moving objects for video surveillanceTrack different objects in a live video using various techniquesUse the new OpenCV functions for text detection and recognition with TesseractIn DetailOpen CV is a cross-platform, free-for-use library that is primarily used for real-time Computer Vision and image processing. It is considered to be one of the best open source libraries that helps developers focus on constructing complete projects on image processing, motion detection, and image segmentation.Whether you are completely new to the concept of Computer Vision or have a basic understanding of it, this book will be your guide to understanding the basic OpenCV concepts and algorithms through amazing real-world examples and projects.Starting from the installation of OpenCV on your system and understanding the basics of image processing, we swiftly move on to creating optical flow video analysis or text recognition in complex scenes, and will take you through the commonly used Computer Vision techniques to build your own Open CV projects from scratch.By the end of this book, you will be familiar with the basics of Open CV such as matrix operations, filters, and histograms, as well as more advanced concepts such as segmentation, machine learning, complex video analysis, and text recognition.Style and approachThis book is a practical guide with lots of tips, and is closely focused on developing Computer vision applications with OpenCV. Beginning with the fundamentals, the complexity increases with each chapter. Sample applications are developed throughout the book that you can execute and use in your own projects.
Boost.Asio C++ Network Programming Cookbook
¥90.46
Over 25 hands-on recipes to create robust and highly-efficient cross-platform distributed applications with the Boost.Asio libraryAbout This BookBuild highly efficient distributed applications with easeEnhance your cross-platform network programming skills with one of the most reputable C++ librariesFind solutions to real-world problems related to network programming with ready-to-use recipes using this detailed and practical handbookWho This Book Is ForIf you want to enhance your C++ network programming skills using the Boost.Asio library and understand the theory behind development of distributed applications, this book is just what you need. The prerequisite for this book is experience with general C++11. To get the most from the book and comprehend advanced topics, you will need some background experience in multithreading.What You Will LearnBoost your working knowledge of one of the most reputable C++ networking libraries—Boost.AsioFamiliarize yourself with the basics of TCP and UDP protocolsCreate scalable and highly-efficient client and server applicationsUnderstand the theory behind development of distributed applicationsIncrease the security of your distributed applications by adding SSL supportImplement a HTTP client easilyUse iostreams, scatter-gather buffers, and timersIn DetailStarting with recipes demonstrating the execution of basic Boost.Asio operations, the book goes on to provide ready-to-use implementations of client and server applications from simple synchronous ones to powerful multithreaded scalable solutions. Finally, you are presented with advanced topics such as implementing a chat application, implementing an HTTP client, and adding SSL support. All the samples presented in the book are ready to be used in real projects just out of the box.As well as excellent practical examples, the book also includes extended supportive theoretical material on distributed application design and construction.Style and approachThis book is a set of recipes, each containing the statement and de*ion of a particular practical problem followed by code sample providing the solution to the problem and detailed step-by-step explanation. Recipes are grouped by topic into chapters and ordered by the level of complexity from basic to advanced.
Learning Predictive Analytics with Python
¥90.46
Gain practical insights into predictive modelling by implementing Predictive Analytics algorithms on public datasets with PythonAbout This BookA step-by-step guide to predictive modeling including lots of tips, tricks, and best practicesGet to grips with the basics of Predictive Analytics with PythonLearn how to use the popular predictive modeling algorithms such as Linear Regression, Decision Trees, Logistic Regression, and ClusteringWho This Book Is ForIf you wish to learn how to implement Predictive Analytics algorithms using Python libraries, then this is the book for you. If you are familiar with coding in Python (or some other programming/statistical/*ing language) but have never used or read about Predictive Analytics algorithms, this book will also help you. The book will be beneficial to and can be read by any Data Science enthusiasts. Some familiarity with Python will be useful to get the most out of this book, but it is certainly not a prerequisite.What You Will LearnUnderstand the statistical and mathematical concepts behind Predictive Analytics algorithms and implement Predictive Analytics algorithms using Python librariesAnalyze the result parameters arising from the implementation of Predictive Analytics algorithmsWrite Python modules/functions from scratch to execute segments or the whole of these algorithmsRecognize and mitigate various contingencies and issues related to the implementation of Predictive Analytics algorithmsGet to know various methods of importing, cleaning, sub-setting, merging, joining, concatenating, exploring, grouping, and plotting data with pandas and numpyCreate dummy datasets and simple mathematical simulations using the Python numpy and pandas librariesUnderstand the best practices while handling datasets in Python and creating predictive models out of themIn DetailSocial Media and the Internet of Things have resulted in an avalanche of data. Data is powerful but not in its raw form - It needs to be processed and modeled, and Python is one of the most robust tools out there to do so. It has an array of packages for predictive modeling and a suite of IDEs to choose from. Learning to predict who would win, lose, buy, lie, or die with Python is an indispensable skill set to have in this data age.This book is your guide to getting started with Predictive Analytics using Python. You will see how to process data and make predictive models from it. We balance both statistical and mathematical concepts, and implement them in Python using libraries such as pandas, scikit-learn, and numpy.You’ll start by getting an understanding of the basics of predictive modeling, then you will see how to cleanse your data of impurities and get it ready it for predictive modeling. You will also learn more about the best predictive modeling algorithms such as Linear Regression, Decision Trees, and Logistic Regression. Finally, you will see the best practices in predictive modeling, as well as the different applications of predictive modeling in the modern world.Style and approachAll the concepts in this book been explained and illustrated using a dataset, and in a step-by-step manner. The Python code snippet to implement a method or concept is followed by the output, such as charts, dataset heads, pictures, and so on. The statistical concepts are explained in detail wherever required.
Cisco UCS Cookbook
¥90.46
Over 40 practical recipes to get your hands dirty with the powerful Cisco UCS and overcome various challenges About This Book Master the skills of minimizing cost, enabling your business to work faster by reducing cycle times for reporting and improving overall revenue Work through hands-on recipes for efficient deployment approaches, see computing techniques, and explore new operational models with UCS Render a better work-flow management, ensure effective monitoring, and learn new deployment paradigms for the operational infrastructure with the help of this book Who This Book Is For This book is for competent system/network or storage administrators who are working with Cisco UCS, but now want to learn new ways to compute UCS. What You Will Learn Familiarize yourself with information on the latest information on memory management practices, virtualization architectures, and the specific technical advantages of UCS Get a concrete understanding of integrating processes and techniques to ensure effective convergence of LAN/SAN Get to know the best practices of Cisco UCS, EMC Storage, and VMware vSphere Master migrating data from other band servers or Blade to Cisco UCS Comprehend how to replicate and back up UCS to remote sites UCS Assimilate innovative techniques to deploy UCS to leverage its full potential Gather information on installing and configuring automatic and manual Pinning Discover ways to integrate a system in Cisco UCS In Detail Cisco Unified Computing System (UCS) is a data center server platform that is used for computing, deploying, and storing resources in data center environments. This cookbook aims to teach you about various tasks you can implement to improve your existing method of configuring and deploying UCS. You will start by learning how to upgrade your firmware on Brocade and Cisco Fibre Channel Switch and will move on to enhance your knowledge of LAN connectivity. We will then discuss how to configure Windows 2008 and 2012 local boot in Cisco UCS. Next, you will learn how to install the operating system on Cisco UCS and use Cisco UCS Power Calculator to calculate the UCS consumption. Finally, we’ll take a look at backup solutions. By the end of the book, you will know several ways to build and compute in data center environment using Cisco UCS. Style and approach This guide explains every task in a conversational and easy-to-follow style. You can open this book up to the task you want to learn and will be able to perform that task by the end of the recipe.
Cocos2d Cross-Platform Game Development Cookbook - Second Edition
¥90.46
Develop games for iOS and Android using Cocos2d with the aid of over 70 step-by-step recipesAbout This BookLearn to efficiently use Cocos2d to develop cross-platform games, and have them work on iOS as well as AndroidGet acquainted with industry-wide professional tools such as Glyph Designer, Texture Packer, and Physics Editor, as well as using the Swift/ Sprite builder implementation of Cocos2dUse the easy-to-follow recipes to develop as well as deploy games to the Playstore and the App StoreWho This Book Is ForThis book is for intermediate game developers and especially the ones who are generally curious to find out what’s new in Cocos2d v 3.3.What You Will LearnBuild custom sprites with custom animations for the gameBuild interactivity into your game by adding gestures and touch interactionsUnderstand AI enemy programming and path finding to make games more excitingAdd physics to your game to make it more lively and interactiveGet familiar with the Swift and Sprite builder implementations along with Objective-C programmingPerform hassle-free deployment of games built in iOS onto AndroidAdd effects and particle systems to make the game more colorfulIn DetailCocos2d is the world’s leading game development framework for developing iOS games. With the introduction of Swift and Spritebuilder, it has become easier than ever to develop the games of your dreams without much effort. With Cocos2d, you can also deploy the game on Android, thereby maximizing profit and reducing development and porting costs.The book starts off with a detailed look at how to implement sprites and animations into your game to make it livelier. You will then learn to add scenes to the game such as the gameplay scene and options scene and create menus and buttons in these scenes, as well as creating transitions between them. From there on, you will get an understanding of how to program user interactions such as tapping, holding, and swiping. You’ll then add accelerometer inputs and physics to the scene, and make objects respond back to the inputs. A game is practically incomplete without audio being added, so this will be covered next.The next section will include ways to add Artificial Intelligence to enemies in the game, allowing them to patrol, chase, and shoot in a projectile manner. You will then learn to use NSUserDefault to save and load game progress, and create and access files using JSON, Plist, and XML files for custom storage and retrieval of data. Then you will learn to add dynamic lighting to your game and will use industry-wide tools such as Texture Packer, Glyph Designer, Physics Editor, Particle Designer, and Sprite Illuminator to create more visually appealing and performance-optimized games.Towards the end of the book, we dive into Apple’s latest programming language—Swift, highlighting the major differences between Objective C and Swift. The book culminates with taking your existing game developed for iOS and porting it to Android, showing you how to install the Android Xcode plugin as well.Style and approachThe book is written in an extremely lucid and step-by-step manner; it can be understood easily by anyone. The topics included are broken down into individual chapters so you can refer to the specific chapter to get answers on the subject you are interested in.
Mastering Puppet - Second Edition
¥90.46
Master Puppet for configuration management of your systems in an enterprise deploymentAbout This BookThis book is an advanced guide to using and deploying Puppet 4 in your organization with a special focus on issues faced in larger enterprise deploymentsFrom an experienced author, learn to deal with scaling, performance, and multiple developers with the help of real-world examplesThis is the most up-to-date guide on Puppet, and covers the advanced concepts of Puppet 4Who This Book Is ForThis book is for those who have intermediate knowledge of Puppet and are looking to deploy it in their environment. Some idea how to write simple modules for configuration management with Puppet is a prerequisite for this book.What You Will LearnScale out your Puppet infrastructure using proxying techniquesAutomate your code promotion workflow using Git and r10kSolve real-world problems using public modules from the Puppet ForgeUse Hiera to separate the data of your configuration from the code of your configurationWrite your own custom facts in RubyExtend Puppet with your own custom facts, modules, and typesUse exported resources to orchestrate change between machinesDebug a puppetserver using Java techniquesIn DetailPuppet is a configuration management system and a language. It was written for and by system administrators to manage large numbers of systems efficiently and prevent configuration drifts.Mastering Puppet deals with the issues faced when scaling out Puppet to handle large numbers of nodes. It will show you how to fit Puppet into your enterprise and allow many developers to work on your Puppet code simultaneously. In addition, you will learn to write custom facts and roll your own modules to solve problems. Next, popular options for performing reporting and orchestration tasks will be introduced in this book. Moving over to troubleshooting techniques, which will be very useful. The concepts presented are useful to any size organization.By the end of the book, you will know how to deal with problems of scale and exceptions in your code, automate workflows, and support multiple developers working simultaneously.Style and approachThis book is a step-wise guide packed with examples to help you configure complex systems in Puppet.
Mastering Geospatial Analysis with Python
¥90.46
Explore GIS processing and learn to work with various tools and libraries in Python. About This Book ? Analyze and process geospatial data using Python libraries such as; Anaconda, GeoPandas ? Leverage new ArcGIS API to process geospatial data for the cloud. ? Explore various Python geospatial web and machine learning frameworks. Who This Book Is For The audience for this book includes students, developers, and geospatial professionals who need a reference book that covers GIS data management, analysis, and automation techniques with code libraries built in Python 3. What You Will Learn ? Manage code libraries and abstract geospatial analysis techniques using Python 3. ? Explore popular code libraries that perform specific tasks for geospatial analysis. ? Utilize code libraries for data conversion, data management, web maps, and REST API creation. ? Learn techniques related to processing geospatial data in the cloud. ? Leverage features of Python 3 with geospatial databases such as PostGIS, SQL Server, and SpatiaLite. In Detail Python comes with a host of open source libraries and tools that help you work on professional geoprocessing tasks without investing in expensive tools. This book will introduce Python developers, both new and experienced, to a variety of new code libraries that have been developed to perform geospatial analysis, statistical analysis, and data management. This book will use examples and code snippets that will help explain how Python 3 differs from Python 2, and how these new code libraries can be used to solve age-old problems in geospatial analysis. You will begin by understanding what geoprocessing is and explore the tools and libraries that Python 3 offers. You will then learn to use Python code libraries to read and write geospatial data. You will then learn to perform geospatial queries within databases and learn PyQGIS to automate analysis within the QGIS mapping suite. Moving forward, you will explore the newly released ArcGIS API for Python and ArcGIS Online to perform geospatial analysis and create ArcGIS Online web maps. Further, you will deep dive into Python Geospatial web frameworks and learn to create a geospatial REST API. Style and approach The book takes a practical, example-driven approach to teach you GIS analysis and automation techniques with Python 3.
Building Serverless Applications with Python
¥90.46
Building efficient Python applications at minimal cost by adopting serverless architectures About This Book ? Design and set up a data flow between cloud services and custom business logic ? Make your applications efficient and reliable using serverless architecture ? Build and deploy scalable serverless Python APIs Who This Book Is For This book is for Python developers who would like to learn about serverless architecture. Python programming knowledge is assumed. What You Will Learn ? Understand how AWS Lambda and Microsoft Azure Functions work and use them to create an application ? Explore various triggers and how to select them, based on the problem statement ? Build deployment packages for Lambda functions ? Master the finer details about building Lambda functions and versioning ? Log and monitor serverless applications ? Learn about security in AWS and Lambda functions ? Scale up serverless applications to handle huge workloads and serverless distributed systems in production ? Understand SAM model deployment in AWS Lambda In Detail Serverless architectures allow you to build and run applications and services without having to manage the infrastructure. Many companies have adopted this architecture to save cost and improve scalability. This book will help you design serverless architectures for your applications with AWS and Python. The book is divided into three modules. The first module explains the fundamentals of serverless architecture and how AWS lambda functions work. In the next module, you will learn to build, release, and deploy your application to production. You will also learn to log and test your application. In the third module, we will take you through advanced topics such as building a serverless API for your application. You will also learn to troubleshoot and monitor your app and master AWS lambda programming concepts with API references. Moving on, you will also learn how to scale up serverless applications and handle distributed serverless systems in production. By the end of the book, you will be equipped with the knowledge required to build scalable and cost-efficient Python applications with a serverless framework. Style and approach The book takes a pragmatic approach, using a real-world example to demonstrate building efficient, secure, and scalable serverless applications.
Tkinter GUI Programming by Example
¥90.46
Leverage the power of Python and its de facto GUI framework to build highly interactive interfaces About This Book ? The fundamentals of Python and GUI programming with Tkinter. ? Create multiple cross-platform projects by integrating a host of third-party libraries and tools. ? Build beautiful and highly-interactive user interfaces that target multiple devices. Who This Book Is For This book is for beginners to GUI programming who haven’t used Tkinter yet and are eager to start building great-looking and user-friendly GUIs. Prior knowledge of Python programming is expected. What You Will Learn ? Create a scrollable frame via theCanvas widget ? Use the pack geometry manager andFrame widget to control layout ? Learn to choose a data structurefor a game ? Group Tkinter widgets, such asbuttons, canvases, and labels ? Create a highly customizablePython editor ? Design and lay out a chat window In Detail Tkinter is a modular, cross-platform application development toolkit for Python. When developing GUI-rich applications, the most important choices are which programming language(s) and which GUI framework to use. Python and Tkinter prove to be a great combination. This book will get you familiar with Tkinter by having you create fun and interactive projects. These projects have varying degrees of complexity. We'll start with a simple project, where you'll learn the fundamentals of GUI programming and the basics of working with a Tkinter application. After getting the basics right, we'll move on to creating a project of slightly increased complexity, such as a highly customizable Python editor. In the next project, we'll crank up the complexity level to create an instant messaging app. Toward the end, we'll discuss various ways of packaging our applications so that they can be shared and installed on other machines without the user having to learn how to install and run Python programs. Style and approach Step by Step guide with real world examples
Functional Python Programming
¥90.46
Create succinct and expressive implementations with functional programming in Python About This Book ? Learn how to choose between imperative and functional approaches based on expressiveness, clarity, and performance ? Get familiar with complex concepts such as monads, concurrency, and immutability ? Apply functional Python to common Exploratory Data Analysis (EDA) programming problems Who This Book Is For This book is for Python developers who would like to perform Functional programming with Python. Python Programming knowledge is assumed. What You Will Learn ? Use Python's generator functions and generator expressions to work with collections in a non-strict (or lazy) manner ? Utilize Python library modules including itertools, functools, multiprocessing, and concurrent features to ensure efficient functional programs ? Use Python strings with object-oriented suffix notation and prefix notation ? Avoid stateful classes with families of tuples ? Design and implement decorators to create composite functions ? Use functions such as max(), min(), map(), filter(), and sorted() ? Write higher-order functions In Detail If you’re a Python developer who wants to discover how to take the power of functional programming (FP) and bring it into your own programs, then this book is essential for you, even if you know next to nothing about the paradigm. Starting with a general overview of functional concepts, you’ll explore common functional features such as first-class and higher-order functions, pure functions, and more. You’ll see how these are accomplished in Python 3.6 to give you the core foundations you’ll build upon. After that, you’ll discover common functional optimizations for Python to help your apps reach even higher speeds. You’ll learn FP concepts such as lazy evaluation using Python’s generator functions and expressions. Moving forward, you’ll learn to design and implement decorators to create composite functions. You'll also explore data preparation techniques and data exploration in depth, and see how the Python standard library fits the functional programming model. Finally, to top off your journey into the world of functional Python, you’ll at look at the PyMonad project and some larger examples to put everything into perspective. Style and approach This book provides a general overview of functional concepts and then delves deeper into the functional features, showing you how the Python standard library fits the functional programming model. It also demonstrates how to implement common functional programming design patterns and techniques in Python.
Learn Web Development with Python
¥90.46
A comprehensive guide to Python programming for web development using the most popular Python web framework - Django Key Features *Learn the fundamentals of programming with Python and building web apps *Build web applications from scratch with Django *Create real-world RESTful web services with the latest Django framework Book Description If you want to develop complete Python web apps with Django, this Learning Path is for you. It will walk you through Python programming techniques and guide you in implementing them when creating 4 professional Django projects, teaching you how to solve common problems and develop RESTful web services with Django and Python. You will learn how to build a blog application, a social image bookmarking website, an online shop, and an e-learning platform. Learn Web Development with Python will get you started with Python programming techniques, show you how to enhance your applications with AJAX, create RESTful APIs, and set up a production environment for your Django projects. Last but not least, you’ll learn the best practices for creating real-world applications. By the end of this Learning Path, you will have a full understanding of how Django works and how to use it to build web applications from scratch. This Learning Path includes content from the following Packt products: *Learn Python Programming by Fabrizio Romano *Django RESTful Web Services by Gastón C. Hillar *Django Design Patterns and Best Practices by Arun Ravindran What you will learn *Explore the fundamentals of Python programming with interactive projects *Grasp essential coding concepts along with the basics of data structures and control flow *Develop RESTful APIs from scratch with Django and the Django REST Framework *Create automated tests for RESTful web services *Debug, test, and profile RESTful web services with Django and the Django REST Framework *Use Django with other technologies such as Redis and Celery Who this book is for If you have little experience in coding or Python and want to learn how to build full-fledged web apps, this Learning Path is for you. No prior experience with RESTful web services, Python, or Django is required, but basic Python programming experience is needed to understand the concepts covered.
Building Microservices with Spring
¥90.46
Learn and use the design patterns and best practices in Spring to solve common design problems and build user-friendly microservices Key Features *Study the benefits of using the right design pattern in your toolkit *Manage your code easily with Spring's dependency injection pattern *Explore the features of Docker and Mesos to build successful microservices Book Description Getting Started with Spring Microservices begins with an overview of the Spring Framework 5.0, its design patterns, and its guidelines that enable you to implement responsive microservices at scale. You will learn how to use GoF patterns in application design. You will understand the dependency injection pattern, which is the main principle behind the decoupling process of the Spring Framework and makes it easier to manage your code. Then, you will learn how to use proxy patterns in aspect-oriented programming and remoting. Moving on, you will understand the JDBC template patterns and their use in abstracting database access. After understanding the basics, you will move on to more advanced topics, such as reactive streams and concurrency. Written to the latest specifications of Spring that focuses on Reactive Programming, the Learning Path teaches you how to build modern, internet-scale Java applications in no time. Next, you will understand how Spring Boot is used to deploying serverless autonomous services by removing the need to have a heavyweight application server. You’ll also explore ways to deploy your microservices to Docker and managing them with Mesos. By the end of this Learning Path, you will have the clarity and confidence for implementing microservices using Spring Framework. This Learning Path includes content from the following Packt products: *Spring 5 Microservices by Rajesh R V *Spring 5 Design Patterns by Dinesh Rajput What you will learn *Develop applications using dependency injection patterns *Build web applications using traditional Spring MVC patterns *Utilize the reactive programming pattern to build reactive web apps *Learn concurrency and handle multiple connections inside a web server *Use Spring Boot and Spring Cloud to develop microservices *Leverage reactive programming to build cloud-native applications Who this book is for Getting Started with Spring Microservices is ideal for Spring developers who want to use design patterns to solve common design problems and build cloud-ready, Internet-scale applications, and simple RESTful services.
Modern C++: Efficient and Scalable Application Development
¥90.46
Create apps in C++ and leverage its latest features using modern programming techniques. Key Features *Develop strong C++ skills to build a variety of applications *Explore features of C++17, such as containers, algorithms, and threads *Grasp the standard support for threading and concurrency and use them in basic daily tasks Book Description C++ is one of the most widely used programming languages. It is fast, flexible, and used to solve many programming problems. This Learning Path gives you an in-depth and hands-on experience of working with C++, using the latest recipes and understanding most recent developments. You will explore C++ programming constructs by learning about language structures, functions, and classes, which will help you identify the execution flow through code. You will also understand the importance of the C++ standard library as well as memory allocation for writing better and faster programs. Modern C++: Efficient and Scalable Application Development deals with the challenges faced with advanced C++ programming. You will work through advanced topics such as multithreading, networking, concurrency, lambda expressions, and many more recipes. By the end of this Learning Path, you will have all the skills to become a master C++ programmer. This Learning Path includes content from the following Packt products: *Beginning C++ Programming by Richard Grimes *Modern C++ Programming Cookbook by Marius Bancila *The Modern C++ Challenge by Marius Bancila What you will learn *Become familiar with the structure of C++ projects *Identify the main structures in the language: functions and classes *Learn to debug your programs *Leverage C++ features to obtain increased robustness and performance *Explore functions and callable objects with a focus on modern features *Serialize and deserialize JSON and XML data *Create client-server applications that communicate over TCP/IP *Use design patterns to solve real-world problems Who this book is for This Learning Path is designed for developers who want to gain a solid foundation in C++. The desire to learn how to code in C++ is all you need to get started with this Learning Path
Hands-On System Programming with C++
¥90.46
A hands-on guide to making system programming with C++ easy Key Features *Write system-level code leveraging C++17 *Learn the internals of the Linux Application Binary Interface (ABI) and apply it to system programming *Explore C++ concurrency to take advantage of server-level constructs Book Description C++ is a general-purpose programming language with a bias toward system programming as it provides ready access to hardware-level resources, efficient compilation, and a versatile approach to higher-level abstractions. This book will help you understand the benefits of system programming with C++17. You will gain a firm understanding of various C, C++, and POSIX standards, as well as their respective system types for both C++ and POSIX. After a brief refresher on C++, Resource Acquisition Is Initialization (RAII), and the new C++ Guideline Support Library (GSL), you will learn to program Linux and Unix systems along with process management. As you progress through the chapters, you will become acquainted with C++'s support for IO. You will then study various memory management methods, including a chapter on allocators and how they benefit system programming. You will also explore how to program file input and output and learn about POSIX sockets. This book will help you get to grips with safely setting up a UDP and TCP server/client. Finally, you will be guided through Unix time interfaces, multithreading, and error handling with C++ exceptions. By the end of this book, you will be comfortable with using C++ to program high-quality systems. What you will learn *Understand the benefits of using C++ for system programming *Program Linux/Unix systems using C++ *Discover the advantages of Resource Acquisition Is Initialization (RAII) *Program both console and file input and output *Uncover the POSIX socket APIs and understand how to program them *Explore advanced system programming topics, such as C++ allocators *Use POSIX and C++ threads to program concurrent systems *Grasp how C++ can be used to create performant system applications Who this book is for If you are a fresh developer with intermediate knowledge of C++ but little or no knowledge of Unix and Linux system programming, this book will help you learn system programming with C++ in a practical way.