AAU Studenterprojekter - besøg Aalborg Universitets studenterprojektportal
Et kandidatspeciale fra Aalborg Universitet
Book cover


VizCode: Et web-baseret, visuelt udviklingsmiljø

Oversat titel

VizCode: A web-based, Visual Integrated Development Environment

Forfattere

; ;

Semester

4. semester

Udgivelsesår

2024

Afleveret

Antal sider

99

Resumé

Dette projekt undersøger, om begyndere i et introduktionskursus som CS50 lærer bedre, når grafiske blokke og tekstbaseret kode bruges side om side. Vi udviklede VizCode, et webbaseret visuelt integreret udviklingsmiljø, der kombinerer Blockly (blokbaseret visuel programmering) med programmeringssproget C. For at arbejde systematisk i et komplekst udviklingsforløb brugte vi Sarasvathys Effectuation-strategi (en entreprenørskabsmetode til at træffe beslutninger under usikkerhed) og Aaens Essence: Problem Solution Model Generation (en måde at strukturere problem og løsning). Indledende undersøgelser med spørgeskemaer og interviews blandt CS50-studerende på Aalborg Universitet pegede på, at programmeringskompleksitet og frustration er væsentlige barrierer. Med afsæt i Dual Coding Theory (ideen om, at kombinationen af ord og billeder kan styrke læring) og Paperts konstruktionisme (læring gennem at bygge og eksperimentere) designede vi visualiseringsstrategier og implementerede tovejs synkronisering, så ændringer i blokke straks afspejles i C-koden og omvendt med øjeblikkelig feedback. Vi evaluerede designet ved at bruge Flowgorithm og Cake-core som MVP’er (minimum viable products) og gennemførte brugervenlighedstest og fokusgruppeinterviews. Fundene tyder på, at VizCode kan reducere noget af frustrationen ved at muliggøre løbende debugging gennem Blockly. Der er dog behov for yderligere forskning for at bekræfte effekten på læring af computational thinking (at nedbryde problemer og tænke i trin/algoritmer) og centrale programmeringskoncepter. De tidlige tegn er lovende, men kræver mere undersøgelse for at blive valideret.

This project examines whether beginners in an introductory course like CS50 learn better when visual blocks and text-based code are used side by side. We developed VizCode, a web-based visually integrated development environment that combines Blockly (block-based visual programming) with the C programming language. To navigate a complex development process, we applied Sarasvathy’s Effectuation strategy (an entrepreneurship approach for decision-making under uncertainty) and Aaen’s Essence: Problem Solution Model Generation (a way to structure problem and solution). Early surveys and interviews with CS50 students at Aalborg University indicated that programming complexity and frustration are major barriers. Guided by Dual Coding Theory (the idea that combining words and images can support learning) and Papert’s constructionism (learning through building and experimentation), we designed visualization strategies and implemented two-way synchronization, so changes in blocks are immediately reflected in C code and vice versa, with instant feedback. We evaluated our design using Flowgorithm and Cake-core as MVPs (minimum viable products) and conducted usability tests and focus group interviews. Findings suggest that VizCode can ease some frustration by enabling continuous debugging through Blockly. However, further research is needed to confirm its impact on learning computational thinking (breaking down problems and reasoning in steps/algorithms) and core programming concepts. Early indicators are promising, but more study is required to validate these results.

[Dette resumé er omskrevet med hjælp fra AI baseret på projektets originale resumé]