From b6dc60741e761956823fd7bd6b8ec379b49d40ce Mon Sep 17 00:00:00 2001 From: Orestis <orestis.malaspinas@pm.me> Date: Wed, 19 Jun 2024 18:53:17 +0200 Subject: [PATCH] added a few stuff about architecture --- ZolaApp/content/blog/current-state.md | 41 +++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 ZolaApp/content/blog/current-state.md diff --git a/ZolaApp/content/blog/current-state.md b/ZolaApp/content/blog/current-state.md new file mode 100644 index 0000000..78da5ec --- /dev/null +++ b/ZolaApp/content/blog/current-state.md @@ -0,0 +1,41 @@ ++++ +title = "Current state of the Dojo (part 1): architecture" +description = "This blog post is the first part of a high level description of the Dojo project" +date = 2024-06-24T12:00:00+00:00 +updated = 2024-06-24T12:00:00+00:00 +draft = true +template = "blog/page.html" + +[taxonomies] +authors = ["Orestis Malaspinas"] + +[extra] +lead = "This post summarises at a high level the techonological and architectural choices made for the Dojo project" ++++ + +## Foreword + +The Dojo project aims at providing a modular, extensible, decentralized, collaborative platform to perform **programming** exercises and reusing very widely adopted **open source** technologies. We think that this strong choice not only allows for a sustainable development, but also helps students familiarize themselves with very widely adopted tools that will help them in their future working environment. + +## The Dojo features + +The Dojo is a platform for teachers to propose programming *assignments* and for students to perform them as *exercises* for any class. + +When an exercise is performed the exercise must be evaluated quickly to give immediate feedback +to the student as whether the solution is correct or not. The performed exercises should be used as +a "portfolio" at any point in time by the student. Students should be able to collaborate with their peers when performing an exercise, and should be able to ask for help from their teachers easily. + +With this in mind we wanted to use an environment that was as flexible as possible and therefore +built the Dojo on top of the Gitlab infrastructure which offers the following great features: + +* Built on top of the `git` version control system, +* Offers CI/CD pipelines to evaluate automatically any kind of code (including unit tests), +* Offers collaborative tools such as issue tracking, wikis, etc. + +Using Gitlab as the backbone of the Dojo infrastructure, allows the students to familiarize themselves with tools and workflows commonly used in the industry. + +In order to manage the Gitlab instance, the accounts of students, etc. we also need a central authority + +## The Dojo architecture + + -- GitLab