In my experience for any particular aspect of software development, if you ask for advice, you will find 100 people saying about 10 different things.
It sounds confusing and contradictory. And it's likely that 1 of those ten things is much better than the others.
However, the gap between what you are doing right now and the worst of those ten things is almost certainly much greater than the gap between the worst of the ten things and the best.
IOW, just go ahead and implement one of the potentially contradictory improvements that people on HN, for example, have suggested. You will already be way better off than before.
And once you start doing this often enough you will get to the point where you're able to identify the best 2 or 3 of the 10 options presented almost immediately. And the gap then between #3 and #1 is small enough to possibly not even matter.
> However, the gap between what you are doing right now and the worst of those ten things is almost certainly much greater than the gap between the worst of the ten things and the best.
I can't really get behind this sentiment, since in my experience the worst of those ten things is frequently not only ineffective (which would be bad enough since switching costs are very real), but actively harmful compared to whatever you're doing. Chances are you didn't arrive at your current processes entirely in a vacuum, and it's already a mishmash of ideas from the zeitgeist, filtered to not being the worst on all dimensions by the fact that you're still around to observe it.
You really need to be able to pick out the good ideas from the bad ideas, and that doesn't come readily to everyone.
Well, my assumption is that if you're seeking help (a) what you have isnt currently working, and that (b) you're seeking help at a place that usually provides decent info such as HN or Stack Overflow.
Or maybe I've become experienced enough to distinguish between the good and the bad ideas without realizing it and don't really remember the earlier days when I had mentors who would help me navigate those decisions.
A huge unsolved problem in software engineering is that we lack a good way to measure effectiveness, let alone figure out if any practice actually results in improved effectiveness.
It sounds confusing and contradictory. And it's likely that 1 of those ten things is much better than the others.
However, the gap between what you are doing right now and the worst of those ten things is almost certainly much greater than the gap between the worst of the ten things and the best.
IOW, just go ahead and implement one of the potentially contradictory improvements that people on HN, for example, have suggested. You will already be way better off than before.
And once you start doing this often enough you will get to the point where you're able to identify the best 2 or 3 of the 10 options presented almost immediately. And the gap then between #3 and #1 is small enough to possibly not even matter.