Can you explain the point 3. I thought using design pattern is a good code practice.
He's basically saying "fit the solution to the problem, and don't over-engineer". Not everything needs a design pattern, so sometimes just keep it simple, avoid abstraction layers if possible, and don't optimise prematurely.
Design patterns are names for common solutions to common problems and therefore often just a label to shorten a discussion. Do not apply a pattern for the pattern's sake, but apply the right pattern to fit a given problem.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.