Organisms -> systems -> organs -> cells -> bio-molecules -> ...
While scientists can understand concepts at each level, understanding each supporting level helps us understand the levels above it.
Organisms -> systems -> organs -> cells -> bio-molecules -> ...
While scientists can understand concepts at each level, understanding each supporting level helps us understand the levels above it.
Then create a ticket highlighting the test for someone with more domain knowledge to evaluate.
Then create a ticket highlighting the test for someone with more domain knowledge to evaluate.
I wrote about this to some degree in this section of my legacy code blog: jhumelsine.github.io/2025/03/24/l...
TL;DR - We can usually assume that legacy code is correct, since users confirm it.
...
I wrote about this to some degree in this section of my legacy code blog: jhumelsine.github.io/2025/03/24/l...
TL;DR - We can usually assume that legacy code is correct, since users confirm it.
...
AI tests would provide temporary coverage to refactor and reveal behavior and intent. Then replace AI tests with behavior inspired human written tests.
AI tests would provide temporary coverage to refactor and reveal behavior and intent. Then replace AI tests with behavior inspired human written tests.
1. Software practices are not presented by academia.
2. Prisoners Dilemma from Game Theory. Individuals are rewarded for closing tickets quickly rather than taking the time to invest in the codebase for the team.
3. It's too hard to break old habits.
1. Software practices are not presented by academia.
2. Prisoners Dilemma from Game Theory. Individuals are rewarded for closing tickets quickly rather than taking the time to invest in the codebase for the team.
3. It's too hard to break old habits.
jhumelsine.github.io/2025/03/24/l...
jhumelsine.github.io/2025/03/24/l...
If we trust that the legacy code is correct via user confirmation, then I think we can use AI to generate temporary Characterization Tests.
...
If we trust that the legacy code is correct via user confirmation, then I think we can use AI to generate temporary Characterization Tests.
...
...
jhumelsine.github.io/2025/03/24/l...
...
jhumelsine.github.io/2025/03/24/l...
This means that most legacy code "tends" to work even if we don't understand it.
...
This means that most legacy code "tends" to work even if we don't understand it.
...
Tech Debt makes more sense as a term when consider with Cunningham's original intent too.
Tech Debt makes more sense as a term when consider with Cunningham's original intent too.
While we can't predict the future, it is coming.
Therefore, we should design so that we're flexible enough to accommodate whatever will be coming.
While we can't predict the future, it is coming.
Therefore, we should design so that we're flexible enough to accommodate whatever will be coming.
jhumelsine.github.io/2024/08/08/b...
jhumelsine.github.io/2024/08/08/b...
However, responsibility is more than just the developers. It also applies to PMs, domain experts, managers, executives, etc.
If you produce a substandard artifact, you should feel the pain.
However, responsibility is more than just the developers. It also applies to PMs, domain experts, managers, executives, etc.
If you produce a substandard artifact, you should feel the pain.
jhumelsine.github.io/2024/08/08/b...
jhumelsine.github.io/2024/08/08/b...