From what I understand from Shadi, it sounds like files in the app/helper directory are only accessible in the views. Shadi felt strongly that code shared between the view and controller (what we normally would put in a Sinatra helper) should be in the lib folder. The controller file can then require the lib/authenticate file, and then explicitly state what methods the view should be exposed to. 

see app/controllers/application_controller.rb comments