While I agree with iandanforth that you're missing an important aspect of this, I'd like to commend you on what you have. My first attempt at writing a spaced-repetition algorithm turned out with the same results as yours, however your algorithm is a much neater way of looking at things. If you take iandanforth's comment to heart try to incorporate it into what you already have, instead of rewriting.
HN user
numbeast
Google's recent post 'defining openness' seems to be drawing a lot of criticism from Hacker News, both directly in comments, and indirectly in the tone of articles that are posted.
First, please recognize that this in an internal memo we are getting a glimpse of. It's a "Hey guys, I know we've been talking a lot about open, here's what I think you should strive to put into a product if you're going to use open to describe the product."
You think it makes Google look perfect? This is an internal memo! He's talking to the troops, have you ever heard a pep talk that started with "We kinda failed on that do no evil thing didn't we?"?
Second, the author specifically mentions why Google doesn't open up certain things, it wouldn't be beneficial. If you don't agree with his reasoning, then fine, but at least we know the reasoning (although it's not hard to figure out on your own).
I simply cannot understand the kind of person that gets angry at Google when they open source some products but not others. How many products has Microsoft open sourced? Yes Google's motives are based on profit, all of our motives are. The point is I'm excited for Android, Go, and Chrome. They have raised the bar in quality software and I couldn't care less how ads find their way to my blog or why Wikipedia is the first search result on any topic.
I wonder what words they consider to be "positive" and "negative".