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

Deploying with JRuby 9k »

Deploy using the JVM's high performance while building your apps in Ruby. Explore common deployment scenarios: consolidate an MRI-based Ruby deployment onto a single JVM process, or port a Rails application to JRuby, get it into production, and keep it running. This new edition has new chapters on Puma, performance tuning, and Java integration, updated to JRuby 9k, Rails 4, and JDK 8.

May PragPub »

  • Ten Apple Watch Development Tips
  • Testing Native Code with QuickCheck
  • An Elixir Fix for Windows File Names
  • Ted Nelson on the Road to Xanadu

Plus: Swaine’s World, Rothman and Lester, New Manager’s Playbook, Antonio on Books, The BoB Pages, and How to Thrive in an Unknowable Future

Recently Released:

 

Coming Up Next:

  • Data Science Essentials in Python: Collect → ​Organize​ → ​Explore​ → ​Predict​ → Value​
  • Fire in the Valley AUDIO BOOK
  • The Way of the Web Tester: Automate Your Tests, Reduce Bugs, Increase Quality
Deploying with JRuby 9k
May 04, 2016

It's May the Fourth! Boy that sounds familiar. Almost like it's part of some greeting, "May the Fourth Be..." something. Something powerful. Forceful, even.

Well, there's power in... deployment strategies! It's not a phrase that rolls trippingly off the tongue, but no matter how well you code, your system is at the mercy of the deployment environment. The good news is that there are some great options for you.

JRuby 9k lets you write code in Ruby and deploy using the powerful JVM environment that your company probably already has in place. See how to deploy with class in Deploying with JRuby 9k: Deliver Scalable Web Apps Using the JVM, now available in beta from pragprog.com/book/jkdepj2.

April showers bring May flowers, and May brings... another issue of PragPub magazine! Read on for details.

Enjoy!

Deploying with JRuby 9k: Deliver Scalable Web Apps Using the JVM

JRuby is a fast, scalable, and powerful JVM language with all the benefits of a traditional Ruby environment. JRuby deployments have fewer moving parts and consume less memory than traditional Ruby. With this book, you can now use JRuby in the real world to build high-performance, scalable applications.

Deploying your apps on the JVM requires some new approaches. Start by creating a JRuby microservice that takes advantage of the JVM's native concurrency. Then use Docker to build a virtual production environment that's a stable, reproducible place to explore JRuby deployment. Next, port an existing Rails application to JRuby, preparing the app to take advantage of the JVM platform—all while keeping everything that's friendly and familiar to Ruby developers. Deploy the Rails app to Docker with a multi-threaded Puma server to Heroku or your own private cloud.

Take advantage of powerful Java libraries. See how JRuby fits into the enterprise by switching your app to use TorqueBox, an all-in-one JRuby environment that includes built-in support for messaging, scheduling, and daemons—perfect for handling the big jobs. Finally, take a deep dive into JVM performance tuning and set up a continuous deployment environment with Travis CI.

Now available in beta from pragprog.com/book/jkdepj2.

May PragPub Magazine

This month in PragPub we cover a lot of ground, from Apple Watch to Windows, from legacy C code and shell scripts to Haskell and Elixir programming, from testing code to managing programmers to strategies for dealing with an uncertain world.

Aaron Bedra introduces a more advanced form of testing that can be extremely useful and he does it using a higher level language, Haskell, to test some lower-level legacy C code. Although you’ll learn a bit about Haskell from the article, the powerful testing technique it introduces can be used in your language of choice.

Onorio Catenacci also uses a modern language to solve a legacy problem: the age-old problem of Windows file names. If you work in the Windows world, sooner or later you’re going to trip over the problem of paths that have spaces or that are longer than eight characters. Onorio is exploring the Elixir language these days and the problem cropped up while he was improving the functionality of the Elixir Release Manager (exrm) on Windows. So he built a tool to solve the problem, and his report on his experience is a hands-on introduction to working with Elixir.

Jeff Kelley has been developing for Apple Watch for some time now and has discovered some best practices and gotcha avoidance tips for Watch developers. He shares them with us this month.

But there’s more to the life of a programmer than writing code. Rothman and Lester offer up some advice on what to do when your job is making you unhappy, Marcus Blankenship gives advice on how not to make your employees unhappy on the job, and Derek Sivers advises on how to deal with an uncertain future.

Also, Mike continues his series on Ted Nelson, Antonio Cangiano queues up all the new tech books, and we toss you another challenging puzzle. We hope you enjoy it all.

Now available from theprosegarden.com.

Did You Know?

You can synch your ebooks amongst your devices via Dropbox, including updates! Just login to your account on pragprog.com, edit your profile, and connect your dropbox account. See our FAQ for details.

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.

Andy & Dave
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