Manning Logo Ordering    Shopping Cart   

New Releases

AngularJS in Action

pBook coming July 10, 2015

ePub + Kindle coming July 17, 2015

Covers everything you need to know to get started with the AngularJS framework. You'll explore all the individual components of the framework and learn how to customize and extend them by building a real world sample application.

Using the TI-84 Plus, Second Edition

ePub + Kindle coming July 15, 2015

Includes terrific tutorials and plenty of exercises and examples that let you learn by doing. The book starts by giving you a hands-on orientation to the TI-84 Plus calculator. Then, you'll start exploring key features while you tackle problems just like the ones you'll see in your math and science classes.

Unity in Action

ePub + Kindle coming July 13, 2015

Teaches you how to write and deploy games. You'll master the Unity toolset from the ground up, adding the skills you need to go from application coder to game developer. Covers Unity version 5.

Groovy in Action, Second Edition

A thoroughly revised, comprehensive guide to Groovy. It introduces Java developers to the dynamic features that Groovy provides, and shows how to apply Groovy to a range of tasks including building new apps, integration with existing code, and DSL development. Covers Groovy 2.4.

Elixir in Action

Teaches you to apply the new Elixir programming language to practical problems associated with scalability, concurrency, fault tolerance, and high availability.

R in Action, Second Edition

Presents both the R language and the examples that make it so useful for business developers. Focusing on practical solutions, the book offers a crash course in statistics and covers elegant methods for dealing with messy and incomplete data that are difficult to analyze using traditional methods.

Big Data

Teaches you to build big data systems using an architecture that takes advantage of clustered hardware, along with new tools designed specifically to capture and analyze web-scale data. The book presents a scalable, easy-to-understand approach that can be built and run by a small team.

PostGIS in Action, Second Ediiton

Teaches readers of all levels to write spatial queries that solve real-world problems. It first gives you a background in vector-, raster-, and topology-based GIS, and then quickly moves into analyzing, viewing, and mapping data. Updated for PostGIS 2.x and PostgreSQL 9.x.

Storm Applied

An example-driven guide to using Apache Storm for the real-world tasks associated with processing and analyzing real-time data streams.

D3.js in Action

A practical tutorial for creating interactive graphics and data-driven applications using D3.js, the most powerful web data visualization library available.

JavaScript Application Design

Introduces JavaScript developers to techniques that will improve the quality of their software as well as their web development workflow. This means learning about the tooling, modern libraries, and architectural patterns that enable those improvements.

Barcodes with iOS

The first and only book that comprehensively addresses barcode technology for the iOS developer. It offers an introduction to commonly used formats, such as ISBN and UPC codes, and provides real-world examples that teach you how to integrate code scanning and generation into your apps.

Programming for Musicians and Digital Artists

A complete introduction to programming in the open source music language ChucK. You'll learn the basics of digital sound creation and manipulation while you discover the ChucK language in this easy-to-follow and fun book!

F# Deep Dives

A collection of real-world F# techniques, each written by an expert practitioner. Each chapter presents a new use case where you'll solve a real programming challenge effectively using F# and the functional-first approach.

Soft Skills

A unique guide, offering techniques and practices for a more satisfying life as a professional software developer. Developer and life coach John Sonmez addresses a wide range of important "soft" topics, from career and productivity to personal finance and investing, and even fitness and relationships.

Neo4j in Action

A comprehensive guide to designing, implementing, and querying graph data using Neo4j. Using hands-on examples, you'll learn to model graph domains naturally with Neo4j graph structures and explore the full power of native Java APIs for graph data manipulation and querying.

Node.js in Practice

A collection of 115 thoroughly tested examples and instantly useful techniques guaranteed to make any Node application go more smoothly.

Recent Releases

ArcGIS Web Development

An example-rich tutorial designed to teach developers to use the ArcGIS JavaScript API to build custom GIS web applications.

Spring in Action, Fourth Edition

This hands-on guide to the Spring Framework covers the latest features, tools, and practices, including Spring MVC, REST, Security, Web Flow, and more. A best-seller, now updated for Spring version 4.

