diff --git a/lib/tasks/rake_helpers.rb b/lib/tasks/rake_helpers.rb
new file mode 100644
index 0000000000000000000000000000000000000000..039360d13bc743f235618f41ac6cc7d40a9ff9bc
--- /dev/null
+++ b/lib/tasks/rake_helpers.rb
@@ -0,0 +1,52 @@
+#   Copyright (c) 2010, Diaspora Inc.  This file is
+#   licensed under the Affero General Public License version 3 or later.  See
+#   the COPYRIGHT file.
+module RakeHelpers
+  def process_emails(csv, num_to_process, offset, num_invites=10, test=true)
+    if RUBY_VERSION.include? "1.8"
+       require 'fastercsv'
+       backers = FasterCSV.read(csv)
+     else
+       require 'csv'
+       backers = CSV.read(csv)
+     end
+    puts "IN TEST MODE" if test
+    churn_through = 0
+    num_to_process.times do |n|
+      if backers[n+offset] == nil
+        break
+      end
+      churn_through = n
+      backer_name = backers[n+offset][0].to_s.strip
+      backer_email = backers[n+offset][1].to_s.gsub('.ksr', '').strip
+      unless User.find_by_email(backer_email)
+        puts "sending email to: #{backer_name} #{backer_email}" unless Rails.env == 'test'
+        Invitation.create_invitee(:service => 'email', :identifier => backer_email, :name => backer_name, :invites => num_invites) unless test
+      else
+        puts "user with the email exists: #{backer_email} ,  #{backer_name} " unless Rails.env == 'test'
+      end
+    end
+    churn_through
+  end
+
+  def prune_yesterdays_backups(f)
+    filenames = f.clone
+    filenames.sort!.map!{|d| d.delete('.tar')}
+
+    groups = filenames.group_by do |x|
+      Time.at(x.to_i).strftime('%m%d%Y')
+    end
+
+    today = Time.now.strftime('%m%d%Y')
+    yesterday = 1.day.ago.strftime('%m%d%Y')
+    to_delete = []
+    if groups[today].count > 23  # if this is the 24th backup of the day
+      puts groups[yesterday].count
+      groups[yesterday].pop
+      to_delete = groups[yesterday]
+      puts groups[yesterday].count
+    end
+
+    to_delete.map!{|x| x + '.tar'}
+  end
+end