Double Shot #605

All I can say is Tuesday had better be less hectic than Monday was.

Double Shot #604

It was a busy weekend. Here's some of the fallout.
  • Temple - A plan for a sort of "Rack of templates", a compiler chain to take different types of templates and compile them down to pure Ruby.
  • carrierwave - New solution for file uploads in Rails, Merb, Sinatra, or any Rack application.
  • Notational Velocity - Super simple note-taking and filing application for OS X.
  • Master May I? - A fresh authorization gem designed to work with Authlogic and InheritedResources.
  • Safe In Place Editing Plugin - Replacement for the standard Rails InPlaceEditing plugin, with better error handling and support for markup languages.
  • dygraphs JavaScript Visualization Library - Spiffy zoomable charts of time series.
  • MongoDB 1.2.0 Released - For all you NoSQL types.
  • TimeAPI - API to get dates/times via Chronic. Seems fairly insane to depend on an external service for that, though.
  • Rock Solid HTML Emails - Good rundown from the co-founder of Campaign Monitor on design dos and don'ts.
  • carmen - Country and state selection for Rails, with support for states in 7 countries so far.
  • Why I Don't Like Pair Programming (and Why I Left Pivotal) - Good reminder that pairing is not for everyone. I've done pairing in limited circumstances, but there's no way I'd work like that full-time. (I guess that means HashRocket will never hire me, boo-hoo).

Double Shot #602

It's safe to say I am not looking for more work this month.
  • Excelsior - Fast CSV parsing gem.
  • Teambox - Open source Rails-based project management app.
  • oracle_enhanced adapter - ActiveRecord for Oracle, compatible with Rails 2.3.5.
  • Ruby Community Survey - If social scientists wrote computer code as well as Rails developers design surveys, we'd bust out laughing.

Double Shot #601

It's never fun to wake up to "server down" notices.

