1.because they make the partial less dependent on other code
2.expression is ruby code that prints out a value in html
3.just replace the word "scaffold" with the word "model"
4.rails generate scaffold thing <column name 1>:<column type1> <column name 2>:<column type2>