In reviewing and testing the code, @mboneil10 pointed out to me that there are a lot of complicated data structures being tossed around the code — and in particular, it's tough to know what each piece of information is unless you're a bus driver.
Since I won't be around forever to maintain this code, a good final push on this project would be to refactor it using ActiveRecord to more maintainably and clearly describe the various objects.
This will likely be easiest to achieve as a ground-up rewrite.
In reviewing and testing the code, @mboneil10 pointed out to me that there are a lot of complicated data structures being tossed around the code — and in particular, it's tough to know what each piece of information is unless you're a bus driver.
Since I won't be around forever to maintain this code, a good final push on this project would be to refactor it using ActiveRecord to more maintainably and clearly describe the various objects.
This will likely be easiest to achieve as a ground-up rewrite.