Getting Organized: Using version control in your daily life

Posted
Comments 0

I enjoy applying technical concepts that have been field-tested time and time again in the industry to other aspects of work and life. In my last blog, I did an investigation into applying the concepts of server load balancing with team management. While writing these blog posts, I started storing my ideas in a Google Drive folder, using a very basic versioning system to keep track of the ideas I had written and developed so far. I used simple text tags in the names to track the progress of each file.

[IDEA 2024-01-23] - Version control in life
[WRITTEN 2024-01-24] - [IDEA 2024-01-23] - Version control in life
[POSTED 2024-01-25] - [WRITTEN 2024-01-24] - [IDEA 2024-01-23] - Version control in life

Which brings me to the concept for this post: how can you apply the concepts of version control, commonly used for software engineering and complex documentation projects, to aspects of your everyday work and life to help you stay organized? Adding some simple methods taken from common version control methodologies can be useful in many different aspects of life and work. Take for example financial records, applying some basic naming conventions and versioning to your filing (whether digital or hard copies) can provide some much-needed ease of access to a set of information that can easily become overwhelming.

Travel Plans are another great example. Maintaining a versioned itinerary for your travel plans, with updated details, notes, and tracked changes to your schedule can help add order to what could otherwise quickly grow to be a chaotic experience.

So let’s take a look at some of these aspects of version control that are commonly used in engineering, and dive into how they can be applied in work and life.

Naming Conventions
One of the tenants of version control software is naming your branches, and this is a very useful concept to carry over to daily life, whether files and folders in your PC or your Drive. Adopting a consistent naming convention for your files and folders helps easily recognize what you’re looking for, and is a major boon when searching for something you can’t find. This could include dates, project names, or a combination that makes sense for you. Include version numbers or dates in the file names to easily identify the latest or specific versions, but try to stay away from using the “image_final.png”, “image_final_final.png”, “image_final_final_final.png” method. Standard versioning in software uses the Major.Minor.Patch scheme and this can be helpful for documents as well. For example, the file name image_1.0.3.png means that it’s the 1st MAJOR revision of the image, and 3 quick ‘patches’ or tweaks.

One thing to keep in mind with your naming is operating system compatibility. For most Mac and Windows users it’s not an issue, but for users who use Command Prompt, Powershell, Terminal, etc… certain characters like spaces can be annoying to work with. This is why you’ll often see ‘techie’ types use _’s in their file names instead of spaces.

Documenting Changes
Establishing a changelog for your projects or daily activities is crucial for tracking the evolution of your work and gaining insights into the decision-making process. Consider photo editing as an example. While adjusting color curves and contrast might become second nature during the editing process, it’s easy to forget the specific levels and settings used, especially when revisiting the task after some time. Personally, maintaining a change log and documenting my workflow has proven invaluable. Despite my initial confidence in remembering the exact steps taken for a particular result, the next day inevitably brings a blank slate if not documented. This practice serves as a reliable reference, ensuring a smoother continuation of tasks and avoiding unnecessary repetition when returning to a project after some time.

Time-Stamps
Think about keeping time-stamped notes or journals for personal and professional activities. This helps you review your progress and reflect on your experiences. Timestamps in your notes, whether written or typed, can be an invaluable tool in tracking changes over time and even just finding information quickly. Let’s use tasks and to-do lists as an example.

Having timestamps for when a task was added to your list (as well as potentially when a task was updated, completed, or simply worked on) can be a great tool to prioritize tasks and keep track of your progress. Consider the following task list:

Email Cheryl.
Newsletter.
Verify expense reports.
File TPS reports.

It’s just a simple bullet-point list of the things that need to get done. Odds are you’ve got at least three sticky notes somewhere in your office that look like this. But let’s try adding some revisioning and timestamps to our todo list:

Task                     Added          Started        Completed
Email Cheryl             [2024-02-20]
Newsletter               [2024-02-21]   [2024-02-23]   [2024-02-25]
Verify Expense Reports   [2024-02-22]   [2024-02-22] 
File TPS reports         [2024-02-23]   [2024-02-25] 

How does this additional information help? To start, having the date the task was added gives some quick information to help prioritize the items on the list. At a glance, you can see some of the timestamps that are well overdue. It also gives an easy way to see what has been started. Starting a task from zero can be daunting at times, simply knowing that a task has already been started can make it so much easier to dive in and get to work. Knowing that you have checkpoints along the way will help break down the work into more manageable segments (using sprints and agile in everyday life, maybe a topic for another blog?).

Using a task management system that allows you to track changes and updates gives some great flexibility for updating task descriptions or adding comments to provide context for modifications.

Some other applications of timestamping could include health and fitness tracking. Creating a timestamped log for your health and fitness routines can help you track changes in your exercise, diet, and overall health. This can not only give you valuable insights over time but can also be a tool to keep you on track and motivated. I won’t dive too deeply into this topic as there are many amazing health and fitness blogs out there that have far more experience and qualifications on the subject than I do. Take a look and see what’s out there, there are some great examples of how to implement ledgers and logs in your health and fitness journey.

Finally, consider learning and skill development – If you are in school or taking classes, I highly recommend adding timestamps and versioning to your note-taking regimen. Manage your learning materials using version control. Keep track of revisions to your study notes, learning plans, and skill development projects.

Backup and Recovery
Finally, lots of software these days keeps version and change history so that you can see prior changes and revert, but keeping a hard edit trail can be useful for more critical information at times, so I’ll leave you with this final point…

Hit the save button!

Author

Comments

There are currently no comments on this article.

Comment

Enter your comment below. Fields marked * are required. You must preview your comment before submitting it.