LWN.net Logo

This Week's Ruby News - Issue 129

From:  Ruby Weekly <rw-AT-peterc.org>
To:  <lwn-AT-lwn.net>
Subject:  This Week's Ruby News - Issue 129
Date:  Thu, 24 Jan 2013 15:20:54 +0000
Message-ID:  <0618f6a79d6bb9675f313ceb29659df23b6.20130124152039@mail259.us2.mcsv.net>
Archive-link:  Article, Thread

Ruby Weekly - A Weekly Ruby Newsletter
Issue #129 - January 24, 2013


Featured
--------

In Browser Path Matching with JavaScript Makes It Into Rails 4.0
https://github.com/rails/rails/pull/9001

  When debugging routes it can sometimes be difficult to understand exactly
  how the paths are matched. This pull request by Richard Schneeman adds a JS
  based path matching widget to the /rails/info/routes page. Includes a handy
  animated GIF to show off the feature.

Jump Start Sinatra: Up To Speed With Sinatra in a Weekend
http://www.sitepoint.com/books/sinatra1/

  A new book from SitePoint written by Darren Jones. They gave me a copy
  which I've skimmed and it seems pretty good if you want a thorough and up
  to date introduction to Sinatra.

GORUCO 2013: Call for Proposals (New York City, June 8)
http://goruco.wufoo.com/forms/goruco-2013-call-for-propos...

  A popular conference. CFP ends March 14th.

Open Source Rails: A Catalog of Open Source Rails Applications
http://www.opensourcerails.com/


From our Sponsor
----------------

Do you hate editing i18n yaml files?
http://www.localeapp.com/

  What if you never had to open those files again .. Locale is a slick web
  interface for editing and automatically updating your i18n files. No more
  emailing translation files, no more file conversion hassles, no more
  mangled variables. There's no cost for small and open source projects. Try
  it today.


Reading
-------

Tricks for Working With Text and Files in Ruby
https://practicingruby.com/articles/shared/zmkztdzucsgv

  A fine article from the always high quality Practicing Ruby journal.

An Introduction to Mutation Testing with Mutant
http://solnic.eu/2013/01/23/mutation-testing-with-mutant....

  Explains what mutation testing is (and how it can make your code more
  robust) and how to use the Mutant tool to perform mutation testing on your
  Ruby projects. If you're ready to take another step up the TDD ladder,
  start here.

Phusion Passenger 4 Technology Preview: Out-Of-Band Work
http://blog.phusion.nl/2013/01/22/phusion-passenger-4-tec...

  The Out-of-Band Work feature allows one to perform arbitrary long-running
  work outside request cycles without blocking HTTP clients. The primary use
  case is to run the garbage collector in between request cycles so that your
  requests will finish faster because they will be interrupted less by the
  garbage collector.

The new Rack (1.5.0) Socket Hijacking API
http://blog.phusion.nl/2013/01/23/the-new-rack-socket-hij...

Singletons, Threads, and Flexibility
http://www.bleonard.com/blog/2013/01/18/singletons/

  Brian Leonard, Chief Architect and Technical Co-founder of TaskRabbit,
  looks at how we can get around module/class level singleton
  configuration/execution to reach more flexible, thread safe solutions.

Ruby MRI Source Code Idioms #1: Accessing Data Via Macros
http://patshaughnessy.net/2013/1/23/ruby-mri-source-code-...

  MRI guru Pat Shaughnessy is back with another in-depth look into MRI's
  heavy use of C macros and how they're used when working with arrays
  internally.

Using GIFs in your GitHub Pull Requests (for Good, not Evil)
http://schneems.com/post/41104255619/use-gifs-in-your-pul...

  Relates to Richard Schneeman 'In Browser Path Matching' pull request
  included in the Featured items (above).

Keeping Domain Models Cohesive with Collaborators
http://blog.carbonfive.com/2013/01/21/keeping-domain-mode...

  An example of using a collaborator to prevent non-domain responsibilities
  from creeping into a domain model.

Rolling With Sinatra
http://rubysource.com/rolling-with-sinatra/

  Darren Jones, author of Jump Start Sinatra, asked several Rubyists about
  their structural and stylistic preferences when building Sinatra apps.

