Question: I'm looking for a gem or project that would let me identify that two names are the same person. For example

> 
> `J.R. Smith == John R. Smith == John Smith == John Roy Smith == Johnny Smith`
> 
> 
> 

I think you get the idea. I know nothing is going to be 100% accurate but I'd like to get something that at least handles the majority of cases. I know that last one is probably going to need a database of nicknames.

Answer: 
The best pre-coded you will probably find for this is the gem just called "text".

```
https://github.com/threedaymonk/text

```

It has a number of matching algorithms: Levenshtein Distance, Metaphone, Soundex, and more.
Ruby has a very nice gem called `text` and I've found the `Text::WhiteSimilarity` to be very good myself but it also implements a bunch of other tests