1. Prototyping is very important.
- It helps me to visualize a design idea and possible modifications.
2. No documentation is better than source code.
- When using third party api, most of the documentation is not clearly enough to help me fit the api into my own situation.
3. Incremental integration testing is necessary.
- When using the google visualization api (charts api), I'd better implement it individually first and make it work. The api is a little more complicated than other apis.
4. During the implementation process of this project I have found that although I have extensively commented my own code, I still find it hard to make adjustment right after some changes in the code.
- Some parts of the implementation is completely depended on other parts of the code, and they need to be changed when the depended parts have been changed. I need to find a way of documentation to aid me in visualize the features of a module.
5. The scope of a project should be considered at the beginning and necessary adjustments should be made during the process of the project. In this case, there are two major factors that limit the scope of this project which are time constrain and available api.
6. Learn to progressively improve the quality of a project. That's why there are different version of the same products, and that's why programmers need to write code in a easy-to-manage manner.