Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Rankings, você esta fazendo isso errado
Search
João Moura
September 02, 2013
Programming
0
210
Rankings, você esta fazendo isso errado
João Moura
September 02, 2013
Tweet
Share
More Decks by João Moura
See All by João Moura
State Machines in Elixir
joaomdmoura
0
310
Spreading my love for Elixir and State Machines
joaomdmoura
0
60
Unboxing Data Science (Short Verison)
joaomdmoura
0
84
Elixir a Language for the Future
joaomdmoura
0
120
Tackling Authentication with Phoenix
joaomdmoura
2
490
Desenvolvendo Produtos além das Metodologias Ágeis
joaomdmoura
1
66
Graph Theory Behind Immutable JS
joaomdmoura
0
570
E agora mobile?
joaomdmoura
0
70
(short version) Elixir By A Rubyist
joaomdmoura
0
200
Other Decks in Programming
See All in Programming
チームの境界をブチ抜いていけ
tokai235
0
180
Six and a half ridiculous things to do with Quarkus
hollycummins
0
180
はじめてのDSPy - 言語モデルを『プロンプト』ではなく『プログラミング』するための仕組み
masahiro_nishimi
2
540
Pull-Requestの内容を1クリックで動作確認可能にするワークフロー
natmark
2
520
PHPに関数型の魂を宿す〜PHP 8.5 で実現する堅牢なコードとは〜 #phpcon_hiroshima / phpcon-hiroshima-2025
shogogg
1
240
20251016_Rails News ~Rails 8.1の足音を聴く~
morimorihoge
2
430
Android16 Migration Stories ~Building a Pattern for Android OS upgrades~
reoandroider
0
120
AI Coding Meetup #3 - 導入セッション / ai-coding-meetup-3
izumin5210
0
3.3k
タスクの特性や不確実性に応じた最適な作業スタイルの選択(ペアプロ・モブプロ・ソロプロ)と実践 / Optimal Work Style Selection: Pair, Mob, or Solo Programming.
honyanya
3
180
Claude CodeによるAI駆動開発の実践 〜そこから見えてきたこれからのプログラミング〜
iriikeita
0
280
One Enishi After Another
snoozer05
PRO
0
100
登壇は dynamic! な営みである / speech is dynamic
da1chi
0
340
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Faster Mobile Websites
deanohume
310
31k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
61k
Automating Front-end Workflow
addyosmani
1371
200k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.2k
Designing for Performance
lara
610
69k
Building Adaptive Systems
keathley
44
2.8k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Git: the NoSQL Database
bkeepers
PRO
431
66k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
10
870
Building Better People: How to give real-time feedback that sticks.
wjessup
369
20k
RailsConf 2023
tenderlove
30
1.2k
Transcript
João Moura @joaomdmoura github.com/joaomdmoura
PALPITEROS RUBYSOURCE
TEMOS vAGAS!
[email protected]
rankings você esta fazendo isso errado
por que? onde e como?
GAME NEWS
GAME NEWS
objetivo ordenar e distinguir
quão hábil relevante? fator!
Relevância é dinheiro
1
None
Ranking Relevância Resultado
Ranking Relevância Resultado
problema Resultado errado!
“eu quero ser o maior treinador de todos os tempos”
1 2 3 1000 2000 1500
1 2 3 1000 2000 1500
1 2 3 1000 2000 1500 10
1 2 3 4 1000 2000 1500 10
“eu quero ser o maior treinador de todos os tempos”
Só que não
Consequência objetivo x realidade
Habilidade != histórico
Rankings não são coisa de criança
é possível algorítimos
“Um algoritmo é uma sequência finita de instruções bem definidas
e não ambíguas, cada uma das quais pode ser executada mecanicamente num período de tempo finito e com uma quantidade de esforço finita”
ELO rating
Rating game
Rating game Ra = Rb
Precisão Nø partidas
Microsoft sim, microsoft
Microsoft sim, microsoft
+
TRuESKILL
TrUE Skill ELo Rating on Steroids
distrust SKILL rating {
SKILL distrust
distrust USER game SKILL
2000 100 1500 500
2000 100 1500 500
distrust SKILL
distrust SKILL
distrust SKILL
x DESAFIO distrust SKILL
WIN LOST dificuldade
Microsoft sim, é patentiado
Sigma ̇ Ruby! ruby! Ruby! Ruby!̇
100.times { user_1.won (user_1.rating - user_2.rating) user_2.lost (user_2.rating - user_1.rating)
user_2.won (user_2.rating - user_3.rating) user_3.lost (user_3.rating - user_2.rating) user_3.won (user_3.rating - user_4.rating) user_4.lost (user_4.rating - user_3.rating) }
2.times { user_5.won(user_5.rating - user_2.rating) user_2.lost(user_2.rating - user_5.rating) } 2.times
{ user_5.won(user_5.rating - user_1.rating) user_1.lost(user_1.rating - user_5.rating) } expect(User.ranking.first).to eq user_5
None
x.rating x.position x.matches x.won(difficulty) x.lost(difficulty) EASY
CODEPONG Devs também fazem esporte
CODEPONG Devs também fazem esporte
Habilidade COnfiança EXpectativa acertividade
COnclusão
COnclusão Todos participaram
COnclusão Todos participaram produtividade despenca
COnclusão Todos participaram produtividade despenca Akita é japonês e não
joga bem
Revisão POssibilidades Relevância ALgorítimos SIGMA PING PONG é LEGAL
TAKE OFF CONF
None
None
FEVEREIrO 2014
Thank you! @joaomdmoura github.com/joaomdmoura