Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make team explicit and add publications page #5162

Merged
merged 10 commits into from
Nov 16, 2023
Merged
Show file tree
Hide file tree
Changes from 6 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions app/assets/stylesheets/pages.css.scss
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
@import "pages/export.css.scss";
@import "pages/home.css.scss";
@import "pages/publications.css.scss";
@import "pages/sign-in.css.scss";
4 changes: 4 additions & 0 deletions app/assets/stylesheets/pages/publications.css.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
.publication-image {
max-width: 300px;
float: right;
}
2 changes: 2 additions & 0 deletions app/controllers/pages_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,8 @@ def about
set_metrics
end

def publications; end

def data; end

def privacy; end
Expand Down
1 change: 1 addition & 0 deletions app/views/layouts/_footer.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
<%= link_to 'Status', status_path, target: "_blank", rel: "noopener" %>
<%= link_to t("layout.footer.privacy_statement"), privacy_path %>
<%= link_to t("layout.footer.your_data"), data_path %>
<%= link_to t("layout.footer.publications"), publications_path %>
<% version_info = "Dodona #{Dodona::Application::VERSION}" %>
<% version_info += " (ruby #{RUBY_VERSION} #{`which ruby`})" if Rails.env.development? || Rails.env.staging? %>
<%= link_to version_info, "https://github.com/orgs/dodona-edu/discussions/categories/release-notes" %>
Expand Down
7 changes: 2 additions & 5 deletions app/views/pages/_team.en.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,8 @@
<div class="col-12 col-sm-8">
<h3>Developed at Ghent University</h3>
<p>
Dodona is developed by a small team of researchers from the
department of <a href="https://www.ugent.be/we/twist/en">Applied mathematics, Computer Science and Statistics</a> at
<a href="https://www.ugent.be/en">Ghent University</a>.
The platform is fully open source: all code is available on
<a href="https://github.com/dodona-edu/dodona">GitHub</a>.
Dodona is developed by Jorg Van Renterghem, Charlotte Van Petegem, Niko Strijbol, Rien Maertens, Peter Dawyndt, and Bart Mesuere from the department of <a href="https://www.ugent.be/we/twist/en">Applied mathematics, Computer Science and Statistics</a> at <a href="https://www.ugent.be/en">Ghent University</a>.
The platform is fully open source: all code is available on <a href="https://github.com/dodona-edu/dodona">GitHub</a>.
</p>
<p><strong>Help us keep Dodona free and <%= link_to "support us", support_us_path %>!</strong></p>
</div>
7 changes: 2 additions & 5 deletions app/views/pages/_team.nl.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,8 @@
<div class="col-12 col-sm-8">
<h3>Ontwikkeld aan de Universiteit Gent</h3>
<p>
Dodona wordt ontwikkeld door een klein team onderzoekers van de
vakgroep <a href="https://www.ugent.be/we/twist/nl">Toegepaste Wiskunde en Statistiek</a> aan de
<a href="https://www.ugent.be">Universiteit Gent</a>.
Het platform is volledig open source: alle code is beschikbaar op
<a href="https://github.com/dodona-edu/dodona">GitHub</a>.
Dodona wordt ontwikkeld door Jorg Van Renterghem, Charlotte Van Petegem, Niko Strijbol, Rien Maertens, Peter Dawyndt, en Bart Mesuere van de vakgroep <a href="https://www.ugent.be/we/twist/nl">Toegepaste Wiskunde en Statistiek</a> aan de <a href="https://www.ugent.be">Universiteit Gent</a>.
Het platform is volledig open source: alle code is beschikbaar op <a href="https://github.com/dodona-edu/dodona">GitHub</a>.
</p>
<p><strong>Help om Dodona gratis te houden en <%= link_to "steun ons", support_us_path %>!</strong></p>
</div>
2 changes: 1 addition & 1 deletion app/views/pages/data.en.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
<div class="col-12 col-sm-8 col-lg-7">
<p>We have the ambition to transform Dodona into an intelligent platform that optimally supports students in acquiring programming skills. We could do this, for example, by offering dynamic learning paths and by recommending exercises about a specific topic or of a certain difficulty. At the same time, we wish to give teachers insight into the progress of their students to enable them to optimise their teaching.</p>
<p>To develop and eventually provide these functionalities, it is necessary to (automatically) process the available data, for example, using machine learning. When doing this, the data will always be pseudonymised and in many cases, aggregated. Your personal data will be decoupled from your submissions using this de-identification procedure and will not be processed. By doing this, the risk of unwanted identification of people within Dodona is minimised.</p>
<p>Insights acquired from using and developing these innovative educational technologies can be published as scientific research. Within this context, we will never share or publish data that would allow the identification of individual users unless explicit permission is given.</p>
<p>Insights acquired from using and developing these innovative educational technologies can be published as <%= link_to "scientific research", publications_path %>. Within this context, we will never share or publish data that would allow the identification of individual users unless explicit permission is given.</p>
</div>
<div class="col-sm-4 col-lg-3 offset-lg-1 d-none d-sm-block"><%= image_tag "outline-pageview.svg", class: "img-fluid image-muted", style: "width:90%" %><%= image_tag "outline-school.svg", class: "img-fluid image-muted", style: "width:90%" %></div>
</div>
Expand Down
2 changes: 1 addition & 1 deletion app/views/pages/data.nl.html.erb
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@
<div class="col-12 col-sm-8 col-lg-7">
<p>Het team achter Dodona heeft de ambitie om Dodona uit te bouwen tot een intelligent platform dat studenten optimaal ondersteunt bij het aanleren van programmeervaardigheden. Dit zouden we bijvoorbeeld kunnen door het aanbieden van dynamische leerpaden en het gericht aanbevelen van oefeningen over een specifiek onderwerp of van een bepaalde moeilijkheidsgraad. Tegelijk willen we lesgevers graag inzicht geven in de voortgang van hun studenten ter ondersteuning van hun lessen.</p>
<p>Om deze functionaliteiten te ontwikkelen en aan te bieden is het nodig om de beschikbare gegevens (automatisch) te analyseren, bijvoorbeeld met behulp van machine learning. Hierbij zullen we steeds de gegevens pseudonimiseren en in veel gevallen aggregeren. Dit wil zeggen dat je persoonlijke gegevens ontkoppeld worden van de ingediende oplossingen en niet mee verwerkt worden. Hierdoor wordt het risico op de ongewilde identificatie van personen binnen Dodona geminimaliseerd.</p>
<p>De inzichten die verkregen worden door de ontwikkeling en het gebruik van deze innovatieve onderwijstechnologieën kunnen gepubliceerd worden als wetenschappelijk onderzoek. Er zullen binnen deze context nooit gegevens openbaar gemaakt worden die het toelaten om individuele personen te identificeren, tenzij we hiervoor je expliciete toestemming zouden krijgen.</p>
<p>De inzichten die verkregen worden door de ontwikkeling en het gebruik van deze innovatieve onderwijstechnologieën kunnen gepubliceerd worden als <%= link_to "wetenschappelijk onderzoek", publications_path %>. Er zullen binnen deze context nooit gegevens openbaar gemaakt worden die het toelaten om individuele personen te identificeren, tenzij we hiervoor je expliciete toestemming zouden krijgen.</p>
</div>
<div class="col-sm-4 col-lg-3 offset-lg-1 d-none d-sm-block"><%= image_tag "outline-pageview.svg", class: "img-fluid image-muted", style: "width:90%" %><%= image_tag "outline-school.svg", class: "img-fluid image-muted", style: "width:90%" %></div>
</div>
Expand Down
163 changes: 163 additions & 0 deletions app/views/pages/publications.html.erb
Original file line number Diff line number Diff line change
@@ -0,0 +1,163 @@
<div class="row">
<div class="col-md-8 offset-md-2 col-12">
<div class="page-subtitle">
<h1><%= t '.title' %></h1>
</div>

