class String
  define_method :starts_with? do |other|
    head = self[0, other.length]
    head == other
  end unless defined?(:starts_with?)

  define_method :ends_with? do |other|
    tail = self[-1 * other.length, other.length]
    tail == other
  end unless defined?(:ends_with?)
end
