Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> That's not a bold thing to say. There are plenty of areas that are really hard to study through experiments, but we can still learn things through experience. The whole field of psychology is just on the edge of being amenable to experiment, but it's not like we know nothing about human psychology. Management is another field where it's more or less impossible to do scientific experiments to determine what makes the best manager, but again that doesn't mean we know nothing about management.

And yet in both these cases we at least _try_ to come up with quantifiable results of our observations. The point is that without them we are not really capable of coming up with any meaningful conclusions.

> Very occasionally there are great scientific studies of software

For me it seems the body of software available to analyse empirically is large enough now to start doing it and it is happening. What's important is that none of the empirical studies I know measure anything named "technical debt".

>> Talking about "technical debt" of software system is no more useful than talking about its scent.

> Why do you think talking about its scent is not useful?

Because it does not provide any meaningful insight into what should or should not be done to improve it.



> And yet in both these cases we at least _try_ to come up with quantifiable results of our observations.

We do in software development too. I said that twice already. It's just almost impossible to actually find out concrete rules that way.

> without them we are not really capable of coming up with any meaningful conclusions.

Nonsense. Scientific experiment is NOT the only way to learn about the world. It is the best way where practical, but it simply isn't always practical.

Think about something like UBI. Using scientific experiments to determine if UBI works you would have to take N countries, have half of them implement UBI for 100 years, and half not. Good luck.

> Because it does not provide any meaningful insight into what should or should not be done to improve it.

It does. Code smell is usually used to describe code that is suspicious or uses practices that are known to be highly unreliable (e.g. regex). The thing to do is to either rewrite it in a more robust way or if you can't do that for some reason, to add a lot of testing.


> Code smell is usually used to describe code that is suspicious or uses practices that are known to be highly unreliable (e.g. regex)

I think this sentence illustrates very well the root of our disagreement.

Saying "are well known to be highly unreliable" without any backing _facts_ is the sad state of affairs in IT industry.

I am keen to see a research done with scientific rigour that would show that regex is highly unreliable.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: