Jonathan's Pancheria

dotcom Thousandaire

  • Erratic Wisdom: Tutorial: Coding a Layout
    • This tutorial should help you learn how to analyze either a new template, or even your current layout to find the best way to code it.
    • Posted: Tue Jan 31 22:20:05 GMT 2006

Click here for all of my del.icio.us bookmarks.

Published on 01/02/2006 at 07:19AM .

0 comments

  • SEDA – Architecture for Highly-Concurrent Server Applications
    • SEDA is an acronym for staged event-driven architecture, and decomposes a complex, event-driven application into a set of stages connected by queues. This design avoids the high overhead associated with thread-based concurrency models, and decouples event
    • Posted: Mon Jan 30 15:16:24 GMT 2006

Click here for all of my del.icio.us bookmarks.

Published on 31/01/2006 at 07:20AM .

0 comments

Click here for all of my del.icio.us bookmarks.

Published on 22/01/2006 at 07:19AM .

0 comments

Click here for all of my del.icio.us bookmarks.

Published on 21/01/2006 at 07:19AM .

0 comments

  • Rails RSS2.0 and Atom1.0 feed templates
    • Some xml feed templates that work well for rails. These uses the great XML::Builder library that comes with rails. With these you use an .rxml file for your view instead of your normal .rhtml file.
    • Posted: Thu Jan 19 19:41:47 GMT 2006

Click here for all of my del.icio.us bookmarks.

Published on 20/01/2006 at 07:19AM .

0 comments

  • History of the BASIC family of languages
    • Visual Basic 4.0 is introduced. It includes object capabilities, if you define “object capabilities” to mean “something sort of like object capabilities, but not really”.
    • Posted: Sat Jan 14 15:54:51 GMT 2006

Click here for all of my del.icio.us bookmarks.

Published on 15/01/2006 at 07:19AM .

0 comments

Click here for all of my del.icio.us bookmarks.

Published on 11/01/2006 at 07:01PM .

0 comments

  • Collaboa.org
    • Collaboa is to be a collaborative tool for developers using Subversion. Think rails version of Trac.
    • Posted: Thu Jan 05 16:38:07 GMT 2006
  • Maintainable Programmers [@lesscode.org]
    • To conclude that if these programmers did learn language X, they would suddenly turn out maintainable code, or that if a good programmer changed camps from langauage X to language Y, the quality of his code would suddenly degrade, is fallacious.
    • Posted: Thu Jan 05 22:39:19 GMT 2006
  • java.net: Log4Ajax
    • Logging framework for Ajax apps that can do client-side or server-side logging. Server-side appears to rely on log4j in the article, but it seems that any log4X (for any language log4 toolkit out there) could probably be substituted without too too much
    • Posted: Thu Jan 05 20:46:07 GMT 2006

Click here for all of my del.icio.us bookmarks.

Published on 11/01/2006 at 06:57PM .

0 comments

  • Lightbox JS
    • Lightbox JS is a simple, unobtrusive script used to to overlay images on the current page. It’s a snap to setup and works on all modern browsers.
    • Posted: Tue Jan 03 02:20:31 GMT 2006

Click here for all of my del.icio.us bookmarks.

Published on 04/01/2006 at 07:19AM .

0 comments

I like to keep my work email sorted by year to keep the size of the various boxes small for perusal (oh for the day Google sells corporate gmail!). This script is part of a process to accomplish that. It mirrors your existing Thunderbird folder/mailbox structure to a different directory by creating the same directory hierarchy, creating empty mailbox folders, copying your filter rules and popstate files, and skipping the mailbox summary files.

This script may be generally useful for other purposes as well.


#!/usr/bin/env ruby

require ‘find’
require ‘ftools’

scriptname = File.basename(FILE)
unless ARGV.length == 2
$stderr.puts “Usage: #{scriptname} source_dir dest_dir”
exit 1
end
from_dir = ARGV0
to_dir = ARGV1
sub_start = from_dir.length

Find.find(from_dir) {|f|
action = ""

if (/\.dat$/ =~ f )
action = “copy”
elsif (/\.msf$/ !~ f )
File::directory?(f) ? action = “mkdir” : action = “touch”
end

if (action != "")
new_item = to_dir + f[sub_start..-1]
$stderr.print “#{action} #{new_item}…”

case action
when “copy”
File::copy f, new_item, true
when “mkdir”
File::makedirs new_item, true
when “touch”
File::open(new_item, File::CREAT|File::TRUNC|File::RDWR, File::stat(f).mode) {|file|
$stderr.puts “#{new_item} created”
}
end
else
puts “skipping #{f}”
end
}

Once you create this new tree, you can copy the insides of each account’s directory into a subfolder that you manually create inside the new tree.

As always, this recipe comes with NO WARRANTY. Always back up your data first. Etc., etc.

Published on 03/01/2006 at 04:01AM . Tags , ,

0 comments

Powered by Typo – Thème Frédéric de Villamil | Photo L. Lemos