I know this question has been asked many times, but I see a lot of conflicting opinions, across the internet. I'm in no means a professional developer (i'm just a high school student).
I'm asking specifically for Ruby on Rails, but feel free to leave your general opinion as well.
If you are trying to learn authentication then yes go ahead and implement it.
But if you are trying to build a commercial grade product, then your best bet is to use a 3rd party library or commercial service that has been tested and it's stable and reviewed for security.