Spot on. I would like to specifically emphasize bokonist's "b)" - I only made real progress with design when I started consciously seeking out design that looked amazing- even taking photographs occasionally of billboards etc., and then trying to recreate it. Otherwise you're doing the programming equivalent of reading about languages without even bothering to type out examples- let alone composing your own.