Typos

Guillaume's company frequently uses consultants. It's a pretty standard setup: Guillaume's employer has many multi-year projects in flight, all of which are layered atop an existing ecosystem of in-house "do everything" applications, each full of their own WTFs.

Because of the complexity, Guillaume's team has a pretty strict code review policy. Someone new to the team will write a merge request, a senior developer will coldly review it and provide huge amounts of comments. By the end of the process, the senior team member may have provided most of the code and architecture via those code review comments, and the junior member is left to just follow the instructions.

When Guillaume was tasked to review a senior contractor's submission though, that felt like a change of pace. Guillaume still left a lot of comments, but it was more obviously a good merge request. Still, "good" is not "ready for production", and Guillaume ended up in a conflict with management: they wanted the merge now, he wanted the merge right: in compliance with their standards, containing no obvious gotchas, and with clear comments and documentation.

"This is a senior consultant," Guillaume's boss said, "and they know the product. You need to have a little trust in your senior developers' skills."

Guillaume tried to explain that it wasn't about trust; everyone needed their code reviewed because more eyes was better. That didn't budge management, so Guillaume found a compromise: the merge could happen, if there was a follow up to fix the "less urgent comments". That made the users happy, that made Guillaume- well, if not happy, not irritated, and it definitely made the boss happy.

One of those "less urgent" comments was on this line:

// Step 1: retrieve the content from the container and filter bt Product Type

Obviously, the intent was "filter by product type", so Guillaume commented: "bt typo". This was the lowest of the low priority, but these small kinds of catches added up over time and kept the code base comprehensible. It was also not the clearest code review comment, but everyone on this project was a native English speaker.

So the consultant "fixed" the code review comment:

// Step 1: retrieve the content from the container and filter typo Product Type
[Advertisement] Keep the plebs out of prod. Restrict NuGet feed privileges with ProGet. Learn more.

This post originally appeared on The Daily WTF.

Leave a Reply

Your email address will not be published.