Learning Apache ThriftWith modern software systems being increasingly complex, providing a scalable communication architecture for applications in different languages is tedious. The Apache Thrift framework is the solution to this problem! It helps build efficient and easy-to-maintain services and offers a plethora of options matching your application type by supporting several popular programming languages, including C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml, and Delphi.
This book will help you set aside the basics of service-oriented systems through your first Apache Thrift-powered app. Then, progressing to more complex examples, it will provide you with tips for running large-scale applications in production environments. ...
Learning Axure RP Interactive PrototypesThis book provides you with a rapid introduction to interactive prototyping. It starts with explaining the basics of Axure RP and quickly familiarizes you with pages, panes, and widgets. It then walks you through designing increasingly compelling experiences by enabling basic, intermediate, and advanced interactions with your own interactive prototype.
You will also learn how to generate common interactions for a typical home page that includes a global header and footer as well as an interactive carousel. You'll also incorporate social media feeds from Facebook and Twitter. You'll enhance your functional prototype with user account creation and login validation; simulate a Content Management System driving catalog, category, and search results pages; and finally learn to fashion a dynamic shopping cart with a progress indicator and checkout interactions. ...
Learning CouchbaseNoSQL database systems have changed application development in terms of adaptability to dynamics schema and scalability. Compared with the currently available NoSQL database systems, Couchbase is the fastest. Its ease of configuration and powerful features for storing different schema structures, retrieval using map reduce and inbuilt disaster recovery by replicating document across the geographical region, make it one of the most powerful, scalable and comprehensive NoSQL in the market. Couchbase also introduces smart client API for various programming language to integrate the database with the application easily, yet providing very complex features like cluster health awareness.
This book achieves its goal by taking up an end-to-end development structure, right from understanding NoSQL document design to implementing full fledged eCommerce application design using Couchbase as a backend. ...
Learning Haskell Data AnalysisHaskell is trending in the field of data science by providing a powerful platform for robust data science practices. This book provides you with the skills to handle large amounts of data, even if that data is in a less than perfect state. Each chapter in the book helps to build a small library of code that will be used to solve a problem for that chapter. The book starts with creating databases out of existing datasets, cleaning that data, and interacting with databases within Haskell in order to produce charts for publications. It then moves towards more theoretical concepts that are fundamental to introductory data analysis, but in a context of a real-world problem with real-world data. As you progress in the book, you will be relying on code from previous chapters in order to help create new solutions quickly. By the end of the book, you will be able to manipulate, find, and analyze large and small sets of data using your own Haskell libraries. ...
Modern API Design with ASP.NET Core 2Use ASP.NET Core 2 to create durable and cross-platform web APIs through a series of applied, practical scenarios. Examples in this book help you build APIs that are fast and scalable. You'll progress from the basics of the framework through to solving the complex problems encountered in implementing secure RESTful services. The book is packed full of examples showing how Microsoft's ground-up rewrite of ASP.NET Core 2 enables native cross-platform applications that are fast and modular, allowing your cloud-ready server applications to scale as your business grows.
Major topics covered in the book include the fundamentals and core concepts of ASP.NET Core 2. You'll learn about building RESTful APIs with the MVC pattern using proven best practices and following the six principles of REST. Examples in the book help in learning to develop world-class web APIs and applications that can run on any platform, including Windows, Linux, and MacOS. You can even deploy to Microsoft Azure and a ...
Learning Puppet 4If you're a system administrator, developer, or site reliability engineer responsible for handling hundreds or even thousands of nodes in your network, the Puppet configuration management tool will make your job a whole lot easier. This practical guide shows you what Puppet does, how it works, and how it can provide significant value to your organization.
Through hands-on tutorials, DevOps engineer Jo Rhett demonstrates how Puppet manages complex and distributed components to ensure service availability. You'll learn how to secure configuration consistency across servers, clients, your router, and even that computer in your pocket by setting up your own testing environment.
Learn exactly what Puppet is, why it was created, and what problems it solves; Tailor Puppet to your infrastructure with a design that meets your specific needs; Write declarative Puppet policies to produce consistency in your systems; Build, test, and publish your own Puppet modules; Manage network devices su ...
Optimizing JavaCurrently, no books exist that focus on the practicalities of Java application performance tuning, as opposed to the theory and internals of Java virtual machines. This practical guide is the "missing link" that aims to move Java performance tuning from the realm of guesswork and folklore to an experimental science.
Learn how to approach performance problems in an consistent and systematic way; Resolve production performance issues by learning core Java performance topics; Identify and resolve performance issues before encountering them in production; Understand the performance problems you encounter by learning the Java platform's internals. ...
Learning iOS UI DevelopmentThrough 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. ...
Learning NServiceBus, 2nd EditionBuilding complex software systems is hard, but it doesn't have to be! NServiceBus is a powerful, yet lightweight, open source messaging framework used to design distributed .NET enterprise systems. Entirely pluggable, yet simple to use, it can help you apply the principles of messaging and SOA to build robust, scalable, and maintainable systems.
This book is an essential guide that will help you become a messaging guru. From sending a simple message, to publishing events, to implementing complex long-running business processes, you'll learn everything you need to know to start building complex software systems in no time. ...
Learning RedisThis book will introduce Redis and help you understand its various facets.
Starting with an introduction to NoSQL, you will learn how to install Redis and how to classify and work with data structures. By working with real world scenarios pertaining to using Redis, you will discover sharding and indexing techniques, along with how to improve scalability and performance through persistent strategies and data migration techniques. With the help of multiple examples, you will learn to design web and business applications. You will also learn how to configure Redis for setting up clusters and tuning it for performance.
At the end of this book, you will find essential tips on backup and recovery strategies for the Redis environment. ...