Building APIs That Developers Love

Book Description:

Using a web API to provide services to application developers is one of the more satisfying endeavors that software engineers undertake. But building a popular API with a thriving developer ecosystem is also one of the most challenging. With this practical guide, developers, architects, and tech leads will learn how to navigate complex decisions for designing, scaling, marketing, and evolving interoperable APIs.

Authors Brenda Jin, Saurabh Sahni, and Amir Shevat explain API design theory and provide hands-on exercises for building your web API and managing its operation in production. You’ll also learn how to build and maintain a following of app developers. This book includes expert advice, worksheets, checklists, and case studies from companies including Slack, Stripe, Facebook, Microsoft, Cloudinary, Oracle, and GitHub.

  • Get an overview of request-response and event-driven API design paradigms
  • Learn best practices for designing an API that meets the needs of your users
  • Use a template to create an API design process
  • Scale your web API to support a growing number of API calls and use cases
  • Regularly adapt the API to reflect changes to your product or business
  • Provide developer resources that include API documentation, samples, and tools

Book Description:

React in Action introduces front-end developers to the React framework and related tools. This clearly written, example-rich book begins by introducing you to React, diving into some of the fundamental ideas in React, and working with components. In the second section, you’ll explore the different ways that data works in React as well as learning more about components. You’ll also find several useful appendixes covering related topics like React tooling and the React ecosystem.

Collecting More Data from the Modern Web

Book Description:

If programming is magic then web scraping is surely a form of wizardry. By writing a simple automated program, you can query web servers, request data, and parse it to extract the information you need. The expanded edition of this practical book not only introduces you web scraping, but also serves as a comprehensive guide to scraping almost every type of data from the modern web.

Part I focuses on web scraping mechanics: using Python to request information from a web server, performing basic handling of the server’s response, and interacting with sites in an automated fashion. Part II explores a variety of more specific tools and applications to fit any web scraping scenario you’re likely to encounter.

  • Parse complicated HTML pages
  • Develop crawlers with the Scrapy framework
  • Learn methods to store data you scrape
  • Read and extract data from documents
  • Clean and normalize badly formatted data
  • Read and write natural languages
  • Crawl through forms and logins
  • Scrape JavaScript and crawl through APIs
  • Use and write image-to-text software
  • Avoid scraping traps and bot blockers
  • Use scrapers to test your website

Book Description:

Angular in Action teaches you everything you need to build production-ready Angular applications.Thoroughly practical and packed with tricks and tips, this hands-on tutorial is perfect for web devs ready to build web applications that can handle whatever you throw at them.

Book Description:

Create Next-Generation Enterprise Applications

Build and distribute business web applications that target both desktop and mobile devices. Cowritten by Java EE and NetBeans IDE experts, Java EE and HTML5 Enterprise Application Development fully explains cutting-edge, highly responsive design tools and strategies. Find out how to navigate NetBeans IDE, construct HTML5 programs, employ JavaScript APIs, integrate CSS and WebSockets, and handle security. This Oracle Press guide also offers practical coverage of SaaS, MVVM, and RESTful concepts.

  • Explore HTML5 and Java EE 7 features
  • Use NetBeans IDE editors, templates, and code generators
  • Implement MVVM functionality with Knockout.js
  • Dynamically map database objects using Java Persistence API
  • Configure, manage, and invoke RESTful Web Services
  • Maximize messaging efficiency through WebSockets
  • Accept and process HTML5 Server-Sent Events streams
  • Employ Syntactically Awesome Stylesheets, CSS3, and Sassy CSS

Book Description:

Design and build scalable web applications quickly

This is an invaluable roadmap for meeting the rapid demand to deliver scalable applications in a startup environment. With a focus on core concepts and best practices rather than on individual languages, platforms, or technologies, Web Scalability for Startup Engineers describes how infrastructure and software architecture work together to support a scalable environment.

You’ll learn, step by step, how scalable systems work and how to solve common challenges. Helpful diagrams are included throughout, and real-world examples illustrate the concepts presented. Even if you have limited time and resources, you can successfully develop and deliver robust, scalable web applications with help from this practical guide.

  • Learn the key principles of good software design required for scalable systems
  • Build the front-end layer to sustain the highest levels of concurrency and request rates
  • Design and develop web services, including REST-ful APIs
  • Enable a horizontally scalable data layer
  • Implement caching best practices
  • Leverage asynchronous processing, messaging, and event-driven architecture
  • Structure, index, and store data for optimized search
  • Explore other aspects of scalability, such as automation, project management, and agile teams

Over 35 recipes to design and implement uniquely styled maps using the Mapbox platform

Book Description:

Maps are an essential element in today’s location aware applications. Right from displaying earth surface information to creating thematic maps displaying plethora of information, most of the developers lack the necessary knowledge to create customizable maps with combination of various tools and libraries. The MapBox platform is one such platform which offers all the tools and API required to create and publish a totally customizable map.

Starting with building your first map with the online MapBox Editor, we will take you all the way to building advanced web and mobile applications with totally customizable map styles. Through the course of chapters we’ll learn CartoCSS styling language and understand the various components of MapBox platform and their corresponding JavaScript API.

