Unconscious bias is a complicated issue, and unfortunately a very familiar one when it comes to minority groups. The software industry in particular is finding it a challenging problem to solve; for the obvious reason it's unconscious.
My goal was to develop a tool that helps software engineers cultivate awareness to their own personal bias; specifically how their communication differs between various team members.
What it does
ViewPoint is a machine learning powered communication analytics tool, built for engineers.
It seamlessly integrates with Github's code review process, where it uses machine learning to enriches the existing communication data with information such as comment type (question, change, discussion, or praise), and sentiment (spectrum of 1 - very negative, to 5 - very positive).
This enriched data is then pulled into the ViewPoint web application which consists of 3 primary views:
Analytics - Various data visualization focus on analyzing how an individuals communication differs between various team members. (i.e. comparisons of sentiment analysis)
Comment Review - Developers can review, and search through previous comments. They are also able to write notes on comments, and save this information to a notebook.
Notebook - Space where valuable comments are saved.
How I built it
The GitHub integration is accomplished via. a web extension. It is build using a tool called webext-redux which allows react, redux functionality to be injected into an existing UI.
The backend is build using Node (express server), GitHub oAuth2 (via. passport), redis for maintaining storing, and SQL and Knex.js for database.
The frontend is build using react, redux, and material-ui.
Challenges I ran into
For this hackathon I wanted to challenge myself to see what I could accomplished independently. Because of the size and complexity of the project, and the time limitation was the biggest challenge. I had to focus on ensure I was balancing all the technical components with the non-technical pieces (planning, presentation, filling this out.., etc).
Accomplishments that I'm proud of
I'm really proud of how much I was able to accomplish. Technically, it was a very challenging project, so seeing all the pieces functioning, and integrated was very exciting!
What I learned
The area I learned the most in was the data visualization and machine learning side of the project (i.e. generating a node graph)
What's next for ViewPoint
First and foremost developing custom models to handle GitHub comments. I would also be very interested in analyzing personality types in an effort to generate custom communication suggestions/insight.