PowerShell in Depth, Second Edition

The go-to reference for administrators working with Windows PowerShell. Every major technique, technology, and tactic is carefully explained and demonstrated, providing a hands-on guide to almost everything an admin would do in the shell.

Hello App Inventor!

Introduces young readers to the world of mobile programming—no experience required! Written especially for kids, the book is also perfect for educators or anyone who wants to learn a fast, comfortable way to write Android apps.

CORS in Action

Introduces Cross-Origin Resource Sharing (CORS) from both the server and the client perspective. You'll learn to build apps that can take advantage of APIs hosted anywhere and how to write APIs that expand your products to a wider range of users.

The Responsive Web

An easy-to-read introduction to responsive web design packed with instantly useful tips and techniques, and dozens of examples that show you exactly how to benefit from this valuable approach. You'll learn innovative ways to use what you already know along with design techniques leveraging new HTML5 and CSS3 features.

Hadoop in Practice, Second Edition

Includes 104 tested and instantly useful techniques that will help you conquer big data using Hadoop. This revised edition covers changes and new features in the Hadoop core architecture, including MapReduce 2. Brand new chapters cover YARN and integrating Kafka, Impala, and Spark SQL with Hadoop.

Git in Practice

A collection of 66 tested cookbook-style techniques that will optimize the way you and your team manage your development projects. The book begins with a brief reminder of the core version control concepts you need when using Git and moves on to the high-value features you may not have explored yet.

jQuery UI in Action

A practical guide to using and customizing jQuery UI library components to build rich, user-friendly web applications.

BDD in Action

Teaches you the Behavior-Driven Development model and shows you how to integrate it into your existing development process, no matter what language you use.

Manning Early Access Program

Read a book chapter-by-chapter while it's being written and get the final eBook as soon as it's finished. If you pre-order the pBook, you'll get it long before it's available in stores. Each book has a Forum where you can ask questions, provide feedback, and help shape the final content.


Algorithms of the Intelligent Web, Second Edition (6/9)
Big Data Warehousing (3/13)
Elasticsearch in Action (11/11)
Geoprocessing with Python (9/12)
Gnuplot in Action, Second Edition (9/20)
Hadoop in Action, Second Edition (6/17)
Introducing Data Science (6/9)
MongoDB in Action, Second Edition (12/12)
Real-World Machine Learning (8/10)
Relevant Search (5/12)
Spark GraphX in Action (4/10)
Spark in Action (4/16)
Streaming Data (4/10)
Unified Log Processing (7/17)

Oculus Rift in Action (13/13)

Camel in Action, Second Edition (3/19)
Functional Programming in Java (4/14)
Java Persistence with Hibernate, Second Edition (19/19)
Java Testing with Spock (5/8)
OCP Java SE 7 Programmer II Certification Guide (13/13)
Spring Boot in Action (7/7)

Learn ConfigMgr 2012 in a Month of Lunches (15/23)
RavenDB in Action (10/10)

Anyone Can Create an App (9/29)
Apache Cordova in Action (12/12)
Ionic in Action (10/10)
iOS Development with Swift (6/18)

Akka in Action (14/15)
Clojure in Action, Second Edition (11/11)
Functional Programming in JavaScript (3/8)
Functional Reactive Programming (9/14)
Go in Action (9/9)
Go in Practice (5/10)
Grokking Functional Programming (6/16)
Hello Raspberry Pi! (8/8)
Netty in Action (16/16)
Practical Probabilistic Programming (11/12)
RabbitMQ in Depth (11/14)
SBT in Action (12/12)
Scalatra in Action (13/13)
The Programmer's Guide to Apache Thrift (15/18)
The Little Elixir & OTP Guidebook (4/11)

Agile Metrics in Action (10/10)
Amazon Web Services in Action (10/14)
Docker in Action (9/12)
Docker in Practice (7/12)
Functional and Reactive Domain Modeling (6/12)
Grokking Algorithms (8/10)
Learn Git in a Month of Lunches (20/20)
Mesos in Action (3/10)
OpenStack in Action (12/12)
Reactive Application Development (4/13)
Reactive Design Patterns (12/17)
Re-Engineering Legacy Software (7/10)
Software Development Metrics (6/6)

AngularJS in Depth (5/11)
Building the Web of Things (5/11)
Design for the Mind (4/10)
Express.js in Action (11/12)
Getting MEAN with Mongo, Express, Angular, and Node (10/10)
Go Web Programming (7/11)
hapi.js in Action (4/12)
Irresistible APIs (4/10)
jQuery in Action, Third Edition (15/15)
Meteor in Action (12/12)
Node.js in Action, Second Edition (3/14)
Rails 4 in Action (15/15)
Reactive Web Applications (7/11)
Sails.js in Action (4/17)
Secrets of the JavaScript Ninja, Second Edition (4/18)
SPA Design and Architecture (9/9)
Web Components in Action (4/8)
Manning in the News

Here's the latest about Manning books and authors. Read more Manning news.

September 14-17, 2015: Meet Benjamin Muschko of Gradle in Action at SpringOne 2GX 2015, in Washington, D.C., CA.

June 11-12, 2015: Meet Benjamin Muschko of Gradle in Action at Gradle Summit, in Santa Clara, CA.

June 7, 2014: Meet Sean Allen of Storm Applied at NYC Storm Meetup, in New York City.

June 4, 2014: Meet Doug Turnbull of Relevant Search at Lucene Solr London User Group Meetup, in London, UK.

May 31 - June 3 : Meet Andrew Psaltis of Streaming Data at Berlin Buzzwords, in Berlin, Germany.

May 10-12: Meet Petar Zečević of Spark in Action at JavaCro'15, in Rovinj, Croatia.

May 5-7: Meet Petar Zečević of Spark in Action at Strata + Hadoop World, in London, UK.

April 23-24: Meet Saša Jurić of Elixir in Action at ElixirConf 2015, in Krakow, Poland.

April 23: Meet Stephan Hochhaus of Meteor in Action at Javascript conference Belgium, in Bruges, Belgium.

April 15-16: Meet Andrew Psaltis of Streaming Data at ApacheCon North America, in Austin, TX.

April 14-15: Meet Gavin Roy of RabbitMQ in Depth, and Steve Klabnik of Rails 4 in Action at POSSCON, in Columbia, SC.

March 27: Meet Radu Gheorghe of Elasticsearch in Action at BigData Romanian Tour: Cluj-Timisoara-Bucuresti, in Cluj-Napoca, Romania.

March 25-27: Meet Regina O. Obe, and Leo S. Hsu of PostGIS in Action, Second Edition at PGConf US 2015, in New York City.

March 9-12: Meet Regina O. Obe, and Leo S. Hsu of PostGIS in Action, Second Edition at FOSS4GNA 2015, in San Francisco, CA.

February 26-27: Meet Jamie Allen of Reactive Design Patterns, Alvaro Videla of RabbitMQ in Action, Runar Bjarnason of Functional Programming in Scala, Manuel Bernhardt of Reactive Web Applications with Play, Tomas Petricek of F# Deep Dives at Lambda Days, in Krakow, Poland.

November 20-21, 2014: Meet Jan Jongboom of Firefox OS in Action at JSConf.Asia, in Singapore.

November 13-14, 2014: Meet Trey Grainger of Solr in Action at Lucene/Solr Revolution 2014, in Washington, DC.

November 10-14, 2014: Meet Guillaume Laforge of Groovy in Action, Second Edition and John Ferguson Smart of BDD in Action at Devoxx Belgium, in Antwerp, Belgium.

November 1, 2014: Meet Rick Umali of Learn Git in a Month of Lunches at New England Drupal Camp, in Providence, RI.

October 24-26, 2014: Meet Jan Jongboom of Firefox OS in Action at Mozilla Festival 2014, in London, UK.

October 11-12, 2014: Meet Craig Berntson of Continuous Integration in .NET at Silicon Valley Code Camp, in Los Altos Hills, CA.

