What Ugly Pull Requests Look Like

Ugly Pull Requests don’t tell the What and the Why

Empty description, not even a word. To be fair, if the PR title explains everything already, that’s fine. Otherwise, think about what kind of information you want to send to your peers, your future self, new team members, and the poor guy who will work on this project 2 years from now. Do them a favour, please. 🙇 🙇‍♀

Ugly Pull Requests do more than one thing

Anti Single Responsibility. Ugly PRs try to solve multiple issues in one go but fail to meet the criteria.

Do this ⛳️⛳️⛳️️⛳️️⛳️️

Don’t do this 🕳

Ugly Pull Requests are complex

Code reflects the complexity of the requirements, and that’s not uncommon. However, ugly pull requests reflect the complexity of the predicted (imagined) requirements. Surely we need upfront design, but

Upfront Design != Over Engineering

Ugly Pull Requests have no screenshot when it’s needed

The diff shows me lots of CSS changes, but no screenshots are provided in the description. Unfortunately, I am not smart enough to process the DOM/Styling in my brain to visualise the changes.

A picture is worth a thousand words

Ugly Pull Requests have errors when sent for review

Maybe the PR isn’t ready for someone else to review? Maybe you should raise it as a Draft PR first, and ensure it passes all of the checks? Maybe you should respect people’s time?

Ugly Pull Requests take a longer time to merge

The longer it takes, the higher the risk of failure. Again, keep it small.

Ugly Pull Requests have endless conversations

It’s probably a sign of prematurity.



Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store