Blind Spot
Context
You are starting to work with an existing team and code base, and you need to engage the key stakeholders.
Problem
How do you pick the first moldable development task to focus on?
Forces
— The stakeholders are already heavily committed to their current development tasks, and have little time to spare for you.
— They are almost certainly skeptical that moldable development will make them more productive. You need to demonstrate early success to get the customer to commit long-term to further collaboration.
— It can be difficult to pick a task that is both feasible in a short amount of time, and also brings value to the stakeholders.
Solution
Find the parts of the system that are creating problems for the stakeholders and make them explainable .
Steps
The “blind spots” are the aspects that are difficult to understand, to monitor, or to debug. Pick one of these blind spots as a target. The task should be feasible in reasonable time ( i.e. , hours or days, but not weeks or months) but non-trivial.
There should be a clear value for the stakeholder, that is, do something that the stakeholder has difficulty with.
Examples
Some typical examples are
(i) exposing hidden dependencies between features,
(ii) visualizing performance costs of test runs on a cluster, or
(iii) providing views to gain insights into scheduling deadlocks.
Consequences
Since the stakeholder has little time to spare to guide you, you may have to work in the dark at times. Be sure to always have something to show when you come back with questions.
By quickly developing a solution to an ongoing problem, you will engage the stakeholder.
It does not matter if the custom tools you develop do not perfectly match the stakeholder's needs, as the only goal is to convince the stakeholders to commit to closer and longer-term collaboration.
Known Uses
Finding and understanding legacy feature toggles in the Open edX Proposals project is a public example of a Blind Spot tackled with GT during a hackathon.
Related patterns
A Blind Spot will manifest itself as one or more instances of a Moldable Object.