Thanks for reading Code Solo! Subscribe for free to receive new posts and support my work. Oftentimes, we choose between an easier solution A and a more robust solution B. Developers tend to pick the one that is more robust. When presented with an alternative, they usually exclaim things like "That won't scale!" or "But what if in the future, there will be X?"
I kind of agree but as a consultant I usually see something like:
In a span of less than five years, we accumulated 100 text files and 1000 can_something functions, along with various other shortcuts.
All of these require refactoring simultaneously because they are prone to crashing due to hastily implemented solutions. However, despite these issues, the PO (product owner) continues to complain about crashes and demands new features, leading to the creation of new text files and functions, resulting in an endless cycle.
IMO, a good balance is the key. Always choosing for the quickest path because of YAGNI isn't always the good solution
And then 17 years later some poor schmuck won't be able to get the now multi-million dollar company to agree to change any of it. That developer's every day a grappling match between anxiety and empathy, as the day t̷h̸e̶ ̶c̸r̶e̴a̴k̴s̷ ̷t̵u̸r̵n̶ ḯ̴̙n̴̹͝t̸͙͋o̵̢̓ ̸̮̄i̵̳͝r̶͚̐r̶̯͋ḛ̵̾c̵̪̾o̴̮͝n̵̦̈́c̶̝͛i̷͌͜l̷̛̲ä̵̰́b̶͓̌l̴͔̈́e̸̘̽ ̷̯̍t̷̗͑ę̸͐a̶̯̅r̵͕̉s̵͇̕ ą̷̪̬͝n̸̝̒̿ͅd̶̻̋̈́ ̴̝̗̥̈́̆f̴͍̣̯͊̊̉i̸̝͓̔͠ṉ̵̖͓̅͋ă̸̲̦̼͒̈ḻ̵͉̽͑͜l̷̳̠̈́ỳ̶̢̻ ̸̰͚̞͠c̴͈͓͆ǫ̶̣͘̚͝ḽ̸̾͌l̵͉̬̓ͅȃ̶̻̠̉p̶̨̠̰̉͝s̸͙̰̈́͌̇͜e̷̻͓̽̈́̉ͅș̴̺͆.̷͍͖̊͘ͅ
That won't scale! Or present cost vs. future value.
I kind of agree but as a consultant I usually see something like:
In a span of less than five years, we accumulated 100 text files and 1000 can_something functions, along with various other shortcuts.
All of these require refactoring simultaneously because they are prone to crashing due to hastily implemented solutions. However, despite these issues, the PO (product owner) continues to complain about crashes and demands new features, leading to the creation of new text files and functions, resulting in an endless cycle.
IMO, a good balance is the key. Always choosing for the quickest path because of YAGNI isn't always the good solution
YAGNI - https://en.wikipedia.org/wiki/You_aren%27t_gonna_need_it
And then 17 years later some poor schmuck won't be able to get the now multi-million dollar company to agree to change any of it. That developer's every day a grappling match between anxiety and empathy, as the day t̷h̸e̶ ̶c̸r̶e̴a̴k̴s̷ ̷t̵u̸r̵n̶ ḯ̴̙n̴̹͝t̸͙͋o̵̢̓ ̸̮̄i̵̳͝r̶͚̐r̶̯͋ḛ̵̾c̵̪̾o̴̮͝n̵̦̈́c̶̝͛i̷͌͜l̷̛̲ä̵̰́b̶͓̌l̴͔̈́e̸̘̽ ̷̯̍t̷̗͑ę̸͐a̶̯̅r̵͕̉s̵͇̕ ą̷̪̬͝n̸̝̒̿ͅd̶̻̋̈́ ̴̝̗̥̈́̆f̴͍̣̯͊̊̉i̸̝͓̔͠ṉ̵̖͓̅͋ă̸̲̦̼͒̈ḻ̵͉̽͑͜l̷̳̠̈́ỳ̶̢̻ ̸̰͚̞͠c̴͈͓͆ǫ̶̣͘̚͝ḽ̸̾͌l̵͉̬̓ͅȃ̶̻̠̉p̶̨̠̰̉͝s̸͙̰̈́͌̇͜e̷̻͓̽̈́̉ͅș̴̺͆.̷͍͖̊͘ͅ
Or they quit out of frustration.