

I would go for “garbage, bad and ok” where bad is acceptable. Most styles are ok, a lot of anti-patterns are bad but still get the job done but sometimes people write pure garbage. I’m very happy that at my job we just have a lot of bad code that’s workable but this one contractor wrote an absolute piece of shit. His code was a convoluted side-effect mess that was “reactive” and at around 3-5x more verbose than the “naive” solution. He made so many decisions that increased complexity and overhead that it become a rigid buggy mess.
Sometimes people just need to stick to the basics by using a database layer and a service layer on the backend and a API layer and component code on the front.







Prisoner’s rights are human rights.