feedback
Control and Correlation
The fastest way to learn something is to do something
An Article by David R. MacIverSuppose you have a problem to solve. What do you do?
Well, you sit down and think real hard, and after extensive and careful planning you try the well thought out and rigorous solution that you have thought up. Right?
No, wrong! Bad.
The correct thing to do when you have a problem is:
- Think for a short amount of time.
- Make sure it is safe to try things.
- Try something you think will work.
- Observe the result. If you succeeded, yay you solved the problem! If it didn't work, think about what that means for the nature of the problem and try again.
How can we develop transformative tools for thought?
A Research Paper by Andy Matuschak & Michael NielsenConventional tech industry product practice will not produce deep enough subject matter insights to create transformative tools for thought.
...The aspiration is for any team serious about making transformative tools for thought. It’s to create a culture that combines the best parts of modern product practice with the best parts of the (very different) modern research culture. You need the insight-through-making loop to operate, whereby deep, original insights about the subject feed back to change and improve the system, and changes to the system result in deep, original insights about the subject.
When Customer Journeys Don’t Work: Arcs, Loops, & Terrain
An Article by Stephen P. AndersonThinking [in terms of loops and arcs] allows us to let go of a specific journey or sequence, and imagine dozens of scenarios and possible sequences in which these skills can be learned. This doesn’t mean there aren’t more fundamental skills that other skills build upon, but we can let go the tyranny of how, precisely, a person will move through a system. We’re free to zoom in and obsess on these loops, which does two things for us:
- Approach the design of a system as the design of these as small but significant moments of learning.
- Consider the many ways these loops might be sequenced, with the exact order being less important.
Asynchronous Design Critique: Getting Feedback
An Article by Erin CasaliGetting feedback can be thought of as a form of design research. In the same way that we wouldn’t do any research without the right questions to get the insights that we need, the best way to ask for feedback is also to craft sharp questions.
Deadlines are bullshit
In software development deadlines are a necessary evil. It is important to understand when they are necessary, and it is important to understand why they are evil.
- External vs. internal deadlines
- Why are internal deadlines evil?
- Engineers who love their work
External vs. internal deadlines
When are deadlines necessary?
- Contractual obligations
- Technical liabilities (e.g., dependency EOL)
- Compliance, government, investors, and other external stakeholders
What do all of these deadlines have in common? They are all important. They are all deadlines that cannot be missed. They are all external.
When are deadlines evil?
- Your manager says you have a deadline
- Your software development methodology says you have deadlines
What do all of these deadlines have in common? None of them are important. They are arbitrary. They are all internal. They are all bullshit.
Why are internal deadlines evil?
- Estimation: When estimating engineering work a substantial time investment is required by an engineer in order to get an accurate estimate.
- Misaligned Incentives: There is an incentive to lie and give estimates much longer than the feature is truly expected to take.
- Low Morale: Deadlines are likely to be missed often. Repeated failure has a cost to the morale of the team.
- Micromanagement: Deadlines are wielded by middle managers as a whip to harass and annoy engineers working on features.
- High Stress: When engineers feel the pressure of other stakeholders holding deadlines over their heads it creates an environment of high stress.
- High Turnover: On teams with high turnover rates the best engineers have an easy time finding new work and leave quickly, the worst engineers have a difficult time finding work and remain. This selects for a lower quality team over time.
Engineers who love their work
The resolution is simple. Never have internal deadlines. Operate on a prioritized and ordered list of features. Estimate only when necessary to prioritize and do so in a t-shirt sizing way. Trust your engineers and they will begin to love their work. Engineers who love their work are happy and productive.