Unless you pass start_year and end_year to date_select, you cannot pass include_blank as an option. If you do, bustination occurs. I believe the problem to be in select_year, if include_blank is set to true it's using 0 as the date to pass around to the other functions. select_year really doesn't seem to deal with this well. Even using the examples from the API docs will cause explosive errors to occur. I'll also note that date_select is not tested in the unit tests. Watch this space for further developments, until then all hell will break loose in your browser should you try to include_blank with date_select!