This repository contains resources to support the creation of algorithmic essays, which we define as short reports, with code, that present at least two different approaches to solving a computational problem and evaluate each approach against some criteria, like efficiency, simplicity, ease to modify.
Algorithmic essays may help the development of professional skills, like writing clearly and succinctly, giving and acting on feedback, producing clean code, and working collaboratively.
We created these resources:
The guides are on our documentation site and the rest is in our Deepnote project, which you can copy to your Deepnote account.
If you want to adapt this material to your course, this repository has
the guides in the docs/
folder and the rest in the Deepnote/
folder.
This repository is developed with poetry.
After installing poetry
, enter poetry install
to create the development environment.
To preview the documentation that will be in GitHub Pages, enter poetry run mkdocs serve
.
The documentation must be written in strict Markdown: blank line before a new list; line breaks are two spaces; indentation is 4 spaces.
To build the documentation in the docs/
folder from the src/docs
files, first enter
poetry install
to update your development environment, then
enter poetry run mkdocs build
.
(Don't use mkdocs gh-deploy
because it pushes untracked and other files,
without giving you a chance to check what will be pushed.)
When a new version of the library is to be put on PyPI:
pyproject.toml
and Deepnote/Dockerfile
,
so that a new docker image can be built.The code and text in this repository are Copyright © 2023–2024 by The Open University, UK. The code is licensed under a BSD 3-clause licence. The text is licensed under a Creative Commons Attribution 4.0 International Licence.