In the initial few chapters we will dive deeper into the TileMill and MapBox Studio components of MapBox and use them to generate custom styled map tiles and vector maps. Furthermore, we will publish these custom maps using PHP, node.js and third party tools like Geoserver.

We’ll also learn to create different visualizations and map styles like a choropleth map, a heat map and add user interactivity using a UFTGrid. Moving on, we dive into advanced concepts and focus on integration with third party services like Foursquare, Google FusionTables, CartoDB, and Torque to help you populate and even animate your maps.

In the final chapter we’ll learn to use the Mapbox SDK to create and publish interactive maps for the iOS platform. By the end of this book, you will learn about MapBox GL and how to create a fully functional, location-aware mobile app, using the maps styles created in the recipes.

What You Will Learn

  • Get accustomed to the MapBox Editor to visually style your maps
  • Learn everything about CartoCSS, and how it will help you fine tune your styled maps
  • Use MapBox Studio and Tilemill to generate your own tiles and vector maps
  • Publish your maps using a variety of technologies like node.js, PHP, and Geoserver
  • Integrate with third party APIs and services to populate your maps with public or private data
  • Create many different map visualization styles like choropleth and heat maps, add interactivity, and even learn how to animate data over time
  • Work with many different data formats and external services to create robust maps
  • Learn to use MapBox GL to create a mobile application

An intuitive guide to creating easy-to-build scalable web applications using the Play framework

Book Description:

Play is a framework to write web applications using Scala or Java. It provides a productive development environment, allowing you to just hit the “refresh” button in your browser to compile your changes and reload the application. Because of its stateless nature, the framework makes it easy to build applications that scale. Play provides a reactive programming model to harness the event-driven HTTP layer.

This book provides a step-by-step walkthrough of how to build a complete web application following best application development practices using Play framework 2. All aspects specific to web-oriented architectures are covered: the HTTP layer, JSON manipulation, HTML templating, asset compression and concatenation, form submission, content negotiation, security, and HTTP streaming. The book will also provide detailed architectural insights into Play framework to give you a better understanding in order to successfully build scalable applications.

What You Will Learn

  • Set up a unified development environment for both the client-side and server-side code
  • Understand the challenges of building a scalable web application and master the solutions provided by Play framework
  • Integrate the framework with existing client-side or server-side technologies such as persistence systems
  • Harness the reactive programming model to process data streams
  • Design robust, maintainable, and testable code
  • Be proficient in manipulating JSON data blobs
  • Deploy your application on a PaaS platform

Use SignalR to create realtime, bidirectional, and asynchronous applications based on standard web technologies

Book Description:

SignalR is a recent addition to ASP.NET, which allows you to add real-time functionalities to your applications. SignalR enables bidirectional communication between client and server over HTTP, transparently, and ensures you’re always provided with the experience of a persistent connection.

SignalR Real-time Application Cookbook is a practical, hands-on guide that provides a number of clear step-by-step recipes that will gradually enable you to add SignalR as an innovative, effective, and useful item in your toolbox. This book will move from simple examples on to complex use cases, going through a comprehensive overview of the library. Other than helping out with the common tasks, at the end of the book you will find a set of ready-made solutions for more complex scenarios.

What You Will Learn

  • Teach you how to build SignalR servers
  • Illustrate SignalR clients built with both the JavaScript and the .NET client libraries
  • Demonstrate both the Hubs API and the Persistent Connection API
  • Demystify the lifetime of a connection
  • Explain how to authorize requests
  • Scale up and scale out your SignalR applications
  • Enable you to handle errors efficiently
  • Extend SignalR with custom services
  • Solve complex real-time scenarios with the help of advanced, ready-made examples

Get hands-on experience with vRealize Orchestrator and automate your VMware environment

Book Description:

The automation of virtual environments has become the focus of many endeavors. VMware vRealize Orchestrator is a tool that enables you to automate not only your VMware environments, but also the surrounding hardware and software infrastructure. Orchestrator is also a central tool in the VMware cloud initiative and is extensively used by products such as vRealize Automation.

In this book, you will learn how Orchestrator is able to help you automate your complete VMware infrastructure as well as its surrounding hardware and software. After deploying and configuring the vRealize Orchestrator appliance, you will learn how to run the existing workflows that are a part of the Orchestrator library. You will also see how the vSphere Web Client integration of Orchestrator reduces the time you spend on your daily admin tasks.

The main aspect here is to learn how to create new workflows from existing ones. You will also look at how you can create completely new workflows. This includes learning about JavaScript and using presentation features to improve the layout and user friendliness of your workflows. Toward the end, you will learn to check for errors in your workflows and debug them. By the time you’re done with the book, you’ll be proficient in managing your workflows.

What You Will Learn

  • Familiarize yourself with the Orchestrator architecture and Explore how plugins can expand Orchestrator’s capabilitiesExplore how plug-ins can expand Orchestrator’s capabilities
  • Deploy and configure the vRealize Orchestrator appliance
  • Schedule and run workflows using the vSphere Web Client
  • Create your own workflows with minimal work
  • Use workflow presentations to improve your automation projects
  • Integrate JavaScript to enhance your workflows
  • Debug your workflows for errors and fix them
  • Learn how to create, import, and export packages, to enable easy exchange solutions with others

