Great!, also we can add some scopes here to make it more readable, maybe something like:
`Repo.need_help.except_from(current_user).match(params[search]).order(sort_criteria).page(params[page])`

* 2 scopes need_help and except_from
* rename `search` method on model to `match`, if/else/scoped can be avoided
* use short method `page()` from will_paginate and define `per_page` on the model