现在工作很艰难。COVID-19 使人难以保持专注和积极性。但对我来说,研究开源社区如何应对全球疫情是一种宣泄。
自 1 月底以来,社区已经贡献了成千上万个提到冠状病毒或 COVID-19 的开源代码仓库。这些代码仓库包含数据集、模型、可视化、Web 和移动应用程序等等,并且大多数是用 JavaScript 和 Python 编写的。
之前,我们分享了一些开源硬件制造商提供帮助以阻止冠状病毒传播和减轻痛苦的信息。在这里,我们分享四个(众多)开源软件社区如何应对冠状病毒和 COVID-19 的例子,目的是赞扬创造者和开源社区现在对世界产生的总体影响。
1. PennSignals 的 CHIME

用于流行病的 COVID-19 医院影响模型 (COVID-19 Hospital Impact Model for Epidemics, CHIME) 是由宾夕法尼亚大学 Penn Medicine 的数据科学家构建的开源应用程序。该在线工具使医院能够更好地了解该病毒将对医院需求产生的影响。
医院领导可以使用 CHIME 来“更充分地了解未来几天和几周内需要住院、ICU 病床和机械通气的患者人数的估算值。”用户可以输入当前住院的患者人数,并根据其他变量查看未来几天需求可能如何增加。
CHIME 主要使用 Python 构建,并使用 pandas 开源依赖项进行大量底层数据转换数字运算以生成估算值。Pandas 拥有一支相对强大的团队,并且是最常用的 Python 数据分析库之一,并且像所有开源项目一样,高度依赖于用户的收入支持。
2. Locale.ai 的实时 COVID-19 可视化

跟踪病例数的地图可以帮助我们可视化 COVID-19 的相对规模和传播。Locale.ai 创建了一个开源的交互式可视化,其中包含所有已知的 COVID-19 病例。该地图提供实时更新以及新数据。
我发现这个项目特别有趣,因为数据是通过 GitHub 用户 ExpDev07 创建的一个开源 API 检索的,该 API 查询了 John Hopkins University 的一个开源数据集。John Hopkins 数据集(十多个其他来源的聚合)目前是 GitHub 上最受欢迎的与 COVID19 相关的项目。这是开源的最好的分支特性!
Locale.ai 使用 Vue.js 构建了可视化网站,Vue.js 是一个流行的框架,允许 Web 开发人员创建现代 Web 应用程序。Vue.js 由 Evan You 创建并继续维护,他是少数几个以全职身份担任开源维护者的人之一。
3. BlankerL 的 DXY-COVID-19-Crawler

DXY-COVID-19-Crawler 创建于 1 月,是开源社区对 COVID-19 的最早响应之一。当病毒主要在中国传播时,中国医疗界使用一个名为DXY.cn 的网站来报告和跟踪病例。为了使其他人更容易获得和使用这些信息,GitHub 用户 BlankerL 编写了一个 Web 爬虫,以系统地从 DXY.cn 站点收集数据,并通过 API 和数据仓库提供这些数据。学术研究人员和其他人一直在使用这些数据来检查趋势并可视化病毒的传播。到目前为止,DXY-COVID-19-Crawler 已被点赞 1,300 多次,并被 Fork 近 300 次。
BlankerL 使用 Python 和一个名为 Beautiful Soup 的包编写了 Web 爬虫。Beautiful Soup 是一个应用程序,它允许 Python 开发人员轻松地从网站上抓取信息。Beautiful Soup 由 Leonard Richardson 维护,Leonard Richardson 也全职担任软件架构师。
4. 东京都 COVID-19 工作组网站

世界各地的许多城市都更新了他们的网站,其中包含有关 COVID-19 的居民信息。东京都政府创建了一个综合网站,其“旨在使东京居民、在东京设有办事处的公司以及东京游客能够掌握当前情况并采取相应的措施和预防措施。”
与许多其他城市不同,东京决定开源其网站。该项目拥有 180 多个不同用户的贡献,并且 至少日本的其他三个城市(长野、千叶和福冈市)重新混合了该站点。该项目是一个城市可以通过公开建设更好地为公民服务的例子。
令人难以置信的是,有大量的开源技术为东京的开源网站提供支持。使用 Tidelift 应用程序,我确定了该项目中使用的 1,365 个依赖项。所有这些复杂性发生的原因是 38 个直接依赖项(即,开发人员明确决定使用的依赖项)具有其自身的依赖项。也就是说,一千多个不同开源依赖项(包括 Nuxt.js、Prettier、Babel、Ajv 等)的维护者在某种程度上负责帮助东京与其公民共享信息。

其他项目
在公开场合响应 COVID-19 的还有 许多其他重要项目。我深受开源社区如何应对这次疫情并利用其他开源技术快速工作所鼓舞。未来的几周将很困难,但我知道我们可以继续在开源社区中找到动力。
如果您正在开发与 COVID-19 相关的开源项目,请在评论中分享,以便我们可以帮助传播它。
3 条评论