<div class="card">
<div class="card-title card-title-colored">
<h2 class="card-title-text">Dodona: Learn to code with a virtual co-teacher that supports active learning</h2>
<div class="card-subtitle-text">
Charlotte Van Petegem, Rien Maertens, Niko Strijbol, Jorg Van Renterghem, Felix Van der Jeugt, Bram De Wever, Peter Dawyndt, Bart Mesuere
</div>
</div>
<div class="card-supporting-text">
<%= image_tag "publications/vanpetegem-2023-2.png", class: "publication-image" %>
<h4>Abstract</h4>
<p>
Dodona (dodona.ugent.be) is an intelligent tutoring system for computer programming.
It provides real-time data and feedback to help students learn better and teachers teach better.
Dodona is free to use and has more than 61 thousand registered users across many educational and research institutes, including 20 thousand new users in the last year.
The source code of Dodona is available on GitHub under the permissive MIT open-source license.
This paper presents Dodona and its design and look-and-feel.
We highlight some of the features built into Dodona that make it possible to shorten feedback loops, and discuss an example of how these features can be used in practice.
We also highlight some of the research opportunities that Dodona has opened up and present some future developments.
</p>
</div>
</div>

<div class="card">
<div class="card-title card-title-colored">
<h2 class="card-title-text">Dolos 2.0: Towards Seamless Source Code Plagiarism Detection in Online Learning Environments</h2>
<div class="card-subtitle-text">
Rien Maertens, Peter Dawyndt, Bart Mesuere
</div>
</div>
<div class="card-supporting-text">
<%= image_tag "publications/maertens-2023.png", class: "publication-image" %>
<h4>Abstract</h4>
<p>
With the increasing demand for programming skills comes a trend towards more online programming courses and assessments.
While this allows educators to teach larger groups of students, it also opens the door to dishonest student behaviour, such as copying code from other students.
When teachers use assignments where all students write code for the same problem, source code similarity tools can help to combat plagiarism.
Unfortunately, teachers often do not use these tools to prevent such behaviour.
In response to this challenge, we have developed a new source code plagiarism detection tool named Dolos.
Dolos is open-source, supports a wide range of programming languages, and is designed to be user-friendly.
It enables teachers to detect, prove and prevent plagiarism in programming courses by using fast algorithms and powerful visualisations.
We present further enhancements to Dolos and discuss how it can be integrated into modern computing education courses to meet the challenges of online learning and assessment.
By lowering the barriers for teachers to detect, prove and prevent plagiarism in programming courses, Dolos can help protect academic integrity and ensure that students earn their grades honestly.
</p>
</div>
</div>

