Gauging Effort

10 May 2025

Effort Estimation in Programming Tasks

When working on our final coding assignment, I used effort estimation to plan how much time each task might take based on the complexity and my familiarity with it. For example, if I had to design some buttons or text boxes, then it would really take a small amount of time. I could copy and paste code or just ask Copilot to do it for me. For those problems, I would estimate small times within maybe 30 minuites.

However, tasks involving the supabase data tables were quite challenging for me. At first, my estimations were very scattered. I would over and underestimate the amount of time I needed. However, after a while I became more aware of the time it takes to complete certain things, and I realized that most complex tasks can be completed with about 90 minutes. Using that as a baseline, I could estimate other complex tasks depending on how intesive they seemed.

To keep track of how long each task actually took, I wrote down start and end times in my notes app. This worked fairly well as I often worked in long chunks of time. However, when I was particularly busy, I might’ve made a few inaccuracies. Sometimes I needed to do laundry, attend a meeting, or go to work. As a result, I had to estimate some of my times.

Why Effort Estimation Matters

Even if my time estimates weren’t perfect, they helped me stay focused and plan better. One benefit was being able to look ahead and figure out which tasks I could finish quickly and which ones might require more attention. With work, clubs, and events everywhere, it’s really helpful to know what tasks are generally completable.

Another benefit was learning how I code. I think I realized that there’s a time pattern to learning and implementing certain things. This is great information that I can use to not only plan in the future, but also understand where I could improve.

Having a task sheet with columns for “To Do,” “In Progress,” and “Done” also helped me visualize my progress. It was satisfying to move tasks across the sheet and see what I had completed. This simple tracking system also made it easier to estimate new tasks, since I could look at past ones as a reference.

Conclusion

Overall, effort estimation helped me stay organized and develop better time management habits, even if my predictions were sometimes off. Tracking my time allowed me to compare estimated vs. actual time, which showed me where I needed to improve and how to plan better in the future. It also made my workflow more efficient by giving me a clearer picture of the whole assignment. Estimating effort may not be exact, but it’s a useful skill for getting better at managing programming projects.