Almost all ML notebooks out there have a section where they select the best features to use in the model. Why is this step always there ? How bad can it be to keep a variable that is not correlated with the response variable ? If you are really unlucky then yes a feature that is positively correlated with your response in your training set could in fact be negatively correlated with it in the real world. But then, it's not even sure that one will be able to catch it with a feature selection routine.
My assumption is that it used to be a necessary step when computing resources were scarce, but with today's resources it is basically irrelevant.
What is your view ? Can you give a real world example where it would harm the model to keep all training features ?