<div class="card">
<div class="card-title card-title-colored">
<h2 class="card-title-text">Dodona: Learn to Code with a Virtual Co-teacher that Supports Active Learning</h2>
<div class="card-subtitle-text">
Charlotte Van Petegem, Peter Dawyndt, Bart Mesuere
</div>
</div>
<div class="card-supporting-text">
<%= image_tag "publications/vanpetegem-2023.png", class: "publication-image" %>
<h4>Abstract</h4>
<p>
Dodona (dodona.ugent.be) is an intelligent tutoring system for learning computer programming, statistics and data science.
It bridges the gap between assessment and learning by providing real-time data and feedback to help students learn better, teachers teach better and educational technology become more effective.
We show how Dodona can be used as a virtual co-teacher to stimulate active learning and support challenge-based education in open and collaborative learning environments.
We also highlight some of the opportunities and challenges we have faced in practice.
Dodona is free to use and has more than 50 thousand registered users across many educational and research institutions, including 15 thousand new users in the last year.
Dodona's source code is available on GitHub under the permissive MIT open-source license.
</p>
</div>
</div>

<div class="card">
<div class="card-title card-title-colored">
<h2 class="card-title-text">Blink: An Educational Software Debugger for Scratch</h2>
<div class="card-subtitle-text">
Niko Strijbol, Christophe Scholliers, Peter Dawyndt
</div>
</div>
<div class="card-supporting-text">
<%= image_tag "publications/strijbol-2023.png", class: "publication-image" %>
<h4>Abstract</h4>
<p>
Debugging is an important aspect of programming.
Most programming languages have some features and tools to facilitate debugging.
As the debugging process is also frustrating, it requires good scaffolding, in which a debugger can be a useful tool.
Scratch is a visual block-based programming language that is commonly used to teach programming to children, aged 10-14.
It comes with its own integrated development environment (IDE), where children can edit and run their code.
This IDE misses some of the tools that are available in traditional IDEs, such as a debugger.
In response to this challenge, we developed Blink.
Blink is a debugger for Scratch with the aim of being usable to the young audience that typically uses Scratch.
We present the currently implemented features of the debugger, and the challenges we faced while implementing those, both from a user-experience standpoint and a technical standpoint.
</p>
</div>
</div>

<div class="card">
<div class="card-title card-title-colored">
<h2 class="card-title-text">TESTed — An educational testing framework with language-agnostic test suites for programming exercises</h2>
<div class="card-subtitle-text">
Niko Strijbol, Charlotte Van Petegem, Rien Maertens, Boris Sels, Christophe Scholliers, Peter Dawyndt, Bart Mesuere
</div>
</div>
<div class="card-supporting-text">
<%= image_tag "publications/strijbol-2022.png", class: "publication-image" %>
<h4>Abstract</h4>
<p>
In educational contexts, automated assessment tools (AAT) are commonly used to provide formative feedback on programming exercises.
However, designing exercises for AAT remains a laborious task or imposes limitations on the exercises.
Most AAT use either output comparison, where the generated output is compared against an expected output, or unit testing, where the tool has access to the code of the submission under test.
While output comparison has the advantage of being programming language independent, the testing capabilities are limited to the output.
Conversely, unit testing can generate more granular feedback, but is tightly coupled with the programming language of the submission.
In this paper, we introduce TESTed, which enables the best of both worlds: combining the granular feedback of unit testing with the programming language independence of output comparison.
Educators can save time by designing exercises that can be used across programming languages.
Finally, we report on using TESTed in educational practice.
</p>
</div>
</div>

