Culture / Development

This Week in Programming: Can Code Help with Racial Justice?

24 Oct 2020 6:00am, by

Every year, IBM leads a program it calls Call for Code, which acts as a contest of sorts for code-based solutions to societal issues. Most recently, that issue has been the environment, and the winners of the contest take home some cash to operate and receive infrastructure support from IBM itself. This past week, IBM decided to set its sights on something different, instead announcing the Call for Code for Racial Justice, which it says will focus on three specific areas: police and judicial reform and accountability, diverse representation, and policy and legislation reform. For a bit more info, check out their introductory video:

One question that immediately comes to mind is whether or not technology is something that can help, or will work to inadvertently make things worse, but in the video, Evaristus Mainsah, a general manager with IBM Cloud, says one thing that stands out: “We recognize technology alone cannot fix hundreds of years of racial injustice and inequality, but when you put it in the hands of the Black community and their allies, technology can begin to bridge the gap.”

Thus far, we’ve seen far too many examples of technology simply embedding the biases and prejudices of its creators, but perhaps by focusing on putting the act of creation into the hands of the Black community and its allies, this can be overcome. At least, that seems to be the hope here. As part of the Call for Code, IBM has released five open source solutions that it says it is asking developers and ecosystem partners to help test, extend, and implement, as well as contribute “their own diverse perspectives and expertise to make them even stronger.” In fact, some of the included solutions take aim directly at this sort of bias, using technology. The projects, all of which can be found in a central GitHub repository, are:

  • Five Fifths Voter, a web application to empower Black people and other minorities to ensure their voices are heard by exercising their right to vote.
  • Legit-info, an app to help residents understand the impact of legislation and policies based on their country, state, county, city,  and district location in their own language.
  • Incident Accuracy Reporting System, a platform for police incident reporting that allows witnesses and victims to corroborate evidence from multiple sources and assess against an official police report, in an effort to create a more reliable record of all accounts of the incident.
  • Open Sentencing, an app to help public defenders better serve their clients by identifying racial bias in data such as demographics that can help make a stronger case.
  • Truth Loop, an app to help communities understand the policies, regulations and legislation that will impact them the most.

Right now, there is surprisingly little in the way of online discussion of the initiative, but we’ll stay tuned to see what results it may bring in making an impact.

This Week in Programming

  • Git 2.29 Focuses on Security: The latest version of Git is out and GitHub offers some highlights from the release, including experimental SHA-256 support. Long story short, there’s an infinitesimally small chance that when many commits are being written at the same time they could collide with each other and cause a problem. As they write, “we estimated that even if you had five million programmers writing one commit every second, you would only have a 50% chance of accidentally generating a collision before the Sun engulfs the Earth” – so, yes, very small. Nonetheless, a small chance is still less secure than a non-existent one, and some published attacks exist that increase the chance, so “the Git project has been preparing a transition plan to begin using a new object format with no known attacks: SHA-256.” Beyond security, Git 2.29 introduces negative refspecs and new git shortlog tricks, which you can read about more in GitHub’s post or in the release notes for 2.29.
  • Node.js 15 Adds npm 7 Support and More: Node.js 15 has arrived, and the team notes that this will push Node.js 14 into long-term support, something that won’t happen for 15 as an odd-numbered release. As such, they recommend that you “bear this in mind when using Node.js 15 in production deployments .” As for features, Node.js 15 includes an experimental implementation of AbortController, N-API Version 7 (which brings additional methods for working with ArrayBuffers), the new V8 8.6 JavaScript engine, and support for npm 7, which introduced workspaces and a new package-lock.json format. Oh, and while we’re here talking about Node, perhaps you’ve heard of Deno, the Node alternative created by the same folks that made Node? Well, Twilio has a helpful introduction, if you want to learn more.

  • Get off the Proprietary Oracle Java: For those of you out there using Java and looking for a way to wean yourself off Oracle’s proprietary Java SE, Azul has released an answer – a series of migration services to help teams transition from to Zulu builds of OpenJDK. The services include inventory and usage auditing software, and application-level testing and verification, to help organizations move their entire Java estate despite what they say is “misinformation being promulgated about the challenges associated with a transition.” For more complex transitions, Azul says it is also offering advisory support and project management, alongside its partners.
  • Should We Stay or Should We Go? It’s that time of year again, when the Go language team gets introspective and wants to know what you think of the language. If you’re hemming and hawing over whether to take the time this year’s Go developer survey, they say, has been streamlined to make it quicker and more accessible. Not only that, but it’s your chance to steer the language, as over the last four years they say that developer feedback has “played an enormous role in driving changes to our language, ecosystem, and community, including the gopls language server, the latest generics draft, the module mirror, and so much more.” For the curious, you can see the results of all the previous surveys. You have until November 8th to participate.

  • Eclipse Looks At IoT Developers: On the topic of surveys, ADTMag takes a peak at the results of the Eclipse Foundation’s 2020 IoT developer survey, its sixth annual, which for the first time included edge computing as a topic and will “influence the Eclipse Edge Native Working Group roadmap,” according to the Foundation. Some key findings, according to ADTMag, include the dominance of Java as the most widely used language at the edge and in the cloud, AI the most frequent workload type at the edge, and distributed ledgers having gained momentum as a way to secure IoT solutions. For more, download the full results.
  • npm Intros A Public Roadmap: The npm JavaScript package registry has introduced a public roadmap repo and a new public feedback process in the hopes that transparency will do npm what it recently did for the npm CLI, which was launched last week with npm v7.0.0. The roadmap will show features in the pipeline, their current status, and expected arrival dates for “every part of npm including the CLI, documentation, the registry, and the website.” The feedback repo, meanwhile, will allow you to open a discussion to share suggestions, which they say the npm team will do their best to respond to within seven days.

A newsletter digest of the week’s most important stories & analyses.