Learn Code the Hard Way