Code Review Should Be Easier

Note: This is an ongoing project. Check back to see our progress!

Because code reviews are so common in developers' work flows, helping to improve their experience doing so could greatly improve their efficiency and happiness. From our experiences in back-end and front-end development, respectively, G and I learned that the code review experience is especially poor for those of us not using proprietary software (like ones used by Google and Microsoft employees). Our workflows are fragmented, and reviewing someone else's code can seem like a huge, unpleasant activity.

    Our goal is to collaboratively design a tool that would support developers in their code review endeavours. We aim to follow a developer-focused process to learn about their needs and create a tool that would simplify and streamline the process. I take ownership over the research and design of the product, while G takes ownership over the development of the tool. Personally, we aim to grow in each others' areas of expertise, and learn to create and maintain an open-source project.

Digging Deep With Research

survey for developers

As a first step into our design process, we were curious about others' experiences with code reviews: what worked well or caused friction. So, we created a survey and sent them out to software engineers who worked on teams of various sizes, in various environments. Nineteen people participated in the survey and gave us a wealth of detailed feedback about their personal processes and struggles.

distilling themes from survey results

We used the grounded method to distill quotes gathered from surveys into similar ideas that spoke to the same theme. This process was tedious and lengthy but ensured that we fully captured the needs of those we surveyed. Patterns arose naturally from those who participated; they were describing the same failures with their tools that prevent them from being more efficient, and requested similar features to better support their work.

major themes from the survey results

In the image above, the boxes on the left contain the six most common needs which surfaced during our grounded research. We further condensed them to three in order to simplify their needs and start developing user stories.

major themes from the survey results

Above are the user needs transformed into user stories. Since we are always coming up with more eloquent ways to write the user stories, the words may change as we develop our project further. We aim to use precise language when defining the user stories to have a clear 'who' and 'what'. Additionally, we include a success metric to keep us focused on the users' ideal outcome.

Next Steps

We will spend some time to refine our user stories and create journey maps.

Check back to see updates to this project!