Learning Node
Moving to the Server-Side
Publisher: O'Reilly Media
Final Release Date: August 2012
Pages: 396

Take your web development skills from browser to server with Node—and learn how to write fast, highly scalable network applications on this JavaScript-based platform. With this hands-on guide, you’ll quickly master Node’s core fundamentals, gain experience with several built-in and contributed modules, and learn the differences and parallels between client- and server-side programming.

Get up to speed on Node’s event-driven, asynchronous I/O model for developing data-intensive applications that are frequently accessed but computationally simple. If you’re comfortable working with JavaScript, this book provides numerous programming and deployment examples to help you take advantage of server-side development with Node.

  • Explore Node’s unique approach to asynchronous development
  • Build sample Node applications with the Express framework and Connect middleware
  • Use NoSQL solutions such as Redis and MongoDB—and explore Node’s relational database modules
  • Work with PDF files, serve HTML5 media, and create graphics with Canvas
  • Set up bidirectional communication between browser and server with WebSockets
  • Learn in-depth practices for debugging and testing your applications
  • Deploy Node applications in the cloud or on your own system

"Learning Node will make it easy for someone from any programming background to get a grip on Node.js and build amazing projects."

—Tom Hughes-Croucher, co-author of Node: Up and Running (O’Reilly)

Table of Contents
Product Details
About the Author
Colophon
Recommended for You
Customer Reviews

REVIEW SNAPSHOT®

by PowerReviews
oreillyLearning Node
 
4.0

(based on 6 reviews)

Ratings Distribution

  • 5 Stars

     

    (4)

  • 4 Stars

     

    (0)

  • 3 Stars

     

    (1)

  • 2 Stars

     

    (0)

  • 1 Stars

     

    (1)

83%

of respondents would recommend this to a friend.

Pros

  • Concise (4)
  • Easy to understand (4)
  • Accurate (3)
  • Helpful examples (3)
  • Well-written (3)

