The Last Week in Ruby: RSpec 2.8, Redcar 0.12, Torquebox 2.0 beta, articles and more »
Created at: 16.01.2012 13:36, source: Ruby Inside, tagged: Compilation Posts News
Welcome to this week's Web-based syndication of Ruby Weekly, the Ruby e-mail newsletter. While I have you, be sure to follow @RubyInside on Twitter as I'm going to be posting news more frequently there than on the Web site in future.
Also, if you're interested in getting one interesting programming related quote or link each day on Twitter, check out @codewisdom.
Headlines
RSpec 2.8: The Popular Ruby BDD Tool Goes Supersonic
RSpec 2.8 and rspec-rails 2.8.1 have been released and some users have been reporting significant performance improvements. Other tweaks include improved documentation, better tag and filtering options, random example execution, and 'rspec --init' for adding RSpec to an empty Ruby project.
TorqueBox 2.0 Beta 2 Released
Torquebox is a popular JBoss-powered application server for Ruby webapps that provides a smorgasbord of useful backend features. This beta of the 2.0 release boasts the latest versions of JRuby and JBoss and new support for WebSockets/STOMP.
Redcar 0.12 Released: An Editor Built in Ruby
Redcar is a programmers' text editor written in Ruby and this latest release has streamlined its installation and added Mac OS X Lion support.
Articles and Tutorials
The Status of DataMapper
DataMapper is a popular Ruby ORM and an interesting alternative to ActiveRecord. In this post, Piotr Solnica explains what's happening with DataMapper 2.0 and how it aims to implement the Data Mapper pattern in full. The systems outlined in this post could resolve a lot of issues people have been having with ActiveRecord, it seems.
Does My Rails App Need A Service Layer?
Jared Carroll picks up on a common thread being discussed in the Rails world lately: service layers. He explains what 'services' are, what types of service can exist, and tries to briefly explain his opinion on their usage within the context of Rails. I'm not entirely comfortable with his conclusion but it's a good introduction nonetheless.
An Exhaustive Explanation of Minimax: A Staple AI Algorithm
An appealing explanation of an algorithm that can be used to 'intelligently' play Tic Tac Toe, complete with a simple Ruby implementation.
Rails Development on Ubuntu 11.10: Setting Up a Dev Environment
Eric Proctor wanted to refresh his setup for 2012 so sat down to install a Rails development stack from scratch on Ubuntu 11.10. He shares the process here in case you want to repeat it for yourself.
How to Create A Local Copy of the Rails API Docs and Guides
If you're like many Rails developers, you might frequently hit the Rails docs and guides via Google searches, but if you want access to these useful resources when offline, Aslam Najeebdeen has the answer.
Hosting Your Own Local RubyGems Server
Want to have your own in-house RubyGems server? It's easy and Michael Erasmus shows you how in this post.
Ruby Float Quirks
Clemens Helm stumbles across a rudimentary floating point representation issue, but one that can trip you up nonetheless if you're not aware of it.
Capybara, Cucumber and How the Cookie Crumbles
Steve Richert of Collective Idea wanted to punch through Capybara and be able to set cookies that would "Just Work" from anywhere in his Cucumber suite. Here, he shows you how he did it.
Screencasts
Pretty URLs with FriendlyId (RailsCasts)
If you are tired of model ids in the URL, overriding to_param can only get you so far. The friendly_id plugin can help by making it easy to generate a URL slug and maintain a history. Ryan Bates shows us how in a mere 7 minutes.
Libraries and code
Puma: A Ruby Web Server Built For Concurrency
Puma is a simple, fast, and highly concurrent HTTP 1.1 server for Ruby webapps. It can be used with any application that supports Rack and makes the audacious claim that it 'is considered the replacement for WEBrick and Mongrel.'
confstruct: Yet Another Configuration Object for Ruby
Confstruct optimistically bills itself as 'yet another configuration gem.' It's definable and configurable by hash, struct, or block and aims to provide the flexibility to do things your way, while keeping things simple and intuitive.
coffee-script-pure: A Pure Ruby CoffeeScript Compiler
CoffeeScript was originally implemented in Ruby so it's interesting to see Charlie Somerville bring it full circle by reimplementing the current CoffeeScript compiler in pure Ruby.
rack_session_access: Rack Middleware for 'rack.session' Environment Management
rack_session_access makes it possible to change values within the application session of your Rack-backed app.
Ruby Jobs of the Week
Ruby and Rails Entwickler bei blau Mobilfunk GmbH [Hamburg, Deutschland]
Unfortunately I don't speak German but it's great to see a wider variety of locations in the jobs. So if you're looking for a Rails job in Germany or know someome who is, check this out.
Last but not least..
Exceptional Ruby: Master The Art of Handling Failure in Ruby
I can't help but continue to recommend Avdi Grimm's awesome 'Exceptional Ruby' e-book if you want to dig deep into the world of exceptions and error handling in Ruby. I enjoyed it a lot (and I'm not even making a bean on this recommendation :-))
more »
The Past 2 Weeks in the World of Ruby: 40 Links to Bring You Up to Speed (January 2012) »
Created at: 06.01.2012 17:03, source: Ruby Inside, tagged: Compilation Posts Miscellaneous News
Ruby Weekly has just tipped over 10,000 subscribers but I know not everyone is into getting their news via e-mail, so here's the latest frequent roundup of the latest Ruby and Rails news for you, all on the Web :-)
Key News, Releases, and Headlines
Hungry Academy Application Process Closes This Weekend
LivingSocial's 'Hungry Academy' will provide a paid, on-site 5 month Ruby and Rails learning experience and mentorship program to a small group of lucky applicants. Interested? You've only got a few days left to apply.
DOS Attack Vulnerability Found in Ruby 1.8's Hash Algorithm
Ruby 1.8.7-p352 and earlier are affected by a wide reaching (as in Python and Java are also affected!) hash related vulnerability. Ruby 1.9 is entirely unaffected.
JRuby 1.6.5.1 Released: Fixes the Hashing Vulnerability
JRuby 1.6.5.1 is a minor patchlevel release of JRuby that's mostly interesting because of the potential hash-based DOS vulnerability it papers over. Plenty of info in this post.
KidsRuby 1.0 Released
KidsRuby is a kid-focused (but just as useful for adults!) Ruby editor aimed at being an environment for teaching the Ruby language. It includes tutorials and a Logo-esque turtle graphics system for more visual types of learning.
Rack 1.4.0 Released
Rack is the modular Ruby Web server interface that sits between servers like Apache and nginx and systems like Rails or Sinatra. Rack 1.4 drops support for Ruby 1.8.6 and includes a bevy of tweaks, bug fixes and minor new features (including support for the 'teapot' HTTP status code ;-)).
Articles and Tutorials
Never Create Ruby Strings Longer Than 23 Characters
A linkbaity title but an interesting article nonetheless by Pat Shaughnessy about a curiosity of how MRI Ruby 1.9 handles strings. Why are 24 byte strings far slower to process than 23 byte ones? Find out here.
Giving Rails 2 the Rails 3.1 Asset Pipeline
Not quite ready for Rails 3.1 yet but still want an asset pipeline on your Rails 2 app? Davis W Frank was in that situation and in this post explains how he sorted it out.
The & Operator in Ruby
Pan Thomakos looks at the uses for the & operator and its associated methods in Ruby, including bitwise ANDing, set intersection, and the unary &.
Ruby Gems API Console: Play with RubyGems.org's API on the Web
An interesting API console that's set up to play with the RubyGems.org JSON API. Click the drop down to the left to see all of the prebuilt requests.
MiniTest Quick Reference
MiniTest is the unit testing library that comes in the Ruby 1.9 standard library and which also acts as a compatibility layer for test/unit on 1.9. Matt Sears has put together a handy round up of the assertions and matchers offered by MiniTest::Unit and MiniTest::Spec.
Structural Design Patterns in Ruby
Gregory Brown looks at seven structural design patterns laid out by the Gang of Four, the Adapter, Bridge, Composite, Proxy, Decorator, Facade and Flyweight.
'bundle exec rails' Executes Bundler.setup 3 Times
Rails core team member Santiago Pastorino notes that running 'bundle exec rails' is an inefficient mistake and explains why. (TLDR: Just use 'rails', it'll work out the particulars.)
1 and 2 Letter Ruby Gems
Mike Gunderloy looks at Ruby gems that only have a single letter as their name. It's a mixture of junk and curiosities.
'Kestrels, Quirky Birds, and Hopeless Egocentricity' by Reg Braithwaite
Ruby's own 'Raganwald' has compiled his essays about combinatory logic, method combinators and Ruby meta-programming into a handy and inexpensive e-book. Cerebral stuff.
Libraries and code
Momentum: A Rack Handler for SPDY Clients
SPDY is a experimental networking protocol developed by Google (and already used in Chrome) for delivering Web content more quickly. Momentum is a Rack handler that can receive connections from SPDY clients and run Rack apps. Lots of info in the README.
Webmachine: Expose Your App's Resources Via HTTP Declaratively
webmachine-ruby is a port of Erlang's Webmachine. Both projects aim to expose parts of the HTTP protocol to your application in a declarative way, so you're less concerned with handling requests directly and more with describing the behavior of the resources in your app.
EmberJS-Rails: Ember.js for Rails 3.1 Developers
Ember.js is the new name for the Sproutcore 2.0 framework, a powerful system for building rich JavaScript-driven Web applications.
Celluloid 0.7: Actors for Concurrent Programming in Ruby
Celluloid provides a simple and natural way to build fault-tolerant concurrent programs in Ruby. With Celluloid, you can build systems out of concurrent objects just as easily as you build sequential programs out of regular objects. 0.7 has just been released.
Gitview: A JS Widget to List GitHub Repositories
Gitview is a JavaScript widget you can include on any page to show off your GitHub repositories. Github-badge has done this for years, but Gitview has an interesting GitHub style presentation format including the weekly commit bars.
Screencasts, Presentations, and Podcasts
Some Thoughts on Ruby Classes After 18 Months of Clojure
An enjoyable 25 minute romp through Brian Marick's thoughts on structuring objects in Ruby based on his experiences with the Clojure Lisp dialect.
Sending HTML Email (RailsCasts)
Ryan Bates is back for his weekly RailsCasts episode, this time looking at how to not only send HTML e-mail, but how to put it together (along with the obligatory inline CSS) too.
Debugging Scary Crashes of Rubinius
Dirkjan Bussink has been debugging memory corruption in Rubinius and has put together a 55 minute video explaining how he debugged it. Surely a must watch for any wannabe Rubinius hackers. A 453MB download though..
'Architecture the Lost Years' by Robert Martin at Ruby Midwest 2011
I really enjoyed this keynote by 'Uncle Bob' at the recent Ruby Midwest 2011 conference. He talks about application architecture and how the typical 'Rails way' of approaching it has key disadvantages compared to a decoupled approach.
ActiveRecord Anti-Patterns for Fun and Profit
At November's Ruby Midwest 2011, Ethan Gunderson gave a talk on common mistakes made when working with ActiveRecord and how to make everything all better.
Smalltalk On Rubinius (or How to Implement Your Own Programming Language)
At September's Golden Gate Ruby Conference, Konstantin Haase gave a talk about implementing a programming language using Ruby and the Rubinius compiler tool chain.
Getting Started with Rails: RailsCasts
Ryan Bates takes it back to basics this week with a quick 7 minute sweep through some of the sites, tools, and books you'll find useful when starting out with Rails as of late 2011.
Vim for Rails Developers Screencast
An inexpensive 34 minute screencast by Ben Orenstein that teaches you how to use the popular Vim text editor when working with Rails projects. Ben has a lot of experience in this area.
The Ruby Rogues on Benchmarking and Profiling
Aaron 'tenderlove' Patterson rejoins the Rogues for an hour long chat about benchmarking and profiling Ruby code. There's a lot of depth here and it makes for a typically good and roguish listen.
Ruby Jobs
C/Unix Agent Engineer [Portland, Oregon]
New Relic, the Web app performance monitoring and management folks, are looking for someone who loves Ruby but is an experienced C or C++ developer who understands multithreading, database contention, and object-oriented design.
more »
Ruby News and Releases in 2011: A Retrospective »
Created at: 07.12.2011 05:36, source: Ruby Inside, tagged: Compilation Posts News
2011 is drawing to a close and I have been reminded of a post I made about a year ago: Ruby in 2010: A Retrospective of a Great Year for Ruby. 2010 was a stunning year with the release of Ruby 1.9.2, MacRuby 0.5, Sinatra 1.0, Rubinius 1.0, and...
more »
This Week’s Ruby News: awesome_print 1.0, a new Sinatra book, and more »
Created at: 03.12.2011 02:36, source: Ruby Inside, tagged: Compilation Posts News
Welcome to this week's Web-based syndication of Ruby Weekly - it's bumper sized this week. And a big congratulations to David Heinemeier Hansson, creator of Rails, as he got married recently!
Headlines...
more »
Last Week’s Top Ruby News: Rails 3.1.3, autoload deprecated, and conferences »
Created at: 29.11.2011 02:02, source: Ruby Inside, tagged: Compilation Posts News
It's a couple of days late but here are the main headlines from the last week of Ruby news. We have a couple of Rails releases, some event news, and the usual gaggle of great articles and jobs. Headlines Rails 3.1.3 Released (Very Quickly After 3.1.2) This release mainly contains fixes for regressions that popped up in 3.1.2, including a downgrade to Sprockets. 3.1.2 itself was primarily a bug and security fix release and cleared up a XSS vulnerability in
more »
