Manning Logo Ordering    Shopping Cart   

New Releases

D3.js in Action

ePub + Kindle coming March 15, 2015

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.

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.

Recent Releases

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.

Functional Programming in Scala

A serious tutorial for programmers looking to learn FP and apply it to the everyday business of coding. The book guides readers from basic techniques to advanced topics in a logical, concise, and clear progression.

Java 8 in Action

Every new version of Java is important, but Java 8 is a game changer. A clearly written guide to the new features of Java 8, this book covers lambdas, streams, and functional-style programming in Java.

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 (3/9)
Big Data (18/18)
Elasticsearch in Action (11/11)
Geoprocessing with Python (6/17)
Gnuplot in Action, Second Edition (6/20)
Hadoop in Action, Second Edition (6/14)
Introducing Data Science (3/9)
MongoDB in Action, Second Edition (12/12)
PostGIS in Action, Second Edition (17/17)
Real-World Machine Learning (7/10)
R in Action, Second Edition (22/22)
Spark GraphX in Action (2/10)
Storm Applied (9/9)
Streaming Data (4/10)
Unified Log Processing (5/17)

Oculus Rift in Action (13/13)
Unity in Action (12/12)

Groovy in Action, Second Edition (20/20)
Java Persistence with Hibernate, Second Edition (19/19)
Java Testing with Spock (3/8)
OCP Java SE 7 Programmer II Certification Guide (13/13)
Spring Boot in Action (2/7)

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

Apache Cordova in Action 6/11)
Firefox OS in Action (5/13)
Ionic in Action (6/10)
iOS Development with Swift (4/18)

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

Chef in Action (4/14)
Continuous Improvement: Measuring and enhancing the performance of Agile teams (7/10)
Docker in Action (5/12)
Functional and Reactive Domain Modeling (3/12)
Grokking Algorithms (7/10)
Learn Git in a Month of Lunches (17/20)
OpenStack in Action (8/13)
Reactive Application Development (3/13)
Reactive Design Patterns (10/17)
Re-Engineering Legacy Software (4/10)
Software Development Metrics (6/6)

AngularJS in Action (8/8)
AngularJS in Depth (5/11)
Express.js in Action (8/11)
Getting MEAN with Mongo, Express, Angular, and Node (10/10)
Go Web Programming (2/10)
Hapi.js in Action (3/12)
jQuery in Action, Third Edition (15/15)
Meteor in Action (10/12)
Rails 4 in Action (15/15)
Reactive Web Applications with Play (3/11)
SPA Design and Architecture (7/10)
Web Components in Action (4/8)
Manning in the News

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

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: Meet Jan Jongboom of Firefox OS in Action at JSConf.Asia, in Singapore.

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

November 10-14: 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: Meet Rick Umali of Learn Git in a Month of Lunches at New England Drupal Camp, in Providence, RI.

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

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

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

September 28-October 2: 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: Meet Alexander Dean of Unified Log Processing at Zalando Talk and Snowplow with Alex Dean, in Berlin, Germany.

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

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

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

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

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

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

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

July 21: Meet Aurelio De Rosa of jQuery in Action, Third Edition at London Web Standards, in London, UK.

June 29-July 3: Meet Itamar Syn-Hershko of RavenDB in Action at Sela Developers Practice, in Tel-Aviv, Israel.

June 26-28: Meet Aurelio De Rosa of jQuery in Action, Third Edition at Dutch PHP Conference, in Amsterdam, Netherlands.

June 23-25: Meet Tim Hawkins and Douglas Garrett of MongoDB in Action, Second Edition at MongoDB World 2014, in NYC.

June 19-20: Meet Guillaume Laforge of Groovy in Action, Second Edition at GOTO Amsterdam, in Amsterdam, Netherlands.

June 19: Meet Nina Zumel, John Mount of Practical Data Science with R at Bay Area Analytics Meetup , in San Francisco, CA.

June 17: Meet Nina Zumel, John Mount of Practical Data Science with R at The Berkeley R Language Beginner Study Group, in Berkeley, CA.

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

June 12-13: Meet Raoul-Gabriel Urma of Java 8 in Action at Devoxx UK, in London, UK.

June 11-13: Meet Nicolas Bevacqua of JavaScript Application Design and TJ VanToll of jQuery UI in Action at QCon New York 2014, in New York, NY.

June 11-13: Meet Timothy Ward of Enterprise OSGi in Action at OSGi DevCon 2014, in New York, NY.

June 5: Meet Jeff Hicks of PowerShell in Depth, Second Edition at Philadelphia PowerShell User Group, in Philadelphia, PA.

June 4-6: Meet Claudio Martella and Dionysis Logothetis of Giraph in Action at Budapest DW Forum, in Oslo, Norway.

June 2-6: Meet Martin Logan of Erlang and OTP in Action, Tomas Petricek of F# Deep Dives, and Mark Seemann of Dependency Injection in .NET at NDC Oslo, in Oslo, Norway.

Manning user accounts

Solving search problems with Elasticsearch
As a developer, you know that search engines are confronted with challenges. In this article, we'll talk about Elasticsearch's approach to these challenges.

How to Generate Sky Visuals using Texture Images
Visuals are important in a game because you don't awnt your projects to end up with just blank boxes sliding around. In this article, I'll show you how to create a sky visual using a skybox.

JavaScript Application Design: Picking your build tool
In this overview, I will help you understand the differences between the three build tools I use most often in front-end development workflows: grunt, npm, and Gulp.

Interaction Patterns: Request/Response
Andrew G. Psaltis, author of Streaming Data, explains the concept of the Request/Response pattern and how you can collect data using it.

Comparing Spock and Junit
Spock is also a superset of the defacto testing framework for Java: Junit. In this article, excerpted from Java Testing with Spock, we will compare Spock with Junit.

AngularJS: Display Stories with ngRepeat
Wouldn't it be nice if we could define a template once and then just repeat it over and over for each item in the collection? This is exactly the role that ngRepeat was designed to play. This article, excerpted from AngularJS in Action, walks you through an example.

Meteor in Action: Authenticating users with 0Auth
Meteor ships with multiple authentication providers. All of them are based on oAuth, a complex way to pass authentication data from one site to another. In this article, excerpted from Meteor in Action, we show you how oAuth works.

Optimizing xy data selection with quadtrees
The following excerpt is from D3.js in Action's chapter on Big Data Visualization. This chapter focuses on techniques for using D3 to represent thousands of points of data rather than the dozens or hundreds typically seen in D3 examples. One of those techniques is to leverage D3's quadtree search function to improve spatial search, which this excerpt explores in detail.

Examining Spring Boot essentials
Spring Boot brings a great deal of magic to Spring application development. But there are four core tricks that it performs. In this article, excerpted from Spring Boot in Action, we introduce those core tricks.

Go in Action: Exploring the Work Package
In this article we share section 7.3 from the Go in Action book. This section explores a package named work that provides a concurrency pattern for pooling a set of goroutines to perform and control work.

Practical Probabilistic Programming: Open universe situations with unknown number of objects
An open universe situation is where you don't know how many objects there are. This article, excerpted from Practical Probabilistic Programming, focuses on number uncertainty, which is addressed by variable size arrays.

Practical Probabilistic Programming: Your First Model
In this article, excerpted from Practical Probabilistic Programming by Avi Pfeffer, we'll build the simplest Figaro model possible.

How does FRP work?
By Stephen Blackheath and Anthony Jones, Functional Reactive Programming. This article introduces functional reactive programming and explains what problems it solves, why those problems need to be solved and how it solves them.

Introduction to Graphs
In this article Aditya Y. Bhargava, Grokking Algorithms introduces graphs (what they are) Hint: they don't involve an X or Y axis). Then he will show you your first graph algorithm.

Thinking about the future: What are your goals?
When it comes to career, most people don't give enough thought to what to focus on and, as a result, their steps lack purpose or direction. This article, excerpted from Soft Skills: The software developer's life manual by John Sonmez, talks about how to set goals and track them.

Congratulations - you're a (horrible) mobile developer!
You may know the fundamentals of building a mobile application, but that doesn't mean you know how to build a good one. Here's good example of bad UI.

Case Study: Moving To The Pull Request Workflow & Integrating Quality Engineers On The Team For Better Software Quality
Here's a real-world scenario that will show you how to apply source control data toward continuous improvement.

Why a build tool?
Since you can automate a build with a shell script, why have a specific tool for the purpose? In this article, we talk about why by providing a couple of real-life examples.

Go: A practical introduction to slices
With Go, there are several ways you can store your data in memory. Slices, however, might be a completely new concept to you. In this article, we'll introduce slices and talk about what they let you do.

What Probabilistic Programming is and How to Use it
Until recently, probabilistic reasoning systems have been limited in scope, and have been hard to apply to many real world situations. Probabilistic programming is a new approach that makes probabilistic reasoning systems easier to build and more widely applicable.

The pros and cons of SPAs
Here's a brief look at some things to bear in mind about SPAs when designing a solution, and how to decide whether a full SPA is right for your project.

Arrays vs. lists
There are two basic ways to store items in memory--arrays and lists. In this article, based on chapter 2 of Grokking Algorithms, you'll find out which method is more practical for your programming purposes.

The Marketplace and how to deal with CSP on Firefox OS devices
If you've decided to develop in Firefox OS, you should know that the marketplace poses some constraints on your application that you will run into when publishing your app. In this article, we cover some of those constraints.

JavaScript Application Design
Committing to a build technology is hard. It's an important choice and you should treat it as such. In this article, you'll learn about three build tools used most often in front-end development workflows: Grunt, npm, and Gulp.

A Quick Sweep through C#
Each new version of C# has added significant features to reduce developer angst, but always in a carefully considered way, and with little backward incompatibility. In this greenpaper, based on C# in Depth, Third Edition, author Jon Skeet gives an overview what C# can do.

The Browser Binding with a CMIS Repository
CMIS 1.0 defines two bindings, the Web Services binding and the AtomPub binding; and CMIS 1.1 adds a third, the Browser binding. In this article, based on chapter 11 of CMIS and Apache Chemistry in Action, the authors discuss Browser binding.

There are over 200 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

March 5, 2015

March 5, 2015