boston.com / Monday, June 15, 2009 at 08:49 PM

Iran's Disputed Election

The Boston Globe with a 30-40 good-res photos from the Iran election riots. It’s really poppin' off over there.

rubyinside.com / Saturday, June 13, 2009 at 12:24 AM

Rip: A Next Generation Ruby Packaging System

There’s a nice combination of old and new concepts in here.

mnot.net / Friday, June 12, 2009 at 11:48 PM

What to Look For in a HTTP Proxy/Cache

mnot on how to evaluate different proxy cache options for your needs.

usenix.org / Monday, June 08, 2009 at 09:26 AM

Why Events Are A Bad Idea (for high-concurrency servers)

I want to believe!

stuartcheshire.org / Saturday, June 06, 2009 at 08:32 AM

It's the Latency, Stupid

Another classic on latency vs. throughput. This one gets into the limitations of speed of light fairly quickly :)

en.wikipedia.org / Saturday, June 06, 2009 at 08:30 AM

Relationship between latency and throughput

Interesting reading if you found Nick’s handling of latency vs. throughput (in the gogaruca talk) intriguing.

pivotallabs.com / Saturday, June 06, 2009 at 08:22 AM

Nick Kallen - Magic Scaling Sprinkles

Great talk from this year’s gogaruca conference. Anything that starts with a rail against the belief that tools can have mystical scaling powers is going to end up being a good talk :)

innoq.com / Monday, June 01, 2009 at 02:51 AM

Stefan Tilkov's REST Book: References

Whoa. How do I get my hands on an english copy?

slideshare.net / Saturday, May 30, 2009 at 09:42 AM

Sinatra Rack And Middleware

Amazing! I put Ben under the table that night. Tucked him into bed and gave him a kiss.

tomatonation.com / Wednesday, May 27, 2009 at 01:09 AM

25 And Over

“If you have reached the age of 25, I have a bit of bad news for you, to wit: it is time, if you have not already done so, for you to emerge from your cocoon of post-adolescent dithering and self-absorption and join the rest of us in the world.”

Very well done.

blog.jerodsanto.net / Tuesday, May 26, 2009 at 12:29 PM

3 Reasons Why Heroku is a Game Changer

We've been getting a decent amount of PR-ish type coverage since the commercial launch but I still say blog posts like these are infinitely more interesting:

Remember when microwaves first hit the scene and people couldn’t believe how fast they could ‘deploy’ a meal? Yah me either, but the microwave changed the game big time.

And, unlike the microwave, Heroku doesn’t make your apps taste like cardboard :)

uzbl.org / Tuesday, May 26, 2009 at 09:37 AM

The Uzbl browser

Minimalist, keyboard controlled (modal vim-like bindings, or with modifier keys) browser based on Webkit. A lightweight vimperator, maybe?

tbray.org / Tuesday, May 26, 2009 at 07:38 AM

The Web vs. the Fallacies

Tim Bray evaluates the web’s basic design from the perspective of the Fallacies of Distributed Computing. Reminds me of TimBL’s Axioms of Web architecture a bit. This stuff is essential to understanding why the web succeeded where other systems failed and why the web seems quirky in some ways compared to other distributed computing systems.

3.bp.blogspot.com / Monday, May 25, 2009 at 03:55 PM

Top significant moments from the Internet history

Pretty. Y axis is a category of significance, X axis is the year. There’s at least one error: no mention of suck.com ;)

xaprb.com / Monday, May 25, 2009 at 03:41 PM

An easy way to run many tasks in parallel

Nice. The xargs(1) switch -P N will run up to N separate processes in parallel. Combine with the -n M switch for a quick and dirty process pool.

tom.preston-werner.com / Tuesday, May 19, 2009 at 12:18 AM

The Git Parable

tl;dr — that’s why it’s awesome.

simonwillison.net / Tuesday, May 19, 2009 at 12:09 AM

djng—a Django powered microframework

Simon Willison is working on python web microframework based on Django. This will get interesting. Fast.

timetobleed.com / Monday, May 18, 2009 at 10:45 PM

Fixing Threads in Ruby 1.8: A 2-10x performance boost

Must read.

terrastories.com / Thursday, May 14, 2009 at 04:22 AM

Abandoned: Six Flags New Orleans

They shut the park down before Katrina and just left everything. There’s still prizes and stuff hanging on the walls. Spooky indeed. (Via @timbray)

slideshare.net / Monday, May 11, 2009 at 12:20 PM

