Julio Biason
5 years ago
4 changed files with 44 additions and 2 deletions
@ -0,0 +1,41 @@ |
|||||||
|
+++ |
||||||
|
title = "Things I Learnt The Hard Way - Nothing More Permanent Than A Temporary Solution" |
||||||
|
date = 2019-07-29 |
||||||
|
|
||||||
|
[taxonomies] |
||||||
|
tags = ["en-au", "books", "things i learnt", "code", "writing code", "temporary solutions"] |
||||||
|
+++ |
||||||
|
|
||||||
|
Depending on where you look, "Nothing more permanent than a temporary |
||||||
|
solution" is either an old Russian proverb or a quote by Milton Friedman. |
||||||
|
Thing is, temporary solutions, unless you think about the future to fix them, |
||||||
|
will become permanent. |
||||||
|
|
||||||
|
<!-- more --> |
||||||
|
|
||||||
|
A temporary solution may appear either as a proof-of-concept or due some |
||||||
|
restrained deadline. You may create perfect [system |
||||||
|
specs](/books/things-i-learnt/spec-first), you may have a perfect |
||||||
|
understanding of the whole [in your Gherkin |
||||||
|
files](/books/things-i-learnt/gherkin) but, at some point, you'll put some |
||||||
|
small script to fix a minor problem, or do a "not so good" solution to a point |
||||||
|
due to deadlines. |
||||||
|
|
||||||
|
This happens and unless you take steps to get rid of those, you'll end up with |
||||||
|
a bunch of spaghetti code pretty fast. And that will snowball to a point that |
||||||
|
you won't be able to manage the project. |
||||||
|
|
||||||
|
Once a scrum master suggested that we came with an idea to our product manager |
||||||
|
to do something akin to "Every three sprints, we'll focus on product value; |
||||||
|
the fourth one is ours to fix the things that are annoying us". I don't think |
||||||
|
we ever talking to the product manager about this, but we managed to open |
||||||
|
issues on our ticket system about the small warts we left behind, specially |
||||||
|
due deadlines. So there we had, a specially crafted bug type for "technical |
||||||
|
debt" which we never actually took the time to fix. |
||||||
|
|
||||||
|
Unless you have a pretty good safety net to fix those, they will life forever. |
||||||
|
And it may be a better option to tell "we can't deliver in time" than adding |
||||||
|
(yet another) temporary solution, as hard as it is to convince the higher ups |
||||||
|
that you can't deliver the product with a temporary solution. |
||||||
|
|
||||||
|
{{ chapters(prev_chapter_link="/books/things-i-learnt/run-locally", prev_chapter_title="If It Doesn't Run On Your Computer, You Have A Problem", next_chapter_link="/books/things-i-learnt/config-file", next_chapter_title="The Config File Is Friend") }} |
Loading…
Reference in new issue