DEV Community

Discussion on: The Importance of Clean Code in Your Startup's Success

Collapse
 
fyodorio profile image
Fyodor

I’d say that startups and clean code are not compatible at all.

  1. Small teams => no need to share the code with many people and make it readable
  2. Rapid development tempo => emphasis on code quantity rather than quality
  3. Customer and investors don’t give a wink about the code quality, they just need the end product (now!) => startup founders overcommit especially on the early stages and developers need to cover the commitments and meet expectations (accumulating the technical debt)

Code quality (if it exists) is a Baby Yoda of a startup team — poor hidden child with superpowers which nobody wants to give opportunity to expose itself but everyone admires its cuteness… Only true software mandalorians are able to save it and even grow it behind the scenes. But gradually and too freaking slowly, losing motivation on the way from time to time.

Collapse
 
chainguns profile image
Daniel

While I do agree, from personal experience as a data enginner at BLST clean code helps me reach my deadlines better as Ispend less time trying to understand my older code. Of course, there must be a balance between qunatity and quality, but quality should not be ignored completely :D

Collapse
 
sirseanofloxley profile image
Sean Allin Newell

The only way to go fast is to go right.

Collapse
 
gabinaureche profile image
Gabin ✨✨

I don't think writing clean code necessarily means moving slower. The idea is just that the code you actually write has to be easy to extend and maintain. It doesn't mean you have to go all-in and setup all the processes a billion dollar company requires. It's fine to take shortcuts but you just have to do it carefully as opposed to carelessly.

Obviously it depends on whether or not it matters that your software's users may lose their data or have a buggy experience. If you're building a proof of concept, all that doesn't matter much and you'd probably write code that goes from A to C knowing that B is broken.