Understanding solar cell technologies