Thinking Through

Share this post

One File That Every Project Needs

thinkingthrough.substack.com

Discover more from Thinking Through

Sharing the time-tested, industry-vetted tips & tricks for software engineers and engineering managers who looking for growth in the Tech Industry.
Continue reading
Sign in
Engineering

One File That Every Project Needs

(2 Min Read) Simple tip that can help you ship your project

Mayank Verma
Jan 26, 2023
1
Share this post

One File That Every Project Needs

thinkingthrough.substack.com
Share
Photo by Aaron Burden on Unsplash

When working on a project, you must create one file before doing anything else, even before you compile the boilerplate code for the first time. That single file could help you ship your project. It’s been a lifesaver for me. That file is called  changelog.txt. And here's why you should create one now.

Subscribe to get more tips like this

Building projects is hard. Even MVP or POC can take weeks to months. And that's the best case, assuming you don't get demotivated, have another idea, or end in a perfection loop of building all features before shipping it.

During the early phase of the project, there is no progress to show. Nothing has shipped and it can feel demotivating. So much so that after the initial excitement of the building a project wean off, the motivation to grind on the project to get to a shippable state is sometimes impossible to find.

That's where changelog can help.

Starting from day 1 of the project, write what you completed that day in the changelog file. Here is a sample of how my project changelog file looks like:

changelog.txt
--------------------------------
2023.1.22 - Changing timer class to handle timer issue better and keeping it siloed
2023.1.20 - Started debugging the stupid countdown timer issue that was getting reset
2023.1.15 - Configured CoreData and CloudKit
2023.1.14 - Added the registration logic and login screen
2023.1.12 - Completed the first load screen and design.
2023.1.11 - Created the main view and list of skeleton views of app
2023.1.10 - Setup the project and swift environment

While I may not be shipping stuff for a while, I do make progress. Keeping changelog helps visualize that saves me from falling off the rails when project is in lull. Every day, when I update the changelog, I see progress.

Now, before you say, "use git. It acts as a changelog", let me say, "you are right." While Git works for software projects, changelog works for all types of projects like woodworking, art, content creation, etc. Think changelog as a system to track and visialise progress.

Moreover, even for software projects, a local changelog file is faster than scrolling Git commit history.

Another thing to note is that this local project changelog file is private. The changelog we see on SaaS products or apps, is written by a technical writer and is very polished.

The changelog.txt I am talking about is raw and for personal use only. As you can see above.

Finally, if multiple people are working on the same project, find a way to identify each one contribution uniquely. In the past, I have used my initials [MV] as prefixes/suffixes.

Bonus Tip:

Once you are done writing the day's progress in the changelog, write the next task you want to complete on the top. The changelog can double up as mini-todo list as well and can help you get in the zone fast.

Next time you come to the project, you don't have to think about what to do next. Here is a sample

changelog.txt
--------------------------------
next - Create a background thread to continue running counter

2023.1.22 - Changing timer class to handle timer issue better and keeping it siloed
...
...

Caution: Don't add a laundry list of everything you need to do on top of the changelog file. Only add 1 or 2 immediate next tasks. Adding too many tasks will defeat the purpose of the changelog file (see the progress so far) and make it into all things you are yet to complete.

If you need to create a to-do list of all tasks, create another file, todo.txt, and add them there.

I hope this helps. Happy building!!

1
Share this post

One File That Every Project Needs

thinkingthrough.substack.com
Share
Comments
Top
New
Community

No posts

Ready for more?

© 2023 Mayank Verma
Privacy ∙ Terms ∙ Collection notice
Start WritingGet the app
Substack is the home for great writing