Data science

I find using the key `result` as `:success` or `:failure` makes this harder to read. But either way, this is fine. I probably would have had separate methods for successes and failures.