Please find the attached installment of interesting links. Don't forget to check in with greyscalegorilla for more. We've also inspired another weekly link collection from a Chicago Rubyist: This week's highlights.
Sinatra is a Domain Specific Language(DSL) for quickly creating web-applications in ruby. It keeps a minimal feature set, leaving the developer to use the tools that best suit them and their application.
?+?+L and other useful OS X hidden features
So, especially for those of you using computers, instead of Windows, here’s some key combos and other built-in helper applications you might not already know about.
Videos from Paris on Rails '08
Most of these sessions are in French, but Michael Koziarski did a great session on Rails Performance that’s in English and so was my iChat Q&A session.
Performance of Rails Metal
In my benchmarks, speed increase I get when using Metal is about 1 millisecond. It’s very important to understand that it’s a constant speed increase. For example, if my Rails action takes 12ms, when I reimplement it all in Metal, it will take about 11 ms and not 4 ms.
Agile git and the story branch pattern
I've been using the story branch pattern for development for most of the last year, and have found it useful, convenient and a lifesaver when things get weird. I've also watched teammates that do their work in the master branch, and it is more work for them to deal with issues and avoid making unintended messes. Like all useful practices it takes a little bit of effort up front, but it saves a lot more effort when it really matters.
A peek at Extra Extra, an internal 37signals app
One of the things we wanted to do with the new site was to have a place where we could display current comments, ideas, and conversations going on around the web about Highrise.
A Journey Through Five Years of WordPress Interface
With the recently launched WordPress 2.7, bloggers now marvel at how clean, beautiful and usable is the new interface. But do you remember what it used to be a couple of months ago? For those who started using WordPress years ago, can you remember what your admin area looked like?
Rule of thirds
The rule of thirds is a compositional rule of thumb in visual arts such as painting, photography and design. The rule states that an image should be imagined as divided into nine equal parts by two equally-spaced horizontal lines and two equally-spaced vertical lines, and that important compositional elements should be placed along these lines or their intersections. Proponents of this technique claim that aligning an image with these points creates more tension, energy and interest in the photo than simply centering the feature would.
Why you (and I) are not designers
You are a not a designer. A designer is someone with training and experience in design. You may convince yourself otherwise, but your customers will not be fooled.
Amazon S3 Firefox Organizer (S3Fox)
S3Fox Organizer helps you organize/manage/store your files on Amazon S3. It is easy to install and use as it is integrated into the browser.
Machinist for your Test Data Factory
Using fixtures for test data sucks. Concept of factories have emerged as a recommended alternative for fixtures. There were several plugins to help creating factories such as Object Daddy and Factory Girl. Recently I got to use another factory plugin called Machinist, which is written by Pete Yandell which looked far more impressive from the rest.
Introducing Rails Metal
Think of Rails Metal as a subset of middleware intended for application-specific end points that need the extra speed (“write to the metal”, hence the name). Thanks to recent adoption of Rack sessions, these pieces of metal even have access to the same session as Rails. You can either run them as part of the Rails process or run them as individual services through rackup.
Cache-Control Header for Amazon S3
Or “How to set a far future Expires header in S3 to appease the YSlow gods”.
Hosting Ruby on Rails with Passenger
...if you do not already have an investment in an alternative solution, or if you’re feeling pain with that solution, you should definitely consider Passenger to be the default choice for Rails.
Amazon releases CloudFront
CloudFront is a content distribution service that caches S3 content at 14 locations on three continents based on the access patterns to the individual S3 objects. As far as I can tell, it’s a service that is quite distinct from S3, except that it currently uses S3 as the origin server (i.e. the original objects to be cached must reside on S3).
The Fork Queue at GitHub
This tool allows you to do a lot of repository collaboration maintenance entirely from the website. You can setup an integration branch that you ask everyone to make sure their commits apply cleanly to and pull them in one by one, entirely online. It also gives you great visibility to what is out there in your forked network and what you have or have not brought in yet.
A Collection of Rack middlewares
Some of this stuff use to be Rails only. But now that it’s a Rack middleware, any framework (that is based on Rack) can use it. For example, Rack::MailExceptions can now replace Rails exception_notification and merb_exceptions. So next time you build a framework plugin, think about building a middleware instead and contribute it to Ryan Tomayko’s project.
Performance on Rails
RailsConf Europe 08: Jeremy Kemper (37signals), Performance on Rails.
Deploying Sinatra on Dreamhost With Passenger
Sinatra is a DSL for quickly creating web-applications in Ruby with minimal effort, as quoted from the Sinatra website. It is great for really simple, really fast services and in general is fun to make apps with. Since I showed how to deploy your Rails apps on Dreamhost, I thought I would also cover how to deploy your Sinatra apps as well.
"cupcake" development branch ?(Android Open Source Project?)
This isn't so much a "development branch" as it is a service pack. And I don't mean a Microsoft-style service pack (i.e. collected bug and security fixes), but a literal pack of services. There are bug fixes (and they pretty much address all of my initial issues with my G1), but there are a number of significant new features. Android = living up to its promise.
Textkit - Greek and Latin Learning Tools
If, like me, you've fallen out of the habit of practicing your Latin (or Greek) and have become a little bit rusty, this might be just the thing: PDF versions of elementary textbooks are here and free for the downloading. The only caveat, of course, is that you now, officially, have no excuse for your shitty Latin.
Android G1 (aka HTC Dream) Service Manual (PDF)
I don't know how this leaked to the Interwebs, but here it is; everything from battery-changing to running the on-board diagnostics.
Landon Fuller: DNS dead drop
A "dead drop" is the thing in spy movies where the contact anxiously deposits his purloined documents and then shuffles nervously away. The secret agent shows up at a later time, when he won't be observed, and receives the purloined documents. If you can follow the details on how dude in this article is "stashing" messages in DNS caches, it's a very cool read (warn: hacker knowledge required).
Debian Dependency Map « Gnowgi
This is a cool little project that dynamically maps package dependencies in Debian. Not of much interest to the non-sysadmin crowd, but very cool if that's your deal.
My Maps Editor by Google puts your custom maps in your pocket | Android Community
Customizing and saving your own maps /probably/ should have been built into the integrated Google Maps function on the G1 when it was launched. I know I bitched about it. And if I bitched about it, at least a dozen people /thought/ about bitching about it. Oh well, now that it's here, all's forgiven.
How to Install GRUB Splash Screen Image on Debian Linux | Kushal Koolwal's Linux Blogs
Until just moments ago, I had no idea that there was an easy way to configure the background for the grub boot loader. Having booted numerous RedHat/CentOS machines, I knew that it could be done; I just never knew how.
Cambridge University Engineering Department - Text Processing using LaTeX
I am /really/ into LaTeX lately; ever since I discovered that you could generate really nice-looking PDF's from the command-line without dicking around with a big, clunky "write" or "abiword" type program I've been hooked, lined and sinkered.
Debian Package of the Day » Blog Archive » ferm: a straightforward firewall configuration tool
dnsmasq is to DNS/DHCP what ferm is to firewalls. If you find bind to be daunting, you can set something up lickety-split with dnsmasq and, if you're feeling ambitious later on, go back to it and dig in deeper at your leisure; similarly, ferm allows for real quick firewall setup and gives you the option to shitcan that setup at a moment's notice and implement another solution.