Double Shot #494
Lots of interesting new stuff showed up over the weekend:
- i18n - The i18n gem has reached version 0.2.0 with lambda support among other goodies.
- can_touch_this - A permissions system extracted from rboard.
- sort_by - Active Record/ Action View extension to produce user-sorted, paginated tables in your views.
- Posterous now supports TrailerAddict embeds and Github Gist code drops. - With Gist support, Posterous is getting to be an interesting alternative for a quick & dirty coding blog.
- Installing FreeImage and ImageScience on Debian Linux - Came in handy, though note that the current version of FreeImage has changed.
- Ruby 1.9.1 & Friends - Ryan Bigg has revised his big blog entry on how to get rails up and running on 1.9.1. It's getting closer to prime time.
- padlock_authorization - Simple object-based role authorization plugin. If I wasn't rolling my own authorization I'd probably try this one next.
- Glow - The BBC gets into the JavaScript library business. Big selling points appear to be downlevel browser and multiple version support.
- Mercurial: The Definitive Guide - Bookmarking in case I'm ever forced to use Mercurial.
- Phoenix - Real-time editing for web pages, including HTML, CSS, and JavaScript, within the confines of Firefox.
- Announcing Appsta - Gem that extends the templating facility in Rails 2.3 with knowledge of GitHub and Heroku, among other things.
Big Old Rails Template
A few people have asked me about the Rails application template that I've put together recently. For those who are interested, it's now available for review and download as a gist. To use it, just specify the -m switch when creating a Rails application:
[sourcecode language='ruby']
rails new_app_name -m lark_template.rb
[/sourcecode]
I should warn you of two things. First, it's a pretty heavyweight template, sticking a lot of stuff into the new application. This suits me, because I have a lot of things I use in just about every application, but it may not suit you. Second, Rails templates are not one-size-fits-all; you'd be better off treating this as a starting point to steal from than a finished template to use (though if you want to use it, feel free).
Here's a list of what this template sets up:
Coding Tools
Database Tools
Deployment Tools
External Services
Testing Tools
[sourcecode language='ruby']
rails new_app_name -m lark_template.rb
[/sourcecode]
I should warn you of two things. First, it's a pretty heavyweight template, sticking a lot of stuff into the new application. This suits me, because I have a lot of things I use in just about every application, but it may not suit you. Second, Rails templates are not one-size-fits-all; you'd be better off treating this as a starting point to steal from than a finished template to use (though if you want to use it, feel free).
Here's a list of what this template sets up:
Coding Tools
- Authlogic for user authentication, including password resets, anonymous_only, authenticated_only, admin_only application helpers
- World's simplest authorization system: manage multiple string roles on users with User#add_role, User#remove_role, User#clear_roles, and User#has_role?
- Date formats: :us, :us_with_time, :short_day, :long_day
- live-validations for client-side JavaScript data entry validation. Add :live_validations => true to form_for declarations to hook this up.
- Paperclip for attachment management
- /pages/css_test will show most CSS styles in action
- Searchlogic for magic named scopes and search forms - http://rdoc.info/projects/binarylogic/searchlogic. Includes attribute_equals, attribute_does_not_equal, attribute_begins_with, attribute_like, attribute_ends_with, attribute_greater_than, attribute_null, attribute_blank etc. etc.
- Stringex for extra string functionality - acts_as_url, String#to_ascii, String#to_html, String#to_url, String#remove_formatting, String.random
- US State application helpers
- will-paginate for pagination
Database Tools
- Hooked up for PostgreSQL
- admin-data plugin for administrative UI. http://localhost:3000/admin_data will get you to the application's data. On production, only admin can view data, no one can edit (modify config/initializers/admin_data.rb to adjust this)
- db-populate for seed data
Deployment Tools
- fast_remote_cache strategy for deployment
- rubiadhstrano for deployment recipes; automatically uses multiple targets, so: cap production deploy for deployment to production
- superdeploy for additional Capistrano tasks. cap -T for full list.
External Services
- Exceptional for error tracking. Go to /pages/kaboom to test after finishing Exceptional setup.
- New Relic for performance tracking
Testing Tools
- Shoulda and Test::Unit for testing
- Mocha for mocking
- Object Daddy for factories
- Generated code is already covered by tests
- parallel-test for faster testing. rake test:parallel:prepare[2] to set up two test databases. rake test:parallel[2] to distribute tests across two cores
- rack-bug for request/response/perf analysis. http://localhost:3000/__rack_bug__/bookmarklet.html to add bookmarklet to browser.
- shmacros for additional Shoulda macros: should_accept_nested_attributes_for, should_act_as_taggable_on, should_callback, should_delegate, more
- More extra shoulda macros: should_have_before_filter, should_have_after_filter
- metric-fu for static code analysis. rake metrics:all, configure in Rakefile
- inaction-mailer is installed for development environment, so mails sent during dev will end up as files in /tmp/sent_mails
Double Shot #493
There are days I need to remind myself that I'm happier on the open source side of the fence.
- Infomaki - Open source usability testing tool written in Rails, from the NY Public Library. (via Konigi)
- Ruby Code Quality and Metric_Fu - Some notes on getting the current metric_fu to run properly.
- Why I use Safari for Development - Sales pitch from Thomas Fuchs.
- translator - Rails extensions to simplify and DRY up internationalization.
- couchsphinx - Full-text indexing for CouchDB using Sphinx.
- AWS Start-Up Challenge for 2009 - Chance to win up to $50K for your nifty idea.
- postview - Ruby blogging engine featuring Markdown and Sinatra.
Double Shot #492
A bit sad to watch people get all excited over vaporware. We never learn, do we?
- Introducing the Google Chrome OS - Reality check: would the tech punderati be so excited if anyone else had announced a new Linux distribution? No? Next!
- Buzzbird 0.4 - Open source Twitter client that's reached the point of being usable.
- Next Steps for Ruby Gender Balance - The SF Ruby community is doing good work in bringing more women to ruby.
- SlickMap CSS - Stylesheet for sexy display of web site navigation.
Double Shot #491
My schedule is not full, by the way, in case you need an extra hand to drive a Rails project to a successful conclusion.
- old_yeller - Dead code detection for Rails apps, though I'm a bit skeptical about the approach.
- RubyInstaller: Getting Started with Rails and MySQL - Quickstart instructions for Windows users.
- July/August Ruby workshop registration open! - Free Ruby workshop for women in the SF area.
- Hoptoad: same great taste, all new design - Revised UI for this exception-tracking application.
- Recent growing problems - Nice bit of corporate transparency as Exceptional discusses some outages they had the past few days.
- The Agile Process Maturity Model (APMM) - I wish this were a joke.
Double Shot #490
Are there more scammers in the world thanks to the net, or do they just have more reach?
- Built For Speed: Using Amazon CloudFront To Serve Assets - How to move Paperclip (or whatever) to a CDN.
- 8 tips for testing Rails apps with Cucumber - Some notes on speeding things up and making effective use of the tool.
- Gibbler - Git-like hashes, history, reversion for Ruby objects. Wacky.
- Haml/Sass 2.2 Released - The next step in these popular tools for writing the UI.
Double Shot #489
Had a modestly productive weekend, in between explosions and shrapnel.
- babelphish - Automatic YML file translation using Google Translate, for when you just need quick-and-dirty localization.
- Accessible Rails Apps - Images and Alternative Text - More advice from Brian Hogan.
- Elements of Testing Style - Noel Rappin has some suggestions on writing better tests.
- Rails Magazine #3 - The free version is available now.
- Basics: Why every rails dev should track 404 pages - Some good advice.
- Parkaby - Faster Markaby-flavored markup language.
- Beet - Thor-based modular alternative to Rails templates.
- aegis - Easy-looking role-based permissions for user models. Looks like it doesn't support multiple roles per user though.
- Rails admin interface roundup - Sarah Allen looks at ActiveScaffold and alternatives (and settles on Typus).
- dry_scaffold - A flexible scaffold generator with multiple options.
- Ripper2Ruby: modify and recompile your Ruby code - New way to parse and generate Ruby with Ruby.
Double Shot #488
Lots going on in the Rails repository lately; I smell another release soon. (And no, I don't have insider information at this point).
- Serna Free Open Source XML Editor - Available for Windows, Linux, and OS X.
- Getting Started with ActiveScaffold - A basic introduction.
- Testing Practices Interview 7: Mike Gunderloy - Noel Rappin invited me to opine, so I did.
- by_star - ActiveRecord extension to find objects given date objects or pieces of dates. Supports searching by year, month, week, between, and more.
- Modernizr - Tool to detect support for HTML 5 and CSS 3 features so you can use them conditionally.
- Accessible Rails Apps - Rails Links, REST and JavaScript Hidden Forms - Brian Hogan suggests that the Rails team got some things wrong, and shows how to fix them.
- Rescuing Your Ruby on Rails Projects - Another interview with me, this one in InfoQ.
- sitemap_generator-plugin - Tool for building Google sitemaps in Rails applications via rake.
Double Shot #487
Finally, a few reasonable links for the week. Thanks for sticking around.
- rangetastic - Plugin for doing "between" filtering on ActiveRecord dates via named scopes.
- PragPub - New free PDF magazine from the Prags. Not much here for Rubyists, but hey, it's free.
- Launchly - Service to track and monitor feedback on your new web site. They have some free plans for their own launch.
- 2009 Contest Kickoff - This year's Rails Rumble dates and details are out.
- RailsBridge - Things are still cooking over at RailsBridge, so if you want to help create an inclusive and friendly Rails community c'mon by. We just relaunched our main site with a new look.
- haml_scaffold - Like the built-in Rails scaffolding, but generates haml and sass instead of erb and css.
Double Shot #486
Starting the new month by sending out a couple of contracts for potential clients to look over. Life could be worse.
- 6 Reasons to use Webbynode - New video from Rails Envy.
- Mike Gunderloy's "Rails Rescue Handbook" - Very Handy! - Thanks, Rails Inside.
Double Shot #485
Half the year is gone already. How's your business plan going?
- Lindo testing helper gets some love - Gem to make functional/integration testing easier by giving you a command to pop open the response in your default browser.
- A short memo for configuring postgresql to use password (md5) authentication - I've started looking at PostgreSQL for new projects. This came in handy as I work up the learning curve.
Double Shot #484
Just to clarify for anyone who's managed to get confused: I am not, after all, working on the Rails 3 In Action book. The project just ended up not being right for me.
- MongoMapper, The Rad Mongo Wrapper - Ruby drivers for MongoDB.
- scripty2 - Alpha release of the next-generation replacement for scriptaculo.us.
- BlueTrip - Another CSS framework that looks interesting.
- Bundles Repository Moved & Mirrored - For TextMate bundles, that is.
- Paged Scopes: A Will_paginate Alternative - Looks interesting, though I'm not feeling the urge to switch myself.
- Dynamic Reports - Canned reporting engine for Rails. Looks flexible, I'd like to see an example online.
Double Shot #483
I think I'm looking forward to July.
FakeWeb 1.2.4 - Now including regex matching for URIs, letting you mock the web more flexibly.
SQLiteManager - New version of this GUI for SQLite.
Vim Basics - Useful when I find myself trapped on a server with an editor I don't really comprehend.
Double Shot #482
It's amazing how fast the days fly by when you're writing code.
- Pagetest - Online checker for site optimization and asset delivery time.
- BanBuilder - Collaborative creation of banned-word lists.
Double Shot #481
Another day, a few more links.
- The Ruby on Rails CMS Dilemma - Aaron Longwell looks at why building in CMS functionality to Rails applications is such a nuisance.
- A Paper Trail for Your Models - New plugin to add auditing/versioning to Rails applications.
Double Shot #480
Youngest daughter informs me we are not past super-early mornings yet.
- swf_fu - I suddenly found myself having to embed a flash object in a Rails site yesterday. Fortunately, this plugin made that easy.
- Hello, This is Your Rails App Calling You - How to integrate your Rails application with the Twilio telephony service.
- Taking Things Too Far: REST - Advice from Michael Koziarski.
Double Shot #479
Announcing my latest project: Rails Rescue Handbook. If you're facing a Rails codebase that needs help, you may find this $9.95 ebook useful.
-
Open Source Workshop - Sarah Allen discusses one of the projects that RailsBridge helped pull off. - Introducing CustomerFu - New web application to track customer complaints.
- Simple Web Services with Rails - Good reference post on using curl to see how the default XML API for RESTful resources works.
- Rails Magazine #3 - Now out in print, PDF in a couple of weeks if you don't want to spend money.
Double Shot #478
The best thing about working for a global company is waking up to find some things already done.
- Pagehand - Interesting-looking new word processor for OS X, using PDF as its storage format.
- Ruby on Rails 101 - A collection of links for people just starting out.
- Sass and Less - Looks like Sass is going to pick up some of the ideas that people liked from Less.
- rack-cache - Drop-in HTTP caching for your Rails (and other Rack-based) applications.
Double Shot #477
Stay tuned...I'll be releasing an ebook in a few days that may be of interest to Rails freelancers.
- Phusion Passenger 2.2.3 released - Bug Fix Edition - A round of consolidation for Passenger.
- Poster - Firefox addin for constructing and sending web service requests and analyzing the results.
- Hampton's Ruby Survey 2009 - Your chance to make your voice heard in this completely unscientific survey of the Ruby community.
- All the Small Icons You'll Ever Need - Roundup of links to 20+ icon sets.
Double Shot #476
It always feels good to actually *deploy* code.
- Rails Mentors - The latest project sponsored by RailsBridge seems to be off to a good start.
- Minor Changes to the Rails Security Policy - And a reminder that you should be subscribed to the security announcement list.
- Hoe 2, Electric Boogaloo - Something of a sales pitch for why you should be using Hoe to build gems.
- Testing Rails with Rack::Test - Just in case you want to
- learn yet another testing tool.
- Less - Mixin and compiler for CSS files. Some of the same ideas as SASS, but I like that it doesn't make you learn an entirely new syntax.
- EchoWaves - "Open source Social Group Chat" in Rails. You can see it in action.
ApplyHQ - New SAAS site for freelancers hunting for work.
subscribe via RSS