October 2-3, 2014: Meet Oliver Drobnik of Barcodes with iOS at Mobiconf, in Krakow, Poland.

September 28-October 2, 2014: Meet Mike McQuaid of Git in Practice, Raoul Urma and Alan Mycroft of Java 8 in Action, Alex Holmes of Hadoop in Practice, Second Edition, Reza Rahman and Ryan Cuprak of EJB3 in Action, Second Editions, at JavaOne 2014, in San Francisco, CA.

September 25, 2014: Meet Alexander Dean of Unified Log Processing at Zalando Talk and Snowplow with Alex Dean, in Berlin, Germany.

September 18-19, 2014: Meet Nico Bevacqua of JavaScript Application Design at From The Front, in Bologna, Italy.

September 13-14, 2014: Meet Jan Jongboom of Firefox OS in Action at JSConf.EU, in Berlin, Germany.

September 12-13, 2014: Meet TJ VanToll of jQuery UI in Action at jQuery Chicago 2014, in Chicago, IL.

August 27-29, 2014: Meet Craig Berntson of Continuous Integration in .NET at DevLink, in Los Altos Hills, CA.

August 27-29, 2014: Meet Nico Bevacqua of JavaScript Application Design at Frontend Conference Zurich, in Zurich, Switzerland.

August 26-29, 2014: Meet Joachim Haagen Skeie of Ember.js in Action at Ember Fest 2014, in Barcelona, Spain.

August 16, 2014: Meet Jan Jongboom of Firefox OS in Action at LvivJS 2014, in Lviv, Ukraine.

Manning user accounts

What is Functional Programming?
Functional programming is a software development style with emphasis on the use functions. It requires you to think a bit differently about how to approach tasks you are facing. In this article, based on the book Functional Programming in JavaScript, I will introduce you to the topic of functional programming.

Reactive Application Development: The Big Ball of Mud
In this article, excerpted from our book, Reactive Application Development, we explain what is meant by “the big ball of mud” and talk about what developers can do to avoid that state.

Go in Action: Benchmarking
In this article, excerpted from the book Go in Action, we will look at a set of benchmark functions that reveal the fastest way to convert an integer value to a string.

The need for classification
In this article, excerpted from the book Algorithms of the Intelligent Web, we discuss classifications systems and their value for your applications.

Node.js in Action: Relational database management systems
Developers have many relational database options, but most choose open source databases, primarily because they're well supported, they work well, and they don't cost anything. In this article, we'll look at MySQL, one of the two most popular full-featured relational databases.

hapi.js in Action: Introducing Joi
In this article, I'll talk about Joi, a Node module for data validation that can validate any kind of data from simple scalar data types such as strings, numbers or booleans, or complex values consisting of several levels of nested objects and arrays.

Apache Thrift and Ruby
In this article, excerpted from The Programmer's Guide to Apache Thrift, we will install Apache Thrift support for Ruby and build a simple Ruby RPC client and server.

Functional Reactive Programming: In search of the mythical von Neumann machine
In this article we'll explain what the von Neumann machine is, and why it is the source of some assumptions that are not only unhelpful in our programming, but they also turn out to be largely false.

Introduction to spatial reference systems
In order to effectively work with coordinate systems you need to understand why there are so many of them in the first place and how to select an appropriate one for your purposes. In this article, based on my book Geoprocessing with Python, I give you some background information about spatial reference systems..

Grokking Algorithms: Dijkstras Algorithm
In this article, based on the book Grokking Algorithms, I'll discuss how to find the fastest path between two points using an algorithm called dijkstra's algorithm.

Overview of the data science process
In this article, I'll discuss the six steps involved in the typical data science process.

Express.js: How to version your API
What if you decide down the road that you want to update your API without having all of the people who use your API have to update their code? In this article, excerpted from Express.js in Action, I'll talk about versioning your API.

SPA Design and Architecture: The Communication Process
In this article, I discuss some of the basics within the context of a single page application.

Initializing a Spring Boot project with Spring Initializr
The Spring Initializr is ultimately a web application that can generate a Spring Boot project structure for you. In this article, we take a look at it.

