Evan Weaver

rob levin dies


over 12 years ago by Evan Weaver on Snax.
Rob Levin, director of the Peer-Directed Projects Center, and better known as lilo, the founder and primary administrator of Freenode, has died. The...

make camping connect to mysql


over 12 years ago by Evan Weaver on Snax.
By default, Camping connects to a sqlite database in an undisclosed location, similar to Dick Cheney. This confuses practically everybody. Here’s...

rails security note


over 12 years ago by Evan Weaver on Snax.
Rails Ticket 4339 suggests that there is a denial-of-service vulnerability because of the way the Rails request handler instantiates a symbol for every...

how to publish feeds with resource_feeder


~12 years ago by Evan Weaver on Snax.
The resource_feeder plugin, along with simply_helpful, recently snuck into edge Rails, courtesy of DHH. They’re nice. resource_feeder lets a controller...

has_many_polymorphs release 11


over 12 years ago by Evan Weaver on Snax.
Release 11 of the has_many_polymorphs ActiveRecord plugin is available; go here for the update. This will be important to you if you use callbacks in your...

redirect aliased hosts to a single canonical host with apache


~12 years ago by Evan Weaver on Snax.
We have a new Apache 2.2/mongrel server set up, and wanted people who type in host.com to be redirected to www.host.com, instead of merely aliasing all...

sti support in has_many_polymorphs


~12 years ago by Evan Weaver on Snax.
At the request of Kevin Marsh, the polymorphs plugin now supports single-table inheritance....

duck-typing and ruby virtual classes


~12 years ago by Evan Weaver on Snax.
Design-by-contract, interfaces, and virtual classes can be beneficial for large-scale projects. It may be tempting to directly implement Java-style virtual...

make false be true


~12 years ago by Evan Weaver on Snax.
Let’s be evil, and fake out false with some metaprogramming. We will do this by using method_missing to delegate identity methods to another object...

hash#apply!


~12 years ago by Evan Weaver on Snax.
Apply a block to every value in a hash. class Hash def apply! merge! Hash[*keys.zip(values.collect{|x| yield x}).flatten] end end irb(main):002...