Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
0.1. Project History
The project history is a bit confused as my goal form the beginning was a Ruby Rails application, but I started not knowing either ruby or Rails. So I decided to learn first ruby, then Active Record, then Rails. All the time I was learning, I was writing code. Each time I decided to learn the next major topic, the code branched. As I was learning faster than the code was evolving, many functions were left behind at each branch.
- The first version (postgres branch) was some ruby scripts to collect home energy consumption data and store it in a postgresql database.
- The next rewrite was when I decided it was silly to write database access routines for postgresql, when Active Record already existed.
- The third rewrite (activerecord branch) occurred when I got tired of writing similar custom code for each data source and decided table-driven design was more flexible than object inheritance. Active Record provides the tables.
- The fourth rewrite (master branch), in progress, is to merge all previous code fragments into Ruby Rails 3.
- The fifth rewrite (still master branch) creates a stream abstraction to regularize all the previous code.