Practical Probabilistic Programming: Bayesian Networks
In this article, I'll talk about Bayesian networks, which are the standard framework for encoding asymmetric relationships using directed dependencies.

What is API First?
In this article, I explain what API First is and how existing APIs are generally created.

JavaScript: Enter the Ninja
In this article, I explore the core principles of JavaScript and take a look at some of the most-popular JavaScript libraries.

Design for the Mind: What the Hell is a Heuristic?
People frequently use heuristics to make decisions; you should use them to your advantage in your design. Here are six common heuristics with examples of how to address them in digital design.

How to start developing Spark applications in Eclipse
In this article, you will learn to write Spark applications using Eclipse, the most widely used development environment for JVM-based languages.

The Limitations of the IoT and how the Web of Things Can Help
In this article, we define the Internet of Things and its limitations and describe how the Web of Things can.

Spock: the groovier testing framework
If you always thought that JUnit (and/or TestNG) was the only solution for Java unit tests, guess again! Spock is an emerging test framework written in Groovy that can test both Java and Groovy code. It even includes its own Mocking mechanism. In this article adapted from Java Testing with Spock, I will give you a high level overview of Spock and its capabilities.

What is Sails?
Sails makes it easy to create the back-end server that your front end needs to achieve an application's purpose. In this article, I talk about how Sails does this.

Understanding the concept of recursion
There are many important algorithms that use recursion, so it is important to understand the concept. In this article, we explore the concept of recursion.

How are OpenStack components related?
If you'll be working with OpenStack on a high level, even if you're simply responsible for a vendor-managed solution, this article will help you understand the collection of interacting components that make up an OpenStack deployment.

Exploring the Go template engine
Go's template engine is like a hybrid between a logic-less template engine and an embedded logic template engine. In this article, we'll talk about why Go's template engine is an interesting and powerful one.

Integrating External APIs into your Meteor application
Many applications rely on external APIs to retrieve data. If APIs must be called from the server, calling the API usually takes longer than executing the method itself. Let's talk about how to integrate an external API via HTTP.

SPA in a nutshell
In this article, you'll get a clear understanding of what exactly a single page application design is and what its benefits are.

Interacting with AWS to turn system diagrams into reality
In this article, you will get an overview of tools that are available to make calls to the AWS API.

Oculus SDK: drift correction and prediction
In this article, I will talk about two bits of functionality in the Oculus SDK that you should be aware of: drift correction and prediction.

Creating programs in Python
Programs allow you to create, save and run more complex sets of instructions. You can easily edit your programs and run them again. In this article, we'll you walk through creating a Python program.

The three types of mobile experiences
It is important to understand there are several ways to build applications for mobile devices, and each has strengths and weaknesses. In this article, we'll look at each of these in detail to clarify the differences.

Solving an applied relevance problem
How do you solve an applied relevance problem? What process can you define that incorporates both some of the narrower, domain-specific data points that influence your relevance along with Information Retrieval techniques? In this article, we discuss the applied relevance problem.

First steps with GraphX using the Spark Shell
In this article, we will download some sample graph data, and using the Spark Shell, quickly determine which out of a series of papers has been cited the most frequently

What can you do with AWS?
You are able to run any application on AWS by using one or a combination of different services. The four examples we present in this article will give you an idea of what you can do with AWS.

Barcodes with iOS: Introducing Core Image
The Core Graphics framework is written in pure C, meaning that it's impossible to use CGImage instances directly with UIKit. Apple created UIImage as an Objective-C wrapper class around CGImage to bridge the gap. We explore Core Image in this article.

There are over 300 articles, green papers, and sample chapters in the Free Content Center, with more added continuously.

Discover the Free Content Center.

Manning uses the oXygen XML Editor
"oXygen has all the reviewing tools our authors and editorial staff depend on, with change-tracking and commenting and many features needed behind the scenes. Tools that are so powerful and so easy to learn are rare."
Benjamin Berg
XML Team Manager, Manning Publications

May 22, 2015

May 22, 2015