3 ms·
When a developer says “this is a temporary solution” they mean “this is a temporary solution forever”.
by WhyNotHugo 2y ago
When a developer says “this is a temporary solution” they mean “this is a temporary solution forever”.
- Dalewyn 2y agoThere is nothing more permanent than a temporary solution, and nothing more temporary than a permanent solution.
- throwaway365x2 2y agoThat's very true. When a customer has a problem, you create a solution to it. Often the problem is part of a much larger space, so you tend to have discussions of all the possible features you could implement. This is a necessary step to gain knowledge about the problem space, but it can lead you to think that the solution have to cover it all Time restraints leads to a "temporary" feature to solve the customer's immediate need. Most of the time it turns out that all the other features are neither necessary nor important enough to spend time on. Projects without time restraints or focus tends to create a complex system that will "solve" the entire problem space. Most of the time it turns out that our assumptions are wrong and we need to do a major refactoring. "Temporary" solutions may not have the best code structure or architecture, but it is not necessarily a bad technical debt, as many new developers to the project seems to think it is. Also, the time restraints of a temporary solution encourages the developer to create simple code and not "clever" code, because they can always blame time restraints for their lack of cleverness. If the code has been mostly unchanged for years, somewhat maintainable and solves the customer's problems, it's not really a problem.
- pphysch 2y agoI agree. Temporary / bandaid solutions are totally great if they are straightforward to implement AND unimplement.
- gscott 2y agoThe beta version works fine, lets just keep it.
- Moru 2y agoNever make the "Proof of concept" so good it is actually usable.
- Jerrrrrrry 2y agoWords to be forever-tentatively employed by :)
- macintux 2y agoWrite the proof of concept in a language that the company doesn’t want to support. Erlang, Haskell, Prolog.
- iancmceachern 2y agoThey mean temporary for them