You are conflating good software with good workflow. You can have great software with terrible a code base. You can have a great code base and developers and have terrible software.
Two totally different topics really, but narrowing down what question you are trying to ask seems more important here.
With that said, I think a good code base is necessary if you don’t have good software yet. You need to be able to try things in a relatively painless way so you can iterate.
Software can also be good and bad at the same time. AWS is great for scaling, but terrible developer experience. Things can be both things at once, or even three things (their codebase could be immaculate, or not).
Seems like a trite conversation when we try to generalize it. Everything is so case-dependent with this stuff.
Comments
You are conflating good software with good workflow. You can have great software with terrible a code base. You can have a great code base and developers and have terrible software.
Two totally different topics really, but narrowing down what question you are trying to ask seems more important here.
With that said, I think a good code base is necessary if you don’t have good software yet. You need to be able to try things in a relatively painless way so you can iterate.
Software can also be good and bad at the same time. AWS is great for scaling, but terrible developer experience. Things can be both things at once, or even three things (their codebase could be immaculate, or not).
Seems like a trite conversation when we try to generalize it. Everything is so case-dependent with this stuff.