The Best Coding Advice I Ever Got: Take a Break
This post was written by Michael Djurdjevic, who completed our Online Web Developer Program and now helps other students going through the program as a Technical Coach. With a fresh red sharpie, I marked an “X” on my calendar exactly three months into the future. “No matter what, I’ll finish the curriculum by this day,” I thought. I felt […]
Reading Time 4 mins
This post was written by Michael Djurdjevic, who completed our Online Web Developer Program and now helps other students going through the program as a Technical Coach.
With a fresh red sharpie, I marked an “X” on my calendar exactly three months into the future.
“No matter what, I’ll finish the curriculum by this day,” I thought.
I felt intensely motivated – I was thrilled to take my first steps towards this new, successful future I envisioned. I had even quit my job to give Flatiron School’s Online Web Developer Program my full focus and effort. I planned to spend around sixty hours per week coding, with minimal breaks.
The next morning, armed with my ambitions and a fresh mug of coffee, I opened up Flatiron’s Learn IDE and got a running start on the Intro to Ruby labs.
For a while, my plan worked just fine. I was cruising through the early Ruby labs with little trouble. It took about two weeks before the labs started feeling harder, and my progress slowed down. The Tic-Tac-Toe lab was my first major hurdle – it took me well over an entire day of coding to complete. As I continued forward from that lab through the Object-Oriented Ruby section, my confidence in my programming skills continued to dip. Oftentimes, I felt confused by the abstract concepts introduced by the lessons:
“What’s even the difference between a class and instance? What does attr_accessor even mean? Why are hashes so damned hard to work with? Are other students easily passing these labs? Am I just bad at coding?”
I knew I wasn’t fully understanding the concepts the labs meant to teach me, but I stubbornly refused to slow down and ask for help. By the time I reached the Music Library CLI lab, I was extremely frustrated. I hadn’t taken a day off in nearly a month. I was exhausted, and this lab, more than any before it, felt incredibly difficult to me. After four days of headaches and blindly hacking together methods to pass the tests, I got stuck on the last set of failures. I finally opened a ticket for help via Flatiron School’s Ask a Question button, hoping to be told the answers to the tests so I could just move on. I walked away from my computer, and went to go grab a glass of water. When I came back, I realized…
My computer had automatically restarted for an update.
Panicking, I rushed to power my PC back on. I could feel my skin flush and my heart race as I mashed on the little IDE icon on my desktop. Within seconds, I realized that all my code was gone. I had never saved any of it in the four days I had been working on the lab. I opened up my curriculum browser, and jumped into my ask-a-question ticket to explain what had happened. I felt totally defeated. For a few minutes, I stared at my computer screen and contemplated giving up on the curriculum entirely. I vented some of my frustration to a Flatiron Technical Coach (If you’re reading this Matt, I owe ya’!), and he gave me a response I really wasn’t expecting:
“More than anything, you should take a break from coding for a day or two. You did this lab once and you’re gonna be able to do it again. Don’t worry about losing the code; whenever you feel ready to come back, put in a new ticket here and we’ll work through the lesson together over screenshare!”
He was totally right – I badly needed to take a break. I thanked him, and logged off. For the first time in a month, I went three complete days without turning on my computer. I took my dog out for morning walks, played some video games with my little brother, and watched Ex-Machina on my couch with a big buffalo chicken pizza pie. When I returned to my IDE and opened a fresh copy of the lab, I felt like my brain had somehow learned more over the past three days than it had the past three weeks. With the help of the Technical Coaches, within a few hours I had re-written all the code that previously took me four days to complete. And the best part: they helped me understand every line of code I was writing. I had my coding mojo back.
Ultimately, I took longer than three months to finish the Flatiron School curriculum, and that’s okay! I allowed myself time to really learn what the lessons were teaching rather than trying to get through, and I’ve got no doubt I’m a better programmer for it.
For anyone reading this who feels frustrated, exhausted, or overwhelmed as they learn to code: take time off if you need it, and never hesitate to ask for help – whether from the person learning next to you, over Slack, or – if you’re taking a Flatiron School course – over the Ask a Question button. There’s a really stellar community of Technical Coaches and fellow students who probably have felt a lot of the same things you’re feeling. Sometimes, a little pep talk is all you need to keep pressing forward.
Posted by Flatiron School / October 25, 2017
Learn to Code Python: Free Lesson for Beginners
Learning How to Learn
For some Flatiron School students, the shift to online learning can be difficult. Curriculum Designer Siana Altiise has tips for new students on how to excel in their program, beginning with learning how to learn.