Double Shot #600

  • Future of RDBMS is RAM Clouds & SSD - Some thoughts on why cheap RAM means the RDBMS still has plenty of future.
  • Controllers, mount up! The Plataforma way! - A recipe for super-DRY controller code.
  • Cuke4Nuke - Cucumber for .NET - Cucumber testing makes it over to my old stomping grounds.
  • rails_datatables - Plugin to hook up jQuery datatables plugin to a Rails application.
  • Ruby 1.9.1-p376 is released - A security upgrade for anyone running 1.9.1.
  • JSONLint - Validate your JSON online.
  • TrackRecord 1.5 - Rails-based timetracking application.
  • Shut up, Postgres!

    If you've run Rails tests or specs against a PostgreSQL database, you're probably used to seeing an endless stream of messages march down the screen: NOTICE: CREATE TABLE will create implicit sequence "authorizations_id_seq" for serial column "authorizations.id" NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "authorizations_pkey" for table "authorizations" NOTICE: CREATE TABLE will create implicit sequence "catalog_organizations_id_seq" for serial column "catalog_organizations.id" NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "catalog_organizations_pkey" for table "catalog_organizations" NOTICE: CREATE TABLE will create implicit sequence "catalog_products_id_seq" for serial column "catalog_products.id" NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "catalog_products_pkey" for table "catalog_products" Turns out that you don't have to accept all that chatter. To turn it off, just put this in your .bash_profile or other startup file:
    
    export PGOPTIONS='-c client_min_messages=WARNING'
    
    Voila, all notices will be suppressed and hidden.

    Double Shot #599

    You know the weekend was crazy when you look forward to a relaxing Monday.

    Double Shot #598

    My word, is this week over already?

    Double Shot #597

    Burning some more midnight oil this morning.

    Double Shot #595

    Looks like December is going to be thoroughly busy around here.

    Double Shot #594

    Hope you enjoyed turkey day. Lots of stuff piled up over the long weekend:

    Rails 2.3.5 Unofficial Release Notes

    Rails 2.3.5 is out but the official release notes have not yet appeared. So I thought it might be useful to share my own notes on what's new in this version. This list is only the highlights, but it should give you an overview.

    An XSS vulnerability in strip_tags is fixed.

    Rails 2.3.5 supports the xss_safe plugin, which gives you the XSS escaping features that will be the default in Rails 3.0.

    There are a bunch of Ruby 1.9 compatibility fixes, including changes to MessageVerifier#secure_compare (which was tweaked in 2.3.4 to fix a timing vulnerability), the -c and -c options to the rails command, Time#beginning_of_day, and String#strip.

    The nested attributes bits get some attention, including fixes to avoid trying to validate records that are marked for destruction and allowing fields_for on a nested attribute to accept a collection to use. The :_delete option in nested attributes has been renamed to :_destroy, and the old name is deprecated. You can also declare that there are a maximum number of nested records: accepts_nested_attributes_for :orders, :limit => 4

    The MySQL adapter is updated to allow the use of stored procedures.

    Building or creating objects on a has_one association is now more consistent with the way it works on a has_many: record creation from the association is scoped if a hash is used. has_one :account, :conditions => {:enabled => true} will create an enabled account with @company.create_account or @company.build_account.

    Rails is tested with newer versions of Rack (1.0.1), the MySQL adapter (2.8.1), Mocha (0.9.8), and the sqlite3-ruby adapter (1.2.5). sqlite 2 is only supported if you're using Ruby 1.8.x.

    A problem that prevented the debugger from going into IRB mode has been fixed.

    If you're using Rails 2.3.x, you should upgrade to this version as soon as possible, to get the security fixes that it contains. If you're using Rails 2.2, there's a separate patch available. Rails versions older than 2.2 are no longer supported with security patches, and should be retired/upgraded as soon as possible.

    Double Shot #593

    There's a new version of Rails out...and a reason to upgrade.

    Rails CMS Alternatives

    I've got a client who wants to integrate a CMS into an existing Rails application. As a result, I've started in on an evaluation of what's out there, to help us make the buy-vs-build decision. Here's the list of potential software that I came up with:

    Rails CMS alternatives

    Active projects:

    adva-cms BrowserCMS Goldberg Kete Radiant Refinery Seed Static Station Typus Zena

    Inactive projects:

    Ansuz CMS Comatose Geego
    • repo: None - versions available by download
    • site: http://www.geegocms.com/
    • "Manage content with style"
    • Last update: 2007?
    • Dedicated CMS built on top of Rails
    Thetis

    Dead projects:

    Rubricks Widgetfinger
    • site: http://widgetfinger.com
    • Thoughtbot site that allowed generating brochureware right in the browser.
    • Scheduled to go offline 12/21/2009

    Related

    Blog engines

    Static page generators

    Wikis

    I've also put this list online as a gist. I'll keep that version up to date with corrections and additions.

    Double Shot #592

    Happy Turkey Day (in the USA, anyhow). I have no idea why my heap of links exploded today.
  • memory-profiler - Experimental memory profiling tool for Firefox. Looks like I'd have to build Firefox from source to wire it up, though.
  • Static Sites with Mustache - More fun with HTML generation.
  • capybara - Integration testing tool for Rack applications, aiming to replace webrat.
  • InvoiceDude - Free online invoicing application.
  • Thunderbird 3.0 release candidate now available for download - I'm thinking about going back to t-bird. We'll see.
  • Looking for a Job? Let GitHub Help - Sort of hard to see this as being within GitHub's core competency, but I'll certainly take whatever edge it can give me.
  • jQTouch - jQuery plugin for iPhone mobile web development.
  • Sakila Sample Database - I never knew MySQL had this; it's a sample with all sorts of objects to play with.
  • Rubinius 1.0.0RC1 Released! - A milestone indeed.
  • Starter - Code generator for jQuery plugins.
  • Cloud Cloud Maybe - Rap video about cloud computing.
  • effigy - New take on templates for Rails (and other) applications, applying Ruby transforms to pure HTML template files.
  • pancake - Tool for making rack applications with reusable middleware stacks. Looks very promising.
  • webmock - Library for stubbing HTTP requests.
  • partioprint - Adds partial names as comments in generated view HTML to make it easier to debug complex front end issues.
  • Ruleby - Rules engine for Ruby.
  • CSS3 Sideways Google - Just a little bit of amusement.
  • rack-esi - Edge Side Include implementation as rack middleware.
  • Rubyists I'm thankful for this year - A short list from Wynn Netherland. Personally, I'm thankful for every single reader of this blog.
  • Double Shot #591

    The backlog of stuff on my desk is getting a bit frightening.
  • im.kayac.com - Web service that proxies HTTP POST requests or emails to XMPP messages or Apple Push Notifications.
  • ey_cloud_awareness - Some helpful admin bits for applications running in the EngineYard cloud.
  • Rackamole - Performance and exception tracking implemented as rack middleware.
  • Pusher - Rack application to implement COMET push.
  • LightWindow 2.0 - Another attempt at "the ultimate light-'whatever'."
  • ruby-gmail - Ruby interface to GMail to let you do things like archive messages, mark them as spam, create new mails, and so on.
  • Double Shot #590

    Looks like I get to be thankful about having enough work this week.

    Double Shot #589

    Being awake and exhausted in the wee hours is a way of life.

    subscribe via RSS