Skip to content

Aalto-LeTech/aplus-courses

Repository files navigation

A+ Courses is a plugin for IntelliJ IDEA, used in programming courses at Aalto University

Build Known Vulnerabilities Coverage

Plugin Downloads Plugin Version


Screenshot

This plugin supports the educational use of IntelliJ IDEA in programming courses that rely on the A+ LMS developed at Aalto University. The plugin accesses programming assignments and automated grading services provided by A+ and otherwise enhances the student experience.

Keywords: aplus courses, a plus

This repository hosts the source code for the A+ Courses IntelliJ IDEA plugin communicating with the A+ LMS. It allows users to download code modules, submit assignments, and use the Scala REPL more conveniently among other learning experience improvements. The plugin is currently used in introductory programming courses taught at Aalto University (Programming 1 and Programming Studio 2/A).

The project is developed under the Aalto LeTech research group and is steered by Juha Sorva and Otto Seppälä.

Features and Further Development

Most of the available features are described in the testing manual, which is also used internally for testing. There's also a basic video presentation of the A+ Courses plugins functionality stored here.

The roadmap and plans for the future development of the plugin are in the project wiki. The list of requirements is in no way final and we welcome all input and ideas on how to make this plugin better.

Maintenance

If you are a student in a course and you have discovered an issue you'd like to report, please turn to the teaching assistants. You can also create an issue directly here: Aalto-LeTech/aplus-courses/issues.

Once the bug report is made, the development team (@jaakkonakaza, @OlliKiljunen, @Taikelenn) will handle it on a best-effort basis:

  1. The issue will be confirmed and prioritized within two working days.
  2. An estimation of when the issue could be fixed is made within three working days.
  3. Once the issue is fixed, it will take at most two working days until the fix is publicly available in the JetBrains plugin repository, and, eventually, your IDE.

Medium- to high-priority issues are usually solved within one working-week.

List of courses is available at https://version.aalto.fi/gitlab/aplus-courses/course-config-urls.

Research

Academic research related to or created based on the A+ Courses plugin.

'Creating an educational plugin to support online programming learning A case of IntelliJ IDEA plugin for A+ Learning Management System' Master's thesis by Nikolai Denissov 'Plug-in Interoperation in Extendable Platforms' Master's thesis by Olli Kiljunen

Code Style

This project uses slightly modified google checkstyle rules from Checkstyle GitHub for code formatting. The particular version applied to this project is in the checkstyle directory. Please note that the checkstyle file itself is licensed under the GNU LGPL license (also in the directory). Scala code is checked using the default rules from the scalastyle repository. The configuration file is located in the scalastyle directory and it is licensed under the Apache-2.0 license.

Code of Conduct

The team follows general principles of Aalto University's code of conduct.

Credits

We would like to acknowledge Nikolas Drosdek, @superseacat, * Styliani Tsovou,* @valtonv2, * @xiaoxiaobt,* Ida Iskala, and @StanislavFranko for their help in testing and improving this project.

A+ Courses