iain / elo Goto Github PK
View Code? Open in Web Editor NEWThe Elo rating system is a method for calculating the relative skill levels of players in two-player games such as chess and Go.
Home Page: http://iain.nl
License: MIT License
The Elo rating system is a method for calculating the relative skill levels of players in two-player games such as chess and Go.
Home Page: http://iain.nl
License: MIT License
My game has thousands of daily active users. Elo worked well for a while, but then I started running into issues:
Elo::Helper#initialize
keeps adding to a class instance variable, the @all
array. This makes Elo incompatible with multi-threaded environments (eg JRuby).
The @all
array never lets go of references, leading to memory bloat.
I resolved both issues by removing the @all
array. Maintaining that array (or something like it) seems outside the scope of this gem's responsibilities.
I'll submit a PR shortly.
This might not be appropriate, but if say you have a match that is subsequently removed and there have been more recent matches involving the players, is there a simple way to fix the elo scores?
Hi there,
I have a question about your gem and couldn't find another way to ask it, I hope this is ok:
I'm looking into using your gem - thanks for putting it together! I would like to use it with rails and have the classes descendants of activerecord. Any suggestions on how to modify it to work with rails? I'm sure I could read the source code a bit more and come up with something, but I figured I'd see if you had any input before I started.
I might be able to fork and make those changes if you're interested in interested in putting out an 'elo-rails' gem.
Let me know: alexkbird (at) gmail (dot) com
Cheers,
Alex
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.