Cons

    Best Uses

    • Intermediate (4)
    • Student (3)
      • Reviewer Profile:
      • Developer (5)

    Reviewed by 6 customers

    Sort by

    Displaying reviews 1-6

    Back to top

     
    5.0

    Everything important in one book

    By Tomas Jurman

    from The Czech Republic

    About Me Developer

    Verified Buyer

    Pros

    • Accurate
    • Concise
    • Easy to understand
    • Helpful examples
    • Well-written

    Cons

      Best Uses

      • Intermediate
      • Student

      Comments about oreilly Learning Node:

      The book was a good starting point for me.

       
      5.0

      Excellent writing with brief examples

      By mani

      from India

      About Me Developer

      Pros

      • Accurate
      • Concise
      • Easy to understand
      • Helpful examples
      • Well-written

      Cons

        Best Uses

        • Intermediate
        • Student

        Comments about oreilly Learning Node:

        excellent book

        (0 of 2 customers found this review helpful)

         
        3.0

        Sample Code is HUUUUGGGEEEE!!!

        By The Greatest Man Alive.

        from Denver, CO

        Pros

          Cons

          • Not comprehensive enough
          • Sample Code Download Huge

          Best Uses

            Comments about oreilly Learning Node:

            Would it kill ya to separate the example code into smaller chunks...

            (4 of 17 customers found this review helpful)

             
            1.0

            This book is not tutorial

            By Ramo

            from Bangalore,India

            About Me Developer

            Verified Reviewer

            Pros

              Cons

              • Not comprehensive enough

              Best Uses

              • Student

              Comments about oreilly Learning Node:

              This book is not tutorial, It tried to explain documentation. Better to read documentation of node than this book.

              (3 of 5 customers found this review helpful)

               
              5.0

              Made me a better "Noder"

              By Devendra

              from Recife, Brazil

              About Me Developer

              Verified Reviewer

              Pros

              • Accurate
              • Concise
              • Easy to understand

              Cons

                Best Uses

                • Expert
                • Intermediate

                Comments about oreilly Learning Node:

                Learning Node by Shelley Powers is timely, and should be on the reading list of every JavaScript and server-side developer.

                I'll briefly delve into things that stood out to me in each chapter of the book.

                Chapter 1 – Reading this chapter is a must if you don't understand the asynchronous nature of Node. It also covers building it from source for Linux, and using WebMatrix to develop and run Node applications with IIS.

                Chapter 2 – Shows how to use command line REPL (read-eval-print loop) to quickly test code, inspect objects, and as an editor. Imagine that!

                Chapter 3 – Covers the Node core objects and modules. In particular, the global namespace object, process.nextTick to asynchronously execute a callback, util.inherits to implement inheritance, and EventEmitter to emit events.

                Chapter 4 – Covers the Node module system. Covers require and how it searches for modules (.js, .node or .json), delete require.cache to reload a module from source, how to create your own custom module, and expose its objects and functions using export. It also covers often used modules such as npm (installed with Node) for package management, Optimist for options parsing, and Underscore.

                Chapter 5 – Delves deeper into the asynchronous nature of Node, covering control flow, exception handling, and asynchronous patterns. It then discusses the Step and Async modules that implement those patterns. It also briefly discusses Node coding style.

                Chapters 6, 7, 8 – Discuss web development middleware and frameworks such as Connect and Express, and templating modules that work in tandem with Express, such as EJS and Jade.

                Chapter 9, 10, 11 -Discuss the different means of persisting data, in a key-value store such as Redis, document-centric database such as MongoDB, or a relational database such as MySQL, either directly or using the Sequelize ORM.

                Chapter 12 – Discusses manipulating PDF by executing external tools such as PDF Toolkit, creating drawings using the canvas module, and streaming videos.

                Chapter 13 – Discusses the popular Socket.IO library that you can leverage for bidirectional communication between server and the Browser.

                Chapter 14 – Discusses unit testing, acceptance testing, and performance testing. Tools and modules covered include Apache Bench (ab), nodeunit, Selenium, and soda. Also discussed is the nodemon module that can be used to restart the application when a script is changed.

                Chapter 15 – Discusses TLS/SSL, HTTPS for securing data communication, saving password as hash using the crypto module, authentication using the passport module, and authentication with Twitter using the passport-twitter Passport strategy module. It also discusses writing secure code by avoiding eval, validating data using a module such as node-validator, and running external scripts in a sandbox using the vm module.

                Chapter 16 – Discusses deployment of applications to a server, or to the various cloud services such as Azure (using Cloud9 IDE), Joyent, Heroku, Amazon EC2, and Nodejitsu. It discusses modules such as Forever to recover from crashes, and integration with Apache. The discussion on clustering with Node is very brief and does not discuss the experimental cluster module.

                I am glad the author took the time to write this book, I am a better "Noder" because of it. I'd like to thank O'Reilly Media for giving me the opportunity to review this book as part of the blogger review program.

                (11 of 12 customers found this review helpful)

                 
                5.0

                "Concise, Code-Centric and Thorough"

                By Brent From D.C.

                from D.C.

                About Me Developer

                Verified Reviewer

                Pros

                • Concise
                • Easy to understand
                • Helpful examples
                • Well-written

                Cons

                  Best Uses

                  • Expert
                  • Intermediate

                  Comments about oreilly Learning Node:

                  This is one of the better O'Reilly Books purchases that I've made recently - I started out with an "intermediate" understanding of Javascript and this book has really helped demystify NodeJS for me.

                  The really good: The writing style and content hits all three major points I look for in a development instruction book; Concise - the author gets right to the point explaining the most relevant details about the topic at hand, Code-Centric - explanations are paired with functional code demonstrating the topic, and Thorough - the book in its entirety covers all of the topics I expect it to and more. Overall, I would recommend this book without reservation to any developer looking to get a handle on Node in a hands-on way.

                  The somewhat less good: I didn't love the choice of MongoDB for the NoSQL section (would have preferred Couch or somethig else), but I understand the decision (author says it was much faster to explain Mongo than Couch).

                  Other comments: Compared to other "Learning X" titles from O'Reilly, I feel that this one pre-requires a fair working knowledge of Javascript, where many of the other "Learning X" titles that I've read could be understood by any reasonably intelligent and well-rounded person. You don't need to know anything about *Node* and you don't need to be a JS Ninja, but the material might be a little daunting if you don't know any Javascript at all...for my purposes (and probably for most people who would get this book), I felt that skipping over the "Baby's First Javascript" material made the pace perfect, but if you have never worked with JS, you should probably run through a quick primer before you dive into this.

                  Displaying reviews 1-6

                  Back to top

                   
                  Buy 2 Get 1 Free Free Shipping Guarantee
                  Buying Options
                  Immediate Access - Go Digital what's this?
                  Ebook: $29.99
                  Formats:  DAISY, ePub, Mobi, PDF
                  Print & Ebook: $38.49
                  Print: $34.99