Remix.run Logo
nilirl 3 hours ago

Can you have a coding philosophy that ignores the time or cost taken to design and write code? Or a coding philosophy that doesn't factor in uncertainty and change?

If you're risking money and time, can you really justify this?

- 'writing code that works in all situations'

- 'commitment to zero technical debt'

- 'design for performance early'

As a whole, this is not just idealist, it's privileged.

benrutter 3 hours ago | parent | next [-]

I would argue that these:

- 'commitment to zero technical debt'

- 'design for performance early'

Will save you time and cost in designing, even in the relatively near term of a few months when you have to add new features etc.

There's obviously extremes of "get something out the door fast and broken then maybe neaten it up later" vs "refactor the entire codebase any time you think soemthing could be better", but I've seen more projects hit a wall due to leaning to far to the first than the second.

Either way, I definitely wouldn't call it "privileged" as if it isn't a practical engineering choice. That seems to judt frame things in a way where you're already assuming early design and commitment to refactoring is a bad idea.

brabel 2 hours ago | parent | prev [-]

You forgot “get it right first time” which goes against the basic startup mode of being early to the market or die. For some companies, trying to get it right the first time may make sense but that can easily lead to never shipping anything.