Deploying a Rails app on Nginx/Puma with Capistrano
http://tommy.chheng.com/2013/01/23/deploying-a-rails-app-...

Building Rich Domain Models in Rails: Separating Persistence
http://victorsavkin.com/post/41016739721/building-rich-do...


Libraries and Code
------------------

Slodown: The Ultimate User Input Rendering Pipeline
https://github.com/hmans/slodown

  Converts Markdown into HTML, adds syntax highlighting, supports rich media
  embeds, auto-links contained URLs, and sanitizes the final HTML.

Rack 1.5.0 Released
https://groups.google.com/forum/#!msg/rack-devel/MDKy9M6A...

minitest-spec-rails: Make Rails 3 or 4 use MiniTest::Spec
https://github.com/metaskills/minitest-spec-rails#readme

  Rails 4 was on its way to using MiniTest::Spec as the superclass for
  ActiveSupport::TestCase. But in one of many reversals, the work was pulled.
  Minitest-Spec-Rails makes reintroducing MiniTest::Spec support for both
  Rails 3 and edge Rails easy.

KidsRuby Robot Edition: New Release With Sphero Robot, Ubuntu, and Raspberry Pi Support
http://kidsruby.com/download

  KidsRuby is a simple Ruby-based development environment aimed at teaching
  kids to program.

Stretcher: Fast, Elegant, ElasticSearch Client Library
https://github.com/PoseBiz/stretcher

  A concise, fast ElasticSearch client that tries to stay out of your way and
  follows the ElasticSearch API as closely as possible making advanced
  techniques easier to implement. (If you've not seen ElasticSearch yet, it's
  a powerful open source distributed search engine server.)

SecureHeaders: Applies Several Security HTTP Headers to Your Rails App
https://github.com/twitter/secureheaders

  Comes from Twitter. Helps with Content Security Policy, HTTP Strict
  Transport Security, X-Frame-Options, X-Content-Type-Options and more.

rspec-given: Given/When/Then Keywords for RSpec Specifications
https://github.com/jimweirich/rspec-given

  See the examples in the README to get a feel for if it'd suit you. A key
  new addition is 'natural assertions' which let you write assertions using
  natural Ruby code without any specific matchers (an idea I've personally
  been very keen to see become more popular).

AngularJS Scaffold: Rails Scaffolding using AngularJS + Twitter Bootstrap
http://blog.ricodigo.com/blog/2013/01/21/new-release-of-a...


Jobs
----

Lead Backend Engineer (Rails) at PlayQ (Philadelphia, PA or Remote OK)
http://jobs.rubyinside.com/a/jbb/job-details/782098

  A leading social gaming company looking for an engineer to be responsible
  for backend systems including technologies such as Ruby, Rails, MySQL, and
  Couchbase.

Ruby Developer at HouseTrip (London, UK)
http://hire.jobvite.com/j/?cj=oqRWWfwT&s=Ruby_weekly

  Europe’s largest holiday rental booking, HouseTrip was ranked by Wired
  Magazine the number two start-up in Europe (2012). We're currently looking
  for passionate Ruby developers to help make it a distributed, world-class
  web application.

Full Stack Web Application Developer at Zoodles (Mountain View, CA)
http://www.zoodles.com/home/careers#web_app_dev


Last but not least..
--------------------

Postgres Weekly: A New Weekly Newsletter, Coming Soon
http://postgresweekly.com/

  In 2013 I'm going to be adding several new newsletters to the Cooper Press
  stable (of which Ruby Weekly is the oldest). One launching in the next few
  weeks will cover PostgreSQL, the popular open source database engine. We
  have a great, experienced curator lined up so it should be great. I have an
  even bigger one to announce next week, however ;-)



================================================================================

You opted in for Ruby Weekly at http://rubyweekly.com/ to get weekly e-mails
about the Ruby programming language.

Our mailing address is: Office 30, Lincoln Way, Fairfield Enterprise Centre,
Louth, Lincs, UK, LN11 9EJ.

You can e-mail the list maintainer directly at rw@peterc.org in case of
problems/questions.

(Log in to post comments)

Copyright © 2013, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds