# Every other week recurring event

**URL:** <https://www.ruby-forum.com/t/every-other-week-recurring-event/153039>\
**Category:** Rails\
**Created:** [November 11, 2008, 12:17pm UTC](https://www.ruby-forum.com/t/every-other-week-recurring-event/153039 "2008-11-11T12:17:03Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![david](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/aeb1de/32.png) [@david](https://www.ruby-forum.com/u/david)\
**Post date:** [November 11, 2008, 12:17pm UTC](https://www.ruby-forum.com/t/every-other-week-recurring-event/153039/1 "2008-11-11T12:17:03Z")

</div>

I have the code for computing a weekly event:

(start\_date…end\_date).select{|d| d.wday == wday}

but I am wondering if anyone has any ideas for using this to figure  
out a recurring event for every other week. Is it possible to somehow  
specify every other within the .select method? Any other  
implementation ideas?

---

<div class="post-metadata">

**Author:** ![david](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/aeb1de/32.png) [@david](https://www.ruby-forum.com/u/david)\
**Post date:** [November 11, 2008, 7:55pm UTC](https://www.ruby-forum.com/t/every-other-week-recurring-event/153039/2 "2008-11-11T19:55:50Z")

</div>

here’s one way - not a one-liner, but not too complex:

start\_date = DateTime.parse(‘2008-01-01’)  
end\_date = DateTime.parse(‘2008-04-01’)

range = (start\_date…end\_date)

wday = 1  
use\_this = false  
every\_other = []

range.each do |date|  
every\_other \<\< date if date.wday == wday && use\_this  
use\_this = !use\_this  
end

puts every\_other.inspect
