I use Pry a lot. If I had to develop without it I'd spend a hell of a lot more time not writing Ruby code. Often I use Pry in a Rails project as part of rails console but I also use it with my non-Rails Ruby projects. I wanted to get around having to append commonly used directories to the $LOAD_PATH each time I fire up a Pry session.
Ruby code you place in your ~/.pryrc is executed when your Pry session begins.
Here's the relevant lines from my ~/.pryrc that add the appropriate paths to $LOAD_PATH during start up.
#~/.pryrc ⋮ # add the current directories /lib and /spec directories to the path if they exist before_session = Proc.new do |out, target, _pry_| dir = `pwd`.chomp %w(lib spec test).map{ |d| "#{dir}/#{d}" }.each { |p| $: << p unless !File.exist?(p) || $:.include?(p) } end Pry.hooks = { :before_session => before_session }