Hyperstyle: A Tool for Assessing the Code Quality of Solutions to Programming Assignments

12/06/2021
by   Anastasiia Birillo, et al.
0

In software engineering, it is not enough to simply write code that only works as intended, even if it is free from vulnerabilities and bugs. Every programming language has a style guide and a set of best practices defined by its community, which help practitioners to build solutions that have a clear structure and therefore are easy to read and maintain. To introduce assessment of code quality into the educational process, we developed a tool called Hyperstyle. To make it reflect the needs of the programming community and at the same time be easily extendable, we built it upon several existing professional linters and code checkers. Hyperstyle supports four programming languages (Python, Java, Kotlin, and Javascript) and can be used as a standalone tool or integrated into a MOOC platform. We have integrated the tool into two educational platforms, Stepik and JetBrains Academy, and it has been used to process about one million submissions every week since May 2021.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
04/02/2021

Catalogs of C and Python Antipatterns by CS1 Students

Understanding students' programming misconceptions is critical. Doing so...
research
07/25/2019

Explicit and Controllable Assignment Semantics

Despite the plethora of powerful software to spot bugs, identify perform...
research
08/27/2021

CharmFL: A Fault Localization Tool for Python

Fault localization is one of the most time-consuming and error-prone par...
research
07/10/2023

COMEX: A Tool for Generating Customized Source Code Representations

Learning effective representations of source code is critical for any Ma...
research
01/26/2023

Analyzing the Quality of Submissions in Online Programming Courses

Programming education should aim to provide students with a broad range ...
research
09/19/2017

Rbox: an integrated R package for ATOM Editor

R is a programming language and environment that is a central tool in th...
research
07/16/2021

A method for decompilation of AMD GCN kernels to OpenCL

Introduction: Decompilers are useful tools for software analysis and sup...

Please sign up or login with your details

Forgot password? Click here to reset