INCLUDES 70 TECHNIQUES

Book Description:

Go in Practice guides you through 70 real-world techniques in key areas like package management, microservice communication, and more. Following a cookbook-style Problem/Solution/Discussion format, this practical handbook builds on the foundational concepts of the Go language and introduces specific strategies you can use in your day-to-day applications.

A practical tutorial to get you up and running with the revolutionary WordPress REST API

Book Description:

The WordPress REST API is a recent innovation that has the potential to unlock several new opportunities for WordPress developers. It can help you integrate with technologies outside of WordPress, as well as offer great flexibility when developing themes and plugins for WordPress. As such, the REST API can make developers’ lives easier.

The book begins by covering the basics of the REST API and how it can be used along with WordPress. Learn how the REST API interacts with WordPress, allowing you to copy posts and modify post metadata. Move on to get an understanding of taxonomies and user roles are in WordPress and how to use them with the WordPress REST API. Next, find out how to edit and process forms with AJAX and how to create custom routes and functions. You will create a fully-functional single page web app using a WordPress site and the REST API. Lastly, you will see how to deal with the REST API in future versions and will use it to interact it with third-party services.

By the end of the book, you will be able to work with the WordPress REST API to build web applications.

What You Will Learn

  • Use the WordPress REST API to read, write, and edit posts
  • Create and work with metadata using the WordPress REST API
  • Work with taxonomies using the REST API
  • Add custom routes and build apps using the WordPress REST API
  • Process requests and integrate with external applications and frameworks
  • Make your WordPress projects ready for the RESTful API standard

Monitor your Elasticsearch cluster's health, and diagnose and solve its performance and reliability issues

Book Description:

ElasticSearch is a distributed search server similar to Apache Solr with a focus on large datasets, a schema-less setup, and high availability. This schema-free architecture allows ElasticSearch to index and search unstructured content, making it perfectly suited for both small projects and large big data warehouses with petabytes of unstructured data.

This book is your toolkit to teach you how to keep your cluster in good health, and show you how to diagnose and treat unexpected issues along the way. You will start by getting introduced to ElasticSearch, and look at some common performance issues that pop up when using the system. You will then see how to install and configure ElasticSearch and the ElasticSearch monitoring plugins. Then, you will proceed to install and use the Marvel dashboard to monitor ElasticSearch. You will find out how to troubleshoot some of the common performance and reliability issues that come up when using ElasticSearch. Finally, you will analyze your cluster’s historical performance, and get to know how to get to the bottom of and recover from system failures.

This book will guide you through several monitoring tools, and utilizes real-world cases and dilemmas faced when using ElasticSearch, showing you how to solve them simply, quickly, and cleanly.

What you will learn

  • Explore your cluster with ElasticSearch-head and BigDesk
  • Access the underlying data of the ElasticSearch monitoring plugins using the ElasticSearch API
  • Analyze your cluster’s performance with Marvel
  • Troubleshoot some of the common performance and reliability issues that come up when using ElasticSearch
  • Analyze a cluster’s historical performance, and get to the bottom of and recover from system failures
  • Use and install various other tools and plugins such as Kibana and Kopf, which is helpful to monitor ElasticSearch

Over 30 hands-on recipes that will get you up and running with Amazon Simple Storage Service (S3) efficiently

Book Description:

Amazon S3 is one of the most famous and trailblazing cloud object storage services, which is highly scalable, low-latency, and economical. Users only pay for what they use and can store and retrieve any amount of data at any time over the Internet, which attracts Hadoop users who run clusters on EC2.

The book starts by showing you how to install several AWS SDKs such as iOS, Java, Node.js, PHP, Python, and Ruby and shows you how to manage objects. Then, you’ll be taught how to use the installed AWS SDKs to develop applications with Amazon S3. Furthermore, you will explore the Amazon S3 pricing model and will learn how to annotate S3 billing with cost allocation tagging. In addition to this, the book covers several practical recipes about how to distribute your content with CloudFront, secure your content with IAM, optimize Amazon S3 performance, and notify S3 events with Lambada.

By the end of this book, you will be successfully implementing pro-level practices, techniques, and solutions in Amazon S3.

What You Will Learn

  • Host a static website on Amazon S3
  • Calculate costs with AWS Simple Monthly Calculators
  • Deploy a static website via CloudFormation
  • Distribute your content via CloudFront
  • Secure resources with bucket policies and IAM
  • Protect objects using server-side and client-side encryption
  • Enable Cross-Origin Resource Sharing
  • Manage objects’ life cycles to lower costs
  • Optimize performance for uploading as well as downloading objects
  • Enable S3 event notifications and create Lambda functions
  • Manage common operations with AWS SDKs

Book Description:

OpenStack in Action offers the real world use cases and step-by-step instructions you can take to develop your own cloud platform from from inception to deployment. This book guides you through the design of both the physical hardware cluster and the infrastructure services you’ll need to create a custom cloud platform.