HTTP's Best-Kept Secret: Caching

Here’s the slides from my RailsConf 2009 presentation on HTTP caching. I doubt the general info will make much sense without me talking over it but the diagrams should be fairly useful.

codahale.com / Monday, May 11, 2009 at 10:38 AM

When Formality Works

Coda on why Rack has had so much success within the Ruby community and modeling projects after it in the future. I couldn’t agree more.

chneukirchen.org / Monday, May 11, 2009 at 10:37 AM

Devil's RailsConf 2009 Dictionary

Christian Neukirchen’s RailsConf 2009 wrap up. I had a pretty amazing time at the conference but sharing a Hookah with Chris was definitely a highlight.

kitchensoap.com / Sunday, May 10, 2009 at 12:49 PM

Mechanical Analogies To Web Stuff, Part 2.

Really interesting analogy between web architecture and a car crash. This is the piece that’s missing from almost every conversation about whether any given web framework or component “scales”. (via @jperkins)

canonical.org / Tuesday, April 28, 2009 at 12:58 AM

How False Rumors Can Cost Lives

Kragen Javier Sitaker: “I have said that spreading false rumors in time of epidemic costs lives. People have asked me how…”

This is why I recommend everyone subscribe to kragen-tol.

Monday, April 27, 2009 at 01:32 PM

HTTP Caching Talk at RailsConf '09

This will be my first talk at a major conference.

jwz.org / Monday, April 27, 2009 at 01:05 AM

message threading

Jamie Zawinski (1997): “In this document, I describe what is, in my humble but correct opinion, the best known algorithm for threading messages (that is, grouping messages together in parent/child relationships based on which messages are replies to which others.) This is the threading algorithm that was used in Netscape Mail and News 2.0 and 3.0, and in Grendel.”

flyingfrogblog.blogspot.com / Monday, April 27, 2009 at 01:03 AM

When celebrity programmers attack: Guido on tail calls

“Almost all non-functional programmers are unaware that tail calls facilitate a programming paradigm that they have never seen. The ability to tail call to functions that are not statically known is the foundation that makes many combinators useful. This is a style of programming where functions are composed in order to create a pipeline for values to flow through. Without tail call elimination, every stage in the pipeline would leak stack space and the whole approach becomes unusably unreliable.”

blog.james-carr.org / Sunday, April 26, 2009 at 12:52 AM

TDD Anti-Patterns

James Carr’s classification system for unit test smells and anti-patterns. This is almost three years old but still extremely relevant judging by the test suites I'm working with today. I'm guilty of more than a few of these. Via @coda.

github.com / Saturday, April 25, 2009 at 04:12 PM

Bunny - a synchronous Ruby AMQP client

Nice. Probably more appropriate than tmm1-amqp in threaded/synchronous environments or when you don’t want to deal with EM. Then again, I believe tmm1-amqp has a synchronous interface. If not, it wouldn’t be hard to put one together with fibers.

groups.google.com / Saturday, April 25, 2009 at 03:23 PM

Rack 1.0 released!

We made it.

heroku.com / Friday, April 24, 2009 at 11:44 PM

Heroku Pricing

I've been staring at this screen for two sleepless weeks now. Really glad to have it wrapped. James Lindenbaum (CEO/founder/bad-ass) did most of the conceptual design work. seaofclouds did the fucking amazing illustrations and took the design to completion. Pedro Belo did the HTML/JavaScript and server side stuff. Definitely one of the best teams I've worked on.

remi.org / Friday, April 24, 2009 at 09:58 PM

Deploying Ruby Web Applications to Heroku

Remi’s kick ass screencast on deploying to Heroku.

infoq.com / Wednesday, April 22, 2009 at 01:44 PM

Mark Nottingham's HTTP Status Report presentation at QCon '08

Protocols are hard. Nobody understands this.

youtube.com / Monday, April 20, 2009 at 04:15 AM

Danny MacAskill on a Bike

Sick.

rubyinside.com / Monday, April 13, 2009 at 01:20 AM

RabbitMQ - A Fast, Reliable Queuing Option for Rubyists

I had a chance to hang out with Rabbit’s Tony Garnock-Jones last week. Awesome guy. Knows his shit. We use RabbitMQ prettyy all over the place at Heroku — big fans.

matthias-georgi.de / Monday, April 13, 2009 at 01:12 AM

RackDAV - Web Authoring for Rack

Matthias Georgi’s framework for building DAV servers in Ruby with Rack. Could make building apps that mount into a local filesystem quite simple.

sfbayview.com / Monday, April 13, 2009 at 01:10 AM

You are being lied to about pirates

We live in a crazy world.

aisleone.net / Monday, April 13, 2009 at 12:56 AM

8 Simple Ways to Improve Typography In Your Designs

Measure, Leading, Quotes, Rhythm, Widows, Emphasis, Scale, and Rags. Great piece.

blog.evanweaver.com / Sunday, April 12, 2009 at 09:33 AM

ruby gc tuning

Great ideas for tweaking Ruby’s GC after applying Stefan’s Kaes’s GC patch. By the way, that patch has been an option on the ruby port in FreeBSD for years. It works. Apply it.

blog.bigcurl.de / Thursday, April 09, 2009 at 04:10 AM

Bigcurl: Running Sinatra apps on Google AppEngine (Java)

This is why simple is better. Sinatra probably runs well on any compatible ruby with a Rack handler.

diveintomark.org / Friday, March 27, 2009 at 06:40 PM

Dive into history, 2009 edition

Mark Pilgrim: “Anyway, I now realize that there were some hidden assumptions behind my design decisions in 2000. Some of those assumptions turned out to be wrong, or at least not-completely-right. Sure, a lot of people downloaded dip, but it still pales in comparison to the number of visitors I got from search traffic. In 2000, I fretted about my ‘home page’ and my ‘navigation aids.’ Nobody cares about any of that anymore, and I have nine years of access logs to prove it.

I don’t think most people realize how little site navigation matters anymore. Your site’s navigation is google, topic sites, blogs, and feeds. The “website” is dead. Long live the individual useful resource.

fivethirtyeight.com / Wednesday, March 25, 2009 at 02:58 AM

FiveThirtyEight: Politics Done Right: Why AIG Paid the "Bonuses"

OMG! Real, actual, research on the AIG bonus situation (from their 2007 10-K filing): “In light of the unrealized market valuation loss related to the AIGFP super senior credit default swap portfolio, to retain and motivate the affected AIGFP employees, a special incentive plan relating to 2007 was established. Under this plan, certain AIGFP employees were granted cash awards vesting over two years and payable in 2013.”

Interesting. So the bonuses were lined up in 2007 because all of their top guys would have left for other, less fucked up securities.

infoworld.com / Wednesday, March 25, 2009 at 02:48 AM

Slacker databases break all the old rules

Good writeup on the rise of document and columnar databases, including Amazon SimpleDB, Apache CouchDB, Google App Engine, and Persevere.

groups.google.com / Monday, March 16, 2009 at 06:28 PM

rack-cache 0.4 released

Get it while it’s hot.

gilesbowkett.blogspot.com / Monday, March 16, 2009 at 06:20 PM

Gay People, Come To Rails

Well said. It appears PHP’s culture of stupidity isn’t limited to technology. What a bunch of assholes.

aaronsw.com / Monday, March 16, 2009 at 04:50 PM

Journalistic Capture and Fixing CNBC

Aaron Swartz explains why he (and friends) put fixcnbc.com together. I've always been skeptical of petition sites but his logic is sound here.

time.com / Monday, March 16, 2009 at 04:47 AM

Detroit's Beautiful, Horrible Decline

Amazingly painful to look at these. I hope motown can figure something out but I think it’s more likely that we’ll see other city’s (like Cleveland) follow in its footsteps. Decline sucks.

warpedvisions.org / Monday, March 16, 2009 at 04:02 AM

Things I hate about kitchen user interfaces

For real. The best microwave is one that has a single timer dial that moves as time elapses. No one ever uses all those buttons. I use exactly one button on my current microwave: “Quick Minute” (hitting it as many times as needed) but I'd prefer a dial.

ibm.com / Monday, March 09, 2009 at 10:13 AM

Delve into UNIX process creation

It’s important to understand how fork(2), pipe(2), and exec(2) work. I don’t want to hear anymore of this “fork is a hack” shit from any of you :)

docs.persvr.org / Monday, March 09, 2009 at 08:59 AM

JSONQuery

XPath-like syntax for expressing selection queries against JSON data structures. Interesting concept. I've always wondered why the basic concepts behind XPath were never borrow and applied to other types of structured data — it’s so insanely useful. I suppose jQuery popularized using CSS selectors for querying HTML but why not take the same basic concept and apply it to problem domains outside of SGML-inspired markup languages and their data models.