Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Suggestion] Names padronization #7

Open
ath67 opened this issue Jun 5, 2020 · 11 comments
Open

[Feature Suggestion] Names padronization #7

ath67 opened this issue Jun 5, 2020 · 11 comments

Comments

@ath67
Copy link

ath67 commented Jun 5, 2020

Why not process the text from the names before creating the hashes so you turn everything to lower case or upper case? This would make the search easier and less time consuming. Also would grant a more accurate result. Would need to explain in the webpage that is needed to hash the user name in the same pattern processed in the tool instead of advising to do multiple searches.

@ath67 ath67 changed the title [Feature Suggestion] [Feature Suggestion] Names padronization Jun 5, 2020
@cuducos
Copy link
Owner

cuducos commented Jun 7, 2020

Acredito que uma ideia melhor, que algumas pessoas sugeriram no Twitter, seja criar hashes das variações de nome:

  • Fulâno
  • FULÂNO
  • fulâno
  • Fulano
  • etc…

Faz sentido?

@ath67
Copy link
Author

ath67 commented Jun 7, 2020

Acho que padronizar os nomes antes de criar hashes é melhor, porque o usuário só precisa pesquisar uma variação. Ou voce teria que de alguma forma atrelar os hashes das variações a um mesmo resultado. Por ex:
Não importa se o usuário pesquisar o hash de JOAO ou joao que tendo um dos dois na base já daria a resposta positiva.

Não sei qual o mais fácil de implementar. Se estiver usando python mesmo (não conferi a execução do código) ai seria só criar um dict ou uma lista de listas(?)

@cuducos
Copy link
Owner

cuducos commented Jun 7, 2020

Acho que padronizar os nomes antes de criar hashes é melhor, porque o usuário só precisa pesquisar uma variação

Não. Teríramos “todos” os hashes, e não importa como o usuário digitar, acharíamos o match.

@ath67
Copy link
Author

ath67 commented Jun 7, 2020

Agora entendi melhor. Sim faz sentido. Não seria algo difícil de fazer.

@jeffersonvirgilio
Copy link

jeffersonvirgilio commented Jun 7, 2020

Todos esses problemas são evitados se a busca for feita pelo CPF, identificador único. O nome completo inclusive não é um identificador único. Mas não sei se na lista tem estrangeiros sem CPF.

@cuducos
Copy link
Owner

cuducos commented Jun 7, 2020

CPF não tem um muitas pessoa da lista. Não seria muito efetivo por causa disso…

@josecatalani
Copy link

Acho interessante uma abordagem de remover acentos, depois join por - e se possível, abrir uma possibilidade de campo extra (temos no dataset? como o colega apontou acima).
Por exemplo:

  • Fulano D'Ampário do Rosário -> para fulano-dampario-do-rosario
  • Patricia da Rosa Matos -> para patricia-da-rosa-matos

Pergunto do campo extra, pela possibilidade de pessoas com nomes iguais, pelo menos no começo do nome, existir uma separação que faça essa unicidade.

Outra questão que me ocorreu, é que na base de dados do governo (sus, ministério do trabalho etc), já vi acontecer de em nomes com apóstrofo, ele "separarem" a letra inicial do restante do sobrenome, ex:

  • Roberto D'Alessandro -> salvo na base como roberto-d-alessandro.

@cuducos
Copy link
Owner

cuducos commented Jun 10, 2020

Qual a vantagem e como isso melhoria o caso de uso, @josecatalani?

@josecatalani
Copy link

Qual a vantagem e como isso melhoria o caso de uso, @josecatalani?

Vantagem que vejo é na assertividade: Como no exemplo do Roberto D'Alessandro, padronizando esses símbolos(apóstrofos etc) em um hash clean ainda que amigável para depois fazer a hash, facilite. O usuário pode digitar o nome como: Dalessandro, DAlessandro, D Alessandro e D'Alessandro; Tanto quando a base (que é governamental (?)) pode estar cadastrado diferente do usual.

Se com campo extra existente, é mais uma garantia em caso de nomes duplos.

O que acha?

@cuducos
Copy link
Owner

cuducos commented Jun 10, 2020

O usuário pode digitar o nome

Não. A ideia não é o usuário digitar o nome. Não queremos esse dado na nossa plataforma, não queremos criar o hábito de digitar nome em qualquer plataforma que não seja muito conhecida e confiável (a nossa, acho, é confiável, mas não é conhecida hehehe…).

Preferimos manter como está hoje: o usuário não digita nome, apenas (parte do) hash. Por segurança, faz sentido.

@josecatalani
Copy link

Hmm agora ficou claro para mim! Apenas a entrada de hash, todo sentido.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants