Advanced Checklist Techniques: Dynamic Checklists
It seems that creative tasks are not about the checklist at all. That's not so. There is also a special flexible type of checklists that can be useful.
Another Rare Type of Checklist
Recently, the blog featured two rare types of checklists: defensive checklists and negative checklists. One might think, “Isn’t it enough?” After all, most discussions elsewhere don't go beyond action checklists (READ-DO) and inspection checklists (DO-CONFIRM). By the way, there is a dedicated article about these two on the “So List” blog. Additionally, there’s a post on how to create a checklist. If you're even curious about what a checklist is, you’ll find a related article here.
To the satisfaction of this blog’s author, the aforementioned checklists do not fit all possible variant. Some unique personal or business processes require something more flexible than a conventional checklist, but more structured than no plan at all. While creating a plan from scratch each time is an option, it reduces productivity, as certain elements are repeated and waste unnecessary effort if approaches to them are reinvented.
For tasks requiring control in some areas and flexibility in others, there’s a special type of checklist — the dynamic checklist.
Dynamic Checklist: My Old Friend
Interestingly, I wrote about dynamic checklists three years before launching “So List”, even before writing about any other checklist types. At the time, I referred to it not as a dynamic checklist but rather as a methodology for software development. The article, still available online, is titled “The Meticulous Approach to Coding”.
The process of using a dynamic checklist is as follows: the user completes static items and then encounters a point that requires adding new items to the same checklist. These new tasks don’t necessarily have to be appended at the end. For instance, in my software development example, I added them mid-checklist.
Let’s define this checklist type:
It feels like such control lists were not widespread before the advent of software that allowed editing checklists digitally. Paper, although capable of many things, has its limitations. So I usually practice this type of checklist in some to-do or project management app.
Examples of Dynamic Checklists
Such an abstract concept is challenging to grasp without examples. Humans are typically visual thinkers, so let’s visualize. However, illustrating complex business processes with numerous checks is challenging.
Let’s focus on something pleasant — making pottery on a potter’s wheel.
Effective Checklist for a White Bowl
A potter's work is highly diverse, but we’ll use a straightforward example. Here are the initial rules for starting pottery work:
☐ Ensure the potter’s wheel is clean
☐ Remove jewelry and chains from hands and neck
☐ Wear fitted clothing
☐ Prepare a convenient container with water
These rules are universal for any small clay item. The next step makes the pottery checklist dynamic:
☐ Plan the work based on the desired shape and color
Clay offers endless possibilities. Pre-made checklists can’t capture all potential designs, but rejecting checklists altogether due to inflexibility is unwise. Forgetting to avoid loose-sleeved clothing could lead to an accident.
Dynamic checklists balance universal checks and flexible additions. For instance, creating a simple white bowl may only require a piece of clay, a cutting wire for removal, and white paint.
Post-planning, our checklist might look like this:
☑ Ensure the potter’s wheel is clean
☑ Remove jewelry and chains from hands and neck
☑ Wear fitted clothing
☑ Prepare a convenient water container
☑ Plan the work based on the desired shape and color
☐ Prepare one piece of clay
☐ Prepare a cutting wire
☐ Prepare white paint
The initial checklist transformed into a task-specific dynamic checklist for crafting a white bowl. This dynamicity allows the addition of tasks during execution.
The Original Software Development Example
Dynamic checklists also bring benefits to software development. When actively handling tasks, I used a checklist like this:
☐ Start task <task name>
☐ Plan task <task name>
☐ Write commit messages for <task name>
☐ Create a branch for <task name>
<Add subtasks here after planning>
☐ Ensure task completion matches the description of <task name>
☐ Move task to the “Review” status <task name>
☐ Conduct review for <task name>
☐ Move task to the “Testing” status <task name>
☐ Verify task performance in appropriate environments <task name>
☐ Mark task as complete <task name>
I highlighted the point where task-specific steps were added. This format ensures consistency across tasks, improving routine control.
Dynamic checklists are invaluable in software development, aiding in planning, execution, and testing phases. They won’t make everyone a stellar developer (just like using the AI tools), but they elevate performance through disciplined processes.
A Few More Words About Dynamic Checklists
Creative professionals often hesitate to use checklists, considering them too rigid. However, for those seeking better results, dynamic checklists offer flexibility and control, managing routine aspects while leaving room for creativity.
Inspired to try this new checklist style? Subscribe to “So List” for more insights into these simple yet powerful tools. Familiar with them already? Unlikely — they hold too many secrets.