Having trouble reading this email? View it in your browser.
New This Week

Ruby Performance Optimization »

See exactly what makes Ruby and Rails code slow, and how to fix it. Alex Dymo will guide you through the perils of memory and CPU optimization, profiling, measuring, performance testing, garbage collection, and tuning. Make your code run orders of magnitude faster today!

December PragPub »

  • Just Enough Clojure
  • Practical Recursion Schemes
  • A Day at the Races
  • Functional Snippets

Plus: On Tap, Swaine’s World, Rothman and Lester, New Manager’s Playbook, Antonio on Books, Pragmatic Bookstuff, Solution to Pub Quiz, Our Back Pages

Recently Released:

 

Coming Up Next:

  • Developing for Apple Watch, Second Edition, in beta
Ruby Performance Optimization
December 02, 2015

You don't have to accept slow Ruby or Rails performance. Learn how to write faster Ruby code in Ruby Performance Optimization: Why Ruby Is Slow, and How to Fix It, a comprehensive guide to modern Ruby optimization, now in print and shipping from pragprog.com/book/adrpo.

And since December is now upon us, head on over to the latest issue of PragPub magazine. See below for details.

Ruby Performance Optimization: Why Ruby Is Slow, and How to Fix It

This is the first book ever that consolidates all the Ruby performance optimization advice in one place. It's your comprehensive guide to memory optimization, CPU optimization, garbage collector tuning, profiling, measurements, performance testing, and more.

You'll go from performance rookie to expert. First, you'll learn the best practices for writing Ruby code that's easy not only on the CPU, but also on memory, and that doesn't trigger the dreaded garbage collector. You'll find out that garbage collection accounts for 80% of slowdowns, and often takes more than 50% of your program's execution time. And you'll discover the bottlenecks in Rails code and learn how selective attribute loading and preloading can mitigate the performance costs of ActiveRecord.

As you advance to Ruby performance expert, you'll learn how to profile your code, how to make sense out of profiler reports, and how to make optimization decisions based on them. You'll make sure slow code doesn't creep back into your Ruby application by writing performance tests, and you'll learn the right way to benchmark Ruby.

And finally, you'll dive into the Ruby interpreter internals to really understand why garbage collection makes Ruby so slow, and how you can tune it up.

Now in print and shipping from pragprog.com/book/adrpo.

December PragPub Magazine

The functional programming paradigm has been around since the earliest days of computing. The first functional programming language, Lisp, was invented by John McCarthy in 1958 specifically for artificial intelligence work. Functional programming proved itself in AI and some other domains but never caught on broadly until recently. Now if you’re not knowledgable about Clojure or Scala or F# or the functional capabilities recently bolted onto other languages, you’re not one of the cool kids.

But we’re not all at the same point in our understanding of the intricacies and capabilities of functional programming. In this month’s PragPub we reach out to opposite ends of the experience spectrum.

Brian Marick offers up the second part of his two-part gentle introduction to functional thinking for object-oriented programmers. Don’t worry, there’s a link to Part 1.

And for a completely different audience, Jared Tobin explores the far reaches of functional thinking in a meaty essay on recursion schemes. By the end of the article, you’ll know all about catamorphisms, anamorphisms, hylomorphisms, and paramorphisms, and what these strange beasts can do for you.

Concluding a year-long series of functional programming snippets in Apple’s Swift language, Chris Eidhof, Wouter Swierstra, and Florian Kugler talk about using enums to make your code’s intentions crystal clear.

We also have a nice acount by Dan Haywood of his experience participating in a programming competition. Can an open source team beat programmers using expensive proprietary products? Are there lessons to be learned from pushing yourself to complete a significant programming project in 24 person-hours? What’s the skinny on Naked Objects? Dan has all the answers.

When two or more people are talking about work, it’s a meeting. Johanna and Andy share their experience in keeping meetings productive, pertinent, and short. Max Schubert, filling in for Marcus Blankenship, details the ways in which you can still use your coding skills for the good of the team after you’ve been promoted to a manager. Antonio Cangiano shares all the good new tech books, we have another puzzle, and an index to all the PragPub issues of 2015.

Speaking of all the issues from 2015, we are now offering this whole year of PragPub, over 500 pages and over 100 articles and columns on programming topics, as a bundle. You can purchase it at theprosegarden.com. Individual back issues, subscriptions, and the current issue can be purchased there, too.

Who Are We?

The Pragmatic Bookshelf publishing imprint is wholly owned by The Pragmatic Programmers, LLC.

Andy Hunt and Dave Thomas founded the company with a simple goal: to improve the lives of developers. We create timely, practical books, audio books, and videos on classic and cutting-edge topics to help you learn and practice your craft.

We are not a giant, faceless, greed-soaked corporation. We're a small group of experienced professionals committed to helping make software development easier.

Don't Get Left Out

Are your friends jealous that you get these spiffy email newsletters and they don't? Clue them in that all they need to do is create an account on pragprog.com (email address and password is all it takes) and select the checkbox to receive newsletters.

Are you following us on Twitter and/or Facebook? Here's where you can find us and keep up with the latest news and commentary, and occasional discounts:

Tell your friends! Tweet this

Follow us on Twitter: @pragprog, @pragpub, Andy @PragmaticAndy and Dave @pragdave.

Dave & Andy
The Pragmatic Programmers

Books • eBooks • PragPub Magazine • Audiobooks and Screencasts
PragProg.com

Manage your subscription using your account, or permanently unsubscribe here.
Sent by the Pragmatic Programmers, LLC. • 2831 El Dorado Pkwy, #103-381 • Frisco TX 75033