Perks of the Dev Log
Tags: productivity, devops, junior
Published: 2020-03-20 23:14:07

Though far from controversial, the practice of maintaining devlogs can be a somewhat polarizing idea amongst developers. Is it a waste of precious development time and brainpower? Or is it a necessary tool to optimize efficiency? 

Whichever side you take is likely an indication of your personal project organization and workflow style. As a junior developer, I'm an ardent believer that devlogs are a wildly beneficial habit to develop early. Despite personal tendencies and preferences, consider this... 

• You're due for a project status report with your senior.
• You're feeling slightly stagnant and looking for areas of personal growth.
• You're feeling confident with your skillset and ready to go for the big promotion.

As developers, we solve a lot of problems and see a lot of code. When it comes time to produce measurable results, invest in new skills, or share our achievements, having devlogs makes accomplishing these objectives easy and insightful. 

#### Nitty Gritty Details
Perhaps the most fundamental value of a good devlog is that it provides a space to capture the minute details as a project unfolds. 

• What did you work on each day? 
• When was a certain feature implemented? 
• Why was one method used over another? 

As we code, we quickly assess our needs, make decisions, and implement elements or changes. Problem solving becomes second nature to the point that we may not always be fully aware that we're making critical decisions.

Keeping a thorough devlog is an opportunity not only to document those decisions, but to take pause and consider *why* we've made that choice and *if* it's the best method. Especially as a junior, I believe this is valuable way to step back and build a thoughtful, well-rounded approach to problem solving. 

Aside from the opportunity to enhance our critical thinking, storing this type of information in a devlog makes project reporting a breeze. It's as easy as perusing your notes for the past week and sharing the highlights with your senior. Your devlog doesn't have to be verbose, it's simply a space to save the nitty gritty details for future reference and reflection.

#### Guidance and Growth
Devlogs can be a powerful resource for project management as well as personal reflection. Apart from documenting what was done, devlogs are often used to organize daily and general project objectives. Beyond scheduling, this is the perfect place keep a code journal of sorts, noting challenges and the steps taken to find a solution.

Having a sense of workflow is an important way to stay on track and meet goals efficiently. I like to kick off my daily workflow by gathering my thoughts and jotting down daily targets and stretch goals. This has proven to help keep me more focused and productive overall. Being able to mark off each goal as it's met is not only rewarding, but makes it easy to have a sense of what was accomplished (or what proved difficult) each day.

Of course, not all days are filled with wins. By nature, software development requires constant curiosity, an awareness of our limitations, and the motivation to expand our understanding. Devlogs give crucial insight into what proved challenging and where we can look to improve our skillset. Both throughout a project as well as after completion, it is highly valuable to reflect on the barriers that we've encountered. This gives us the opportunity to enhance areas of personal weakness and grow as developers. 

Both the organization and the observations that a good devlog provide are essential to structuring and learning from each and every project. 

#### Final Thoughts
The achievements, the difficulties, the solutions, and the strains that a devlog maintains give us valuable insight into our personal knowledgebase. Though at times it may seem mundane, it's a concise way to document the story of how we are growing as developers. Whatever the objective is - to produce an impressive application for your boss, to explore and enhance your own knowledge, or to prove yourself to be a valuable asset - devlogs are an astute resource for organization and reflection.