Indeed. Unmanageable code bases come from conversations like this between management and developers:
“Look, we need you to implement this feature within the next 24 hours.”
“Based on my scrum analysis, I need about a week to implement it.”
“Sorry, if it’s not done within the next 24 hours, you will be out of a job.”
“OK....”
At which point, we get a hideous rush job. I have seen this happen time and time again. There is no language in the world which isn’t going to be able to force clean, manageable code under these kinds of circumstances, which alas can and do happen too often in the caffeine and work obsessed tech culture.
I recently started working at a place which is like this, and the code really shows it. It really does not matter what language is used, it's not going to very maintainable if written so quickly.
Have you coded with Haskell or Elm? Im confident that re-factoring that mess that surely comes out of the 24h sprint will be re-factorable without too much pain in these languages.
Just a feeling, but coding with them feels like they are refactor-optimized langs.
“Look, we need you to implement this feature within the next 24 hours.”
“Based on my scrum analysis, I need about a week to implement it.”
“Sorry, if it’s not done within the next 24 hours, you will be out of a job.”
“OK....”
At which point, we get a hideous rush job. I have seen this happen time and time again. There is no language in the world which isn’t going to be able to force clean, manageable code under these kinds of circumstances, which alas can and do happen too often in the caffeine and work obsessed tech culture.