Through Olympic weightlifting.
All through primary and secondary school, and through most of university, I have scraped by on brute intelligence and my efficient memory. Like a lot of HNers, I suspect. But that began to leave me behind. I failed algorithms. I jokingly said to my professor a year later "I'm not smart enough for algo".
"You're plenty smart", he said. "You just didn't do any work".
I took up Olympic-style weightlifting ("Oly" to friends) about 3 years ago. It taught me the most important lesson of my working and studying life:
You cannot cram for a competition.
No one training session makes for success on the platform. Success comes from months of work. A few hours, every day or two. Each session is hard, sure, but by itself does not seem like much. But the cumulative effect can be amazing.
By my third year in computer science I was becoming more methodical about studying. My scores improved and my professors accepted me for honours. Thanks to the learned ability to stick to a project for months on end, I completed my degree last year with first class honours.
I wish I'd known earlier that consistency, and not flashes of brilliance, is what would get people to think of me as truly capable.