Time Boxing: Boosting Learning and Productivity in the Coding Journey
Tags: beginners, python, productivity, codenewbie
Published: 2023-06-25 21:17:38

I recently came across this time management technique called time boxing, and I've been using it to improve my time management skills as I transition from a career in Design to becoming a Software Engineer. I read up on programming every day, and even more, on days when I feel like I haven't done enough coding. One article I found on the Capital One Tech Blog talked about [8 Soft Skills Every Software Developer Needs](https://medium.com/capital-one-tech/8-soft-skills-every-software-developer-needs-683e163da400), and one of the skills mentioned was time management, with time boxing being suggested as a method to improve it. So, I decided to give it a shot!

As someone new to coding, I started with the tutorial phase, where I watched videos and tried to replicate what I learned. But I realized that to move beyond that phase and tackle small projects while understanding key concepts, I needed to take a more practical approach. Let me show you what I've been doing.

Right now, I'm learning Python. I've been using a [YouTube playlist by Code Bro](https://youtube.com/playlist?list=PLZPZq0r_RZOOkUQbat8LyQii36cJf2SWT) to learn the language. What I love about it, is that the instructor provides practical examples at the end of each topic. For instance, after learning about lists, sets, tuples, and dictionaries, he guides you in building a shopping cart program. This helps me break free from the tutorial cycle and apply what I've learned.

Here's a scenario: I've just learned about loops and designed a credit card program using them. However, I need more exercises to practice, but the tutorial moves on to the next topic. This is when I turn to AI, specifically Chatgpt or Google Bard. I ask them a prompt like;

"Give me 5 simple exercises to help me understand loops in Python."

Notice how I emphasize "simple" because my goal is to build confidence by starting with easier tasks and gradually scaling up.



![A screenshot showing chatgpt output from the prompt - Give me 5 simple exercises to do that will help me understand loops in Python.](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gymxd9uc0cc6i15hjsfk.png)


Once I have these exercises, I set up my coding environment, PyCharm, and start the time boxing process. I set an alarm for 5 minutes using Siri:

"Hey Siri, set an alarm for 5 minutes..."

During these 5 minutes, I give my best shot at solving the exercises. If the alarm goes off and I'm still struggling or haven't found the correct solution, it is hands up and a complete stop. Next, I focus on finding the solution and fully understanding it. I usually dedicate a maximum of 20 minutes to researching and reading about the solution. To make the most of my time, I have a Notion document set up where I store links for further research if my initial 20-minute session isn't enough.

This method has been effective in improving my Python knowledge, exposing me to new concepts and readings, and helping me stay focused on the task at hand.

If you find this approach helpful, let me know! And if you have any other tips or tricks you use, please share them with me. I'm always eager to learn more.

By the way, I also time-boxed myself while writing this piece. Drumroll, please... 🥁🥁🥁🥁🥁🥁 It took me 18 minutes and 11.90 seconds!

Ciao!