The Blue Witness: Can we map Police Misconduct?

How web development and data science students from Lambda Schools helped create a “Blue Witness”

Solomon Codes
5 min readMay 27, 2021
The Blue Witness Project landing page (Author screenshot — site in development)

Before graduating from Lambda Schools’ program, I had the privilege of contributing to a real-world open-source project. For the past four weeks, I worked with and led fellow data scientists, developers, UI specialists to make this product even better.

Part 1: Meet the cohort

A partnership between the Human Rights First Innovation Lab & Lambda Schools

The Human Rights First homepage (Screenshot by Author)

Before writing a single line code, my fellow lambda team members and I sat down with our stakeholders for this project — the Human Rights First (HRF) organization. Over several zoom meetings, we learned as much as we could about each other and began planning our month-long contribution to the Blue Witness project. Our HRF stakeholder, Welton, described the organization as one that, “sought to hold the US Government accountable for its morals”. The Blue Witness project, in particular, focused on incidents of Police Misconduct. Using this website, we would be visualizing the true scale of police controversy — for everyone to see.

Next, I spent some time getting to know my team members. Among the web development students were data science students from Lambda Schools’ data science program. At first, I felt nervous about working on such an important product. However, as we openly discussed our concerns, it became clear that this would be a healthy space for growth. I found myself eager to get my fingers moving across my keyboard. As we finalized the first week of planning, I asked to become the design lead. And so began the ninth month in this partnership between Human Rights First’s Innovation Lab and Lambda Schools.

Part 2: The ants go marching 1 by 1

Using the Ant Design framework, Otka Authentication, and more

Back when we were strategizing how to approach an ongoing project, we identified many technical hurdles and bugs to address. Rather than tackling all of the hurdles at once, we broke down features on a Trello “road map”. As design lead, I spent most of my time focused on improving the UI and site accessibility. Meanwhile, our data science and backend engineers improved upon the data aggregation and server functionality, respectfully.

The Landing page early on (Author screenshot — note the crowded UI of the upper-right component).

Upon viewing the site, our team identified more bugs — in addition to those we “inherited” from the previous project cohort. One that stuck out to me was the prospect of overriding site styles. While the ant design framework is an incredibly useful tool for creating beautiful UI, it isn’t without its flaws. Overriding the ant design component styles requires a meticulous inspection of the project using the developer tools. Additionally, the biggest drawback of an ongoing project would be that certain libraries become outdated. Unfortunately for our cohort, previous cohorts were unaware of the node-sass library and had been using sass. Consequently, there were many CSS, LESS, and SASS files in the code base.

Our somewhat cluttered style ecosystem (Author screenshot)

To overcome this challenge, I looked into cleaning up the CSS files. Unfortunately, too many members of my team we occupied with other priorities. Improving the UI was a far more critical task and the CSS files could always be consolidated by the following cohort. So, I set about guiding and working with my fellow front-end engineers to improve the UI and site semantics. We worked one day at a time, ant component by ant component, feature by feature, to improve the UI.

Improved site meta tags (Author Screenshot)

Part 3: Feature-Freeze

Adding final touches and reflecting on my future in tech

*Author’s note: “Feature-Freeze” refers to the stage of a project where no new features are to be added and the focus shifts to the deployment of the product.*

After four weeks of planning, writing code, and moving Trello cards around, our team had taken the Blue Witness project to another level. With improved visual hierarchy, color contrast, and site HTML semantics (among many other features), we felt confident to hand our product off to the next cohort of lambda students.

Improved Landing page map (Author screenshot)
The improved landing page (Author Screenshot)

Though we accomplished a lot, there are still plenty of features our team envisions for this product. I, in particular, spoke with our stakeholder, Welton, about what SEO would look like. Welton told me that something “exciting” was coming down the pipeline, and I find myself very excited for future Lambda students. Imagine learning about SEO in a coding Bootcamp. Not your typical experience, for sure.

Of course, I do expect future cohorts to have a bit of difficulty consolidating the CSS. In my opinion, they’ll need to really work as a team to make sure a big task manageable — and still have time for other exciting features.

Our Trello board after feature-freeze (Author Screenshot)

I also learned more about myself and how easy it is for each of us to affect the morale of those around us. When any of us developers choose to lead, we need to make sure we’re inspiring others around us by taking the initiative ourselves. This was the main feedback I gained from this experience.

Looking back on this experience, I feel more confident than ever about my ability to succeed and grow in the tech industry.

--

--