<div class="card">
<div class="card-title card-title-colored">
<h2 class="card-title-text">Pass/fail prediction in programming courses</h2>
<div class="card-subtitle-text">
Charlotte Van Petegem, Louise Deconinck, Dieter Mourisse, Rien Maertens, Niko Strijbol, Bart Dhoedt, Bram De Wever, Peter Dawyndt, Bart Mesuere
</div>
</div>
<div class="card-supporting-text">
<%= image_tag "publications/vanpetegem-2022.png", class: "publication-image" %>
<h4>Abstract</h4>
<p>
We present a privacy-friendly early-detection framework to identify students at risk of failing in introductory programming courses at university.
The framework was validated for two different courses with annual editions taken by higher education students (N = 2&thinsp;080) and was found to be highly accurate and robust against variation in course structures, teaching and learning styles, programming exercises and classification algorithms.
By using interpretable machine learning techniques, the framework also provides insight into what aspects of practising programming skills promote or inhibit learning or have no or minor effect on the learning process.
Findings showed that the framework was capable of predicting students’ future success already early on in the semester.
</p>
</div>
</div>

<div class="card">
<div class="card-title card-title-colored">
<h2 class="card-title-text">Dolos: Language-agnostic plagiarism detection in source code</h2>
<div class="card-subtitle-text">
Rien Maertens, Charlotte Van Petegem, Niko Strijbol, Toon Baeyens, Arne Carla Jacobs, Peter Dawyndt, Bart Mesuere
</div>
</div>
<div class="card-supporting-text">
<%= image_tag "publications/maertens-2022.png", class: "publication-image" %>
<h4>Abstract</h4>
<p>
Learning to code is increasingly embedded in secondary and higher education curricula, where solving programming exercises plays an important role in the learning process and in formative and summative assessment.
Unfortunately, students admit that copying code from each other is a common practice and teachers indicate they rarely use plagiarism detection tools.
We want to lower the barrier for teachers to detect plagiarism by introducing a new source code plagiarism detection tool (Dolos) that is powered by state-of-the art similarity detection algorithms, offers interactive visualizations, and uses generic parser models to support a broad range of programming languages.
Dolos is compared with state-of-the-art plagiarism detection tools in a benchmark based on a standardized dataset.
We describe our experience with integrating Dolos in a programming course with a strong focus on online learning and the impact of transitioning to remote assessment during the COVID-19 pandemic.
Dolos outperforms other plagiarism detection tools in detecting potential cases of plagiarism and is a valuable tool for preventing and detecting plagiarism in online learning environments.
It is available under the permissive MIT open-source license at <a href="https://dolos.ugent.be">https://dolos.ugent.be</a>.
</p>
</div>
</div>

</div>
</div>
1 change: 1 addition & 0 deletions config/locales/views/defaults/en.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ en:
support_dodona: Support Dodona
ugent: Ghent University
your_data: Your data
publications: Publications
privacy_statement: "Privacy statement"
search:
search: search
Expand Down
1 change: 1 addition & 0 deletions config/locales/views/defaults/nl.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ nl:
support_dodona: Steun Dodona
ugent: Universiteit Gent
your_data: Jouw data
publications: Publicaties
privacy_statement: "Privacyverklaring"
search:
search: zoeken
Expand Down
2 changes: 2 additions & 0 deletions config/locales/views/pages/en.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ en:
get-feedback-text: Your code is automatically tested. Get your results in seconds!
we: Faculty of Sciences
elixir: ELIXIR Belgium
publications:
title: Publications
home:
more-courses: More courses
favorites: "Favorites"
Expand Down
2 changes: 2 additions & 0 deletions config/locales/views/pages/nl.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ nl:
get-feedback-text: Je code wordt automatisch getest en na enkele seconden krijg je het resultaat te zien.
we: Faculteit Wetenschappen
elixir: ELIXIR Belgium
publications:
title: Publicaties
home:
more-courses: Meer cursussen
favorites: "Favorieten"
Expand Down
1 change: 1 addition & 0 deletions config/routes.rb
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
get '/data' => 'pages#data'
get '/privacy' => 'pages#privacy'
get '/profile' => 'pages#profile', as: 'profile'
get '/publications' => 'pages#publications'
get '/support-us' => 'pages#support'

get '/contact' => 'pages#contact'
Expand Down