learning hard stuff