---
# System prepended metadata

title: COVID-19 SciCloj Online Hackathon I
tags: [temporal]

---

---
tags: temporal
---

# COVID-19 SciCloj Online Hackathon I

_This document is temporal: it is not meant to be updated after 2020-03-21_

This document is public and editable. Please add your own ideas, and consider which projects you're most interested in :)



## Projects

Projects highlighted by the organizing team before we split into groups to work.

### Explore article: COVID-19 data in the REPL

On March 6th, Dave Liepmann published [COVID-19 data in the REPL][1] on the Applied Science Studio blog. The article explores COVID-19 spread using the Johns Hopkins data, applies it to Germany, and discusses how to think about visualizing the data.  A [very brief intro to the project](https://youtu.be/-Yk4KoSwPms?t=3230)

Beginner path: load up the data in the REPL and reproduce the graphs in the article.

Beginner path: "at this location, what was the time where there was a change in the trend?"

Advanced path: Adapt the COVID19 data in the REPL blog post to new local datasets.

Link to Zulip stream: https://clojurians.zulipchat.com/#narrow/stream/227504-covid-19/topic/project-covid-19-data-in-the-repl

Participants:

- John (Practicalli) add UK GeoMap and specific views of UK
- David Schmudde. Add Italy and use it to describe local trends.
- Noor and Ashima. Explore the repo and visualize India's data. 
  
### Explore article: Baby steps with Covid-19 data for (Clojure) programmers

https://dragan.rocks/articles/20/Corona-1-Baby-steps-with-Covid-19-for-programmers

Beginner path: see that it works at your machine, and try to ask&answer new questions.

[Example project](https://github.com/practicalli/data-science-corvid-19) that you can open `src/practicalli/design_journal.clj` in your editor, start a REPL and evaluate expressions starting at the top.

[Video walk-through of the article](https://youtu.be/-Yk4KoSwPms).

### SEIR model Epidemic simulations

[Chat Channel](https://clojurians.zulipchat.com/#narrow/stream/227504-covid-19/topic/project-seir-infection-model)

Demonstrate epidemic model SEIR (Susceptible → Exposed → Infected → Removed) in Clojure for Covid-19 to similate community spread. If time permits, create a risk exposure calculator.

* [Clojure seirlib](https://github.com/anthonyghr/seirlib) Looks promising
* [Clojure SEIR infectious disease modeling](https://github.com/kaz-yos/epi501-clojure) - Probably not what we need
* Example [Epidemic calculator](https://gabgoh.github.io/COVID/index.html) and [epcalc source](https://github.com/gabgoh/epcalc/blob/master/src/App.svelte#L95) - In svelte language

### Look for existing notebooks

(Daniel)

### Discuss how we best can contribute as a community

How can we better help? What is the broader picture? Where do Clojurians fit in, what is their unique skill that they can contribute?

Possibly applicable for a bigger team. Discuss, and summarize the disucssion. Could turn into a blog post.

Possible topic: data quality. We test too few, and tread confirmed infected as infected. This leads to lagging indicators of infected.

Possible topic: Concern about how we present our findings

Format: video chat might provide higher bandwidth than Zulip

Participants:

- Teodor

Discussion with one person doesn't make a ton of sense. So please ping me if you'd like to chat!

## Project Ideas

Community contribution: where can we help?

- Adapt the [COVID19 data in the REPL][1] blog post to new local datasets
    - Related technology: Oz/Vega-lite, geoJSON
    - [repository](https://github.com/appliedsciencestudio/covid19-clj-viz)
- Build a Clojure interface to the [Outbreaks data set][2]
    - Related technology: R
- Even better: build a plug-and-play tool to automatically convert Rdata to a neutral data format (e.g. JSON or EDN)
    - this would be **incredibly** useful
    - perhaps with babashka? 
    - or as a single-public-function library?
    - same but for Pickle data from Python-land
- Chart or map [Germany data][5] (by date & region)
- Apply linear & exponential models to case reporting data
    - NB: this would be purely for our own fun/education, because it's not rigorous enough for actual science and especially not for public release
- Provide Clojure-accessible data translation of [Mexico data][6]
- Play with interactive visualization as a way of understanding COVID-19 spread. An article like this has already been published in Washington Post. For inspiration about interactive visualization, see Bret Victor
    - Reference: [Why outbreaks like coronavirus spread exponentially][3] (Washington post)
    - Reference: [Learnable programming][4] (Bret Victor)
- Paint some data art from [coronavirus genome data][7]
    - Possible technologies: Quil &more
- Find and visualize data source for pollution changes since date of lockdowns
    - e.g. [NYC](https://www.dec.ny.gov/cfmx/extapps/aqi/aqi_forecast.cfm)
- Challenging: trawl news sources to try to determine the degree of under-reporting & under-testing in various regions (especially Iran & USA)
- Manual but incredibly useful effort: collect data pitfalls, e.g.:
    - [Germany not testing the dead][8], causing their death rate to be artificially low
    - [criticisms of WHO data](https://ourworldindata.org/coronavirus#why-we-stopped-relying-on-data-from-the-world-health-organization)
- Cross-country/region under-reporting calculator: extrapolate from deaths to what the infection rate must be, compared to reported cases
    - Cross-country data analysis can provide insight into the effectiveness of policy decisions.
    - Policy dimensions can be soft and difficult to measure: transparency of reporting, sense of urgency from leadership, etc&hellip;.
    - Policy dimensions can be quantifiable: number of people tested, date of first quarantine order, pandemic response budget, rate of spread after two weeks, etc&hellip;.
- My goal is to encourage people to stay confined by doing data-driven predictions. Questions that I would like to be answered:
    - Given a country, how likely do I have COVID-19 without knowing it?
    - What could be the consequence on other people if I don't stay confined at all?
    - If I decide to visit my parents, what is the likelyhood of them getting COVID? likely of them dying?
    - If I remove luck out of the equation, how would their life expectency be reduced?
- Create repository under Scicloj for people to share explorations?
- Not data science, but important for people under lockdown/quarantine: apps to keep in touch, check on each other, maintain solidarity and good habits (home cooking, home workouts)
- Not data science, and not sure this is a good idea, but: social distancing tracker. Would ping you to write down the people you come into contact with while in lockdown. It would have to ping the user every few hours (2x/day minimum) which might be annoying enough to kibosh the whole plan. But tracking our often-imperfect social distancing *might* be helpful. E.g. "roommate (every day), supermarket cashier (Tuesday), took an uncrowded metro (Friday)".
- If you can invest just an hour or two: I have ~2.6K lines of clojure code. Help me please with cleanup, refactoring, better names, TODOs etc. See [Bost/corona_cases](https://github.com/Bost/corona_cases). 🙏 Thanks in advance. 

[1]: http://www.appliedscience.studio/articles/covid19.html
[2]: https://github.com/reconhub/outbreaks
[3]: https://www.washingtonpost.com/graphics/2020/world/corona-simulator/
[4]: http://worrydream.com/LearnableProgramming/
[5]: https://www.citypopulation.de/en/germany/covid/
[6]: https://github.com/guzmart/covid19_mex/
[7]: https://www.ncbi.nlm.nih.gov/genbank/sars-cov-2-seqs/
[8]: https://www.reddit.com/r/Coronavirus/comments/fi1k9s/germany_currently_not_doing_postmortem_tests_for/
