---
tags: living
---
<!-- commment -->
# Scicloj Projects
TODO Consider conflict of purpose / duplicated information with https://www.notion.so/scicloj/scicloj-projects-list-a10444219f6543c8a54aae3105f9d884.
IDEA Projects can either be considered widely ("collect all available information") or narrowly ("this information is the important one"). Which one are we reaching for here? I (Teodor 2020-01-18) understood the workplan effort as a "narrowing" or "clarification".
- _ongoing_ and _time-limited_ are being worked on by someone
- _proposed_ are being considered
## Workplan coordination
State: _accepted_
Temporality: _ongoing_
The idea is to put some little, contiuous effort in checking the heartbeat of our activities, our process, and reasoning about the evolving near-term goals.
- Rotation
- "Check the heartbeat of the activities"
- Ongoing objectives
- Ongoing projects
- Up-to-date
- Facilitating and being a point of contact
- Who is responsible for a project?
- Facilitate rotation, if any
## Inclusivity, Diversity, and Community Outreach
We seek to make SciCloj a welcoming, diverse and inclusive community.
**Welcoming:** Defining root cultural patterns of kindness, compassion and respect that pervade all we do, seems like a good root way to support diversity and inclusivity. How do we describe these values and practices and set a tone culturually? The Recurse Center's ["Social Rules"](https://www.recurse.com/social-rules) may provide an interesting template.
**Inclusivity:** We have striven to be inclusive from the beginning. What more can we do to support this? How can we bring people into the community and give them a sense that they have something to contribute on day-one of their contact with us?
**Diversity:** We are already a diverse group in some respects. We are diverse in that we are people from all over the world, and in our professional backgrounds and interests. Yet in another respect our group is typical of many technical communities: overwhelmingly male, and white. What can we do to invite and make comfortable people who traditionally may feel excluded from a community like this?
## Tutorials
State: _accepted_
Temporality: _ongoing_
Tutorials play an important role on our journey to make Clojure an accessible, friendly platform for data science. A key part of our efforts to work out a coherent data science grammar, this project is, as noted, currently experimental. As we more clearly define the Clojure syntactical grammar in a way that ties together the various libraries in the ecosystem, we think this project will beging to play an imporant pedagogical and communicative role, providing an entrypoint for new users. In this stage, this project may take another form, such as a 4clojuredata.com or [a tutorials page](https://oppgaver.kidsakoder.no/) (Norwegian).
**Respository:** [scicloj/tutorials](https://github.com/scicloj/tutorials)
**Open Questions/Ideas**:
* Workshop challenge: @DanielSlutsky has metioned that it might be a good idea to challenge ourselves to build workshop materials in some time frame. The challenge to do this might be a good prompt for thinking about how to teach things simply. [Daniel's comment]()
* Standardizing Literate Programming: So far in working on tutorials, we've lacked a clear notion about how/where/in what context we want to do Clojure data science literate programming.
* What tools is it important to encourage users to use?
* How do we deliver the tutorial? Is it literate clojure transpiled into html, or is it clojupyter notebook, or is it plain clojure files organized in some way in a project (e.g. something like https://github.com/scicloj/notespace)? This obviously relates to the objective `:scicloj/clj-data-science-environment`, see [here](https://hackmd.io/0U97432pQOu3f6gGLbxIhA?both#Scicloj-Objectives-1-2-years-ahead). (Also, see [this conversation](https://clojurians.zulipchat.com/#narrow/stream/187445-scicloj-tutorials/topic/literate.20programming.20formats))
* Pairing. The idea is to pair a tutorial author with a library author in a task of writing a certain tutorial using a certain library.
## Web Meetings & Online Content
Already the SciCloj, and in particular Daniel Slutsky, have helped to marshall a vibrant online community that includes regular online [Web Meetings](https://scicloj.github.io/pages/web_meetings/) on important topics, a related [YouTube channel](https://www.youtube.com/channel/UCaoZzhNzq-H7YiQczXKuXuw), a lively discussion on [Clojurians Zulip](https://clojurians.zulipchat.com/login/), and an active [Twitter account](https://twitter.com/scicloj).
This project involves the continued marshalling of this important and vibrant online community. Activities may include but are not limited to:
* Planning, organizing, and posting web meetings
* Supporting and promoting discussion on Zulip, welcoming newcomers, connecting people to important conversations.
* Tweeting about matters important to the community on the twitter account.
## SciCloj website
State: _accepted_
Temporality: _ongoing_
At https://scicloj.github.io/, we provide public-facing information.
Idea: Could the website do something like sci-py in lists key libraries that work together in the ecosystem. Provides some cohesion around the workflow.
## Clojure Data Science Environment
More established language environments for data science have clearly defined environment preferences. Python has Jupyter Notebooks; R has RStudio. What is the Clojure data science environment?
This project's goal is to help move our community and our tooling toward a consenus on what the right environment context for Clojure data science looks like, and then to help establish and marshall the process around building this context.
This project can be any important keystone project for SciCloj. It will draw on many parallel efforts in the community. It is closely associated with and in many ways dependent upon our efforts to establish a cohesive grammar for data concepts in the Clojure universe of data science tools.
It will also require sensitivity and exploration with respect to the an understanding of how people work to determine the right context. We have many options. There is already a mature Jupyter notebook kernel for Clojure ([clojupyter](https://github.com/clojupyter/clojupyter)). There is an existing efforts to establish a Clojure/JVM-based data framework, see the [incanter](http://incanter.org/) project.
Ghosting behind these concrete efforts is a broader question about what is most suitable to the Clojure way-of-working; and to what extent we need to square that with the impulses among data science communities influenced by R and Python whom we'd presumably like to take an interest and use our tools.
Context Links:
* [@joinr's discussion of possible "Incanter 2.0"](https://clojurians.zulipchat.com/#narrow/stream/203279-scicloj-org/topic/Clojure.20and.20data.3A.20wishes.2C.20problems.2C.20and.20ideas/near/178647216)
* [@Nick Stares' question re: advisability of a "framework"](https://clojurians.zulipchat.com/#narrow/stream/151924-data-science/topic/Incanter.202.2E0/near/185408384)
* Article: [Frameworks and why (Clojure) Progammers Need Them](http://www.flyingmachinestudios.com/programming/why-programmers-need-frameworks/)
* Repl vs. Notebook:
* Reflections by Simon Belak: https://youtu.be/PSTSO8K80U4?t=382
## International Clojure Data Science Meetup @ ClojureD 2020
State: _accepted_
Temporality: _time-limited_
Event date: _2020-02-27_
At Thursday February 27th, 2020, two days before ClojureD 2020, a group of data-science interested Clojurians will meet to talk, and discuss the future of our tooling and community.
More information is available at https://ti.to/scicloj/international-clojure-data-science-meetup-in-berlin
## ClojureBridge event in 2020
State: _proposed_
Temporality: _time-limited_
Proposed by: Ethan Miller, Daniel Slutsky
* I think that we need at least one project that addresses **goal-diverse-community** in an explicit, actionable way. For example: keep reaching out to individuals of underrepresented groups, inform them about scicloj, and offer a comfortable way to get involved, if they like.
Let us keep in mind that at least several months will pass till we are ready for a ClojureBridge-like activity.
The [probprog study group](https://www.notion.so/scicloj/scicloj-projects-list-a10444219f6543c8a54aae3105f9d884#2aa87403bb544fd3a103add9bd1c5ba6) could be a way to address diversity aspects, but currently it is not prioritized highly, and indeed is a rather demanding project. Maybe some light version of it could work here.
* Trying to suggest an explanation of what the ClojureBridge project could be about:
At some point in the future, we may want to offer workshops of certain kinds:
- clojure for data scientists
- clojure for R users
- data science for clojurians
- clojure data science for anybody
- etc.
Then, we may try to cooperate with [ClojureBridge](https://clojurebridge.org) in creating workshops for underrepresented groups.
Arguably, previous similar attempts have taught us that the current clojure data science story might not be ready for those workshops yet. It would require very thorough preparation, and a clear mindset about our notions and practices.
One possible project that could begin **today**, may go as follows:
1. Set a point in the future, where we want to be ready with decent workshop materials.
2. Continuously try to prepare those materials, realizing again and again why we are not ready, and trying to fill in the missing pieces.
This will not be easy, but it might actually be an excellent way to keep ourselves directed towards our long-term goals. In this sense, it may serve **goal-experimentation**, **goal-clj-common-grammar**, and **goal-communicate-values-goals**. Later in the future, it may also directly serve **goal-diverse-community**.
## RailsGirls Summer of Code 2020
State: _proposed_
Temporality: _time-limited_
Proposed by: _Daniel Slutsky_ at 2020-01-16
Suggesting that we think about the possibility of mentoring and coaching a project at RailsGirls SoC. It could possibly be a project of documenting/testing/writing about one of the libraries that we find important to expose to a larger group of people. Except for goal-diverse-community obviously, it may be related to several of the other goals, depending on the nature of project. It requires some thingking to decide about, and requires some time dedication of a couple of us; but could be important to our goals.
[Zulip discussion](https://clojurians.zulipchat.com/#narrow/stream/203279-scicloj-org/topic/Rails.20Girls.20SoC.202020)
Status: Daniel has sent [a project proposal](https://teams.railsgirlssummerofcode.org/projects/369-data-science-in-clojure).
## Organizational knowledge management
State: _proposed_
Temporality: _ongoing_
Questions:
- Where should we put the dataset conversation from Zulip?
- Part of the workplan effort?
- About the organization.
- Structure: log?
- Deliverable?
Nick's comment to the first Workplan draft:
> I think a wiki is a good format for knowledge management. Alan posted [tiddlywiki](https://tiddlywiki.com/) which seems cool, although I don't think multiple users can edit it at the same time, and I'm not sure how hosting works.
>
> The tradeoffs for knowledge management seem to be between easily capturing ideas and having a more presentable and stable feel. If that if we have a format that's easy to edit and make changes to, we can quickly capture rough ideas from zulip. As Daniel says, it `will make the vast knowldege in our many Zulip discussions more accessible, and will allow future discussions to rely on conclusions of older ones.` But then it risks being less organized and is not as nice in public presentation. However I think for our purposes it's better to optimize for quick capture. In a certain sense HackMD documents are perfectly good for this for this purpose. It does have versioning built in, and we could push stable snapshots of it to the scicloj website if we like. Plus I like the ability to comment.
>
> I always thought it was interesting that [EmacsWiki]( https://www.emacswiki.org/emacs/TabBarMode) has many articles where people's comments are either straight in the body of the page or in a comments/QA section, and people attribute their comments to themselves by convention when appropriate. It can look somewhat messy but seems practical as well. There's also the [Vim Wiki](https://vim.fandom.com/wiki/Vim_Tips_Wiki) to look at.