Ruby on Rails
JavaScript, XHTML, CSS
Java, Distributed Systems
<you_name_it>
rails
May I Cite Myself?
Submitted by Steffen on Tue, 10/21/2008 - 00:17Well I'll just do it.
Maybe it's because I'm motivated by my new blog theme. Or maybe because my blog is now running on Drupal instead of Wordpress - well what the heck? ;-)
Anyway, I tought it's time to cite myself: Developers are Musicians - Wait was that by myself or by Ryan McMinn? Well ... does that really matter? Guess it's just a fact :-)
timed_fragment_cache on Rails 2.1
Submitted by Steffen on Sat, 07/26/2008 - 04:58With Rails 2.1 cache_erb_fragment has been replaced by write_fragment. This breaks a plugin I really enjoy to use: timed_fragment_cache by Richard Livsey.
It basically allows you to specify an expiry for the fragments you cache, e.g. inside memcache, by adding a "meta" fragment for the fragment you store containing the expiry time.
Some usage examples - pretty self-explaining:
In your view:
<%- cache 'my_key', 1.hour.from_now do -%> ... <%- end -%>
With extensive queries - your view ...:
<%- cache 'some_posts' -%>
Memory Leaks in GetText for Ruby on Rails
Submitted by Steffen on Sat, 03/22/2008 - 09:30Version 1.90.0 of GetText for Ruby has quite some memory leaks in its Rails support files. In my case, the memory Mongrel used increased by 1 MB with each request it served... Quite amazing that you don't really find someone else having the problem... Well there's at least a bug report on rubyforge...
Monkey-patching gettext.rb with the following code made things quite more relaxed:
def bound_target(klass = self) # :nodoc:
ret = nil
Ruby on Rails: gettext + memcache = trouble
Submitted by Steffen on Sat, 09/29/2007 - 06:25The latest Ruby gettext 1.10.0 gem broke the memcache based fragment caching of the current project I'm working on. I figured out what the problem was. gettext 1.10.0 tries to localize caching of fragments by kind of appending the Locale.current to the fragment cache key, e.g. "items/show/1" becomes "items/show/1_en", "items/show/1_de", ...
This by itself isn't a problem but gettext also overwrites the default Rails implementation for expiring fragments. The gettext mechanism expires each localized cache fragment for a given key, e.g. "items/show/1_*" (where * is a wildcard). The current memcache-client gem (1.5.0) however doesn't support wildcard based key access and a "delete_if method not defined" exception gets thrown.
Developers are Musicians
Submitted by Steffen on Thu, 02/15/2007 - 12:29Some random (and slightly interpreted) quotes by Ryan McMinn of unspace.ca, a Canadian project company:
- Specs = Speculations
- Contracts induce Software that works but sucks
- Developing Software is getting a career option
- Developers are Musicians
Check out the video - it's 15 minutes full of truth ;-)
