Ruby Methods: differences between load, require, include and extend in Ruby.
Small programs usually can be stored in one file so it won’t be a problem to read (and understand) them. Things start to complicate as your code grows: one day you may lose yourself in your own chaos and find it hard to organize your application. At this point, the best idea is to split your code (as a whole) into several files. To do that you need some helpful tricks that will let you use those files together. That's where the Ruby Methods come in.