The Journal of Open Source Education (JOSE) is an educator-friendly journal for publishing computational learning modules & educational software.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

The Journal of Open Source Education

Build Status Powered by NumFOCUS Join the chat at

The Journal of Open Source Education (JOSE, pronounced [hoe-zay]) is a journal for open educational software and open-source educational content.

JOSE is a sibling journal to the Journal of Open Source Software (JOSS), which publishes open research software. JOSE relies on the journal management infrastructure and tools developed for JOSS.

JOSE publishes two types of (brief) articles that describe:

  1. open educational software tools

  2. open-source learning modules

Why is this journal needed?

Currently, academia lacks a mechanism for crediting efforts to develop software for assisting teaching and learning or open-source educational content. As a result, beyond personal motivation, there is little incentive to develop and share such material.

The Journal of Open Source Education (JOSE) is a scholarly journal with a formal peer review process designed to improve the quality of the software or content submitted. Upon acceptance into JOSE, a CrossRef DOI is minted and we list your paper on the JOSE website.

What do you mean by "open-source educational materials"?

Examples include Jupyter notebooks or plaintext/markup language documents like LaTeX, R Markdown, and ReST for course/lesson content and associated notes, with embedded or associated code snippets/programs.

We do not mean openly available slides, lecture notes, or YouTube videos, though these may be acceptable as supplementary materials. In addition, course syllabi by themselves are not suitable for submission (Syllabus may be more appropriate).

tl;dr: your course or lesson content must contain or use code to teach. We are not focused exclusively on learning to code, but coding to learn.

What do you mean by "educational software tools"?

Open-source software that serves as educational technology; examples include (but are not limited to) alternatives to learning management systems, autograders, cloud systems for lesson delivery, student collaboration tools. For these tools, peer review will follow a similar process as JOSS.


We consider submissions from all areas of academia, although our computational focus may result in more natural submissions from STEM fields—but all are welcome!

Submissions must be "feature complete" to the extent that another educator could adopt, reuse, and/or extend for their purposes.

The ideal submission size is a course module, although entire courses are also acceptable.

The team

The editorial board includes:

  • Lorena A. Barba (editor-in-chief), George Washington University
  • Kathryn D. Huff, University of Illinois at Urbana–Champaign
  • Jason Moore, University of California, Davis
  • Kyle Niemeyer, Oregon State University
  • Anthony Scopatz, University of South Carolina
  • Charles R. Severance, University of Michigan
  • Robert Talbert, Grand Valley State University
  • Tracy Teal, Data Carpentry

Advisors to the journal include:

  • Carly Strasser, Moore Foundation

The site

The JOSE submission tool is hosted at

JOSE Reviews

If you're looking for the JOSE reviews repository, head over here:

Code of Conduct

In order to ensure an open and welcoming community, JOSE adheres to a code of conduct adapted from the Contributor Covenant code of conduct.

Please adhere to this code of conduct in any interactions you have in the JOSS community. It is strictly enforced on all official JOSE repositories, the JOSE website, and resources. If you encounter someone violating these terms, please let the Editor-in-Chief (@labarba) or someone on the editorial board know and we will address it as soon as possible.


  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request