Teaching computer architecture and assembly language poses significant challenges due to the complexity of underlying concepts and the technical barriers associated with traditional simulation tools. In this paper, we present a web-based simulation platform that integrates visual programming with decentralized RISC-V simulation to improve accessibility and engagement in computer architecture education. The platform allows students to construct and execute RISC-V instructions through a browser-based visual interface without the need for local simulator installation or specialized hardware. In this work, we showcase the integration of this simulation environment with the Visual IoT/Robotics Programming Language Environment (VIPLE), a tool designed to facilitate teaching computational thinking. VIPLE can be applied in teaching both basic and advanced computing technologies, including autonomous driving experiments, traffic simulation, and quantum computing. This paper presents the new development in VIPLE for teaching computer organization through a RISC-V simulator connected to VIPLE, which allows compiling a piece of C code into RISC-V assembly code and running the assembly code on the simulator with a step-by-step animation to help students understand computer components and the instruction execution process.
Tämä opinnäytetyö tarkastelee lohkoketjuteknologian ominaisuuksia ja hajauttamisen keskeisiä periaatteita. Työn ensisijaisena tavoitteena oli perehtyä Ethereum-lohkoketjuverkossa toimivan ja erityisesti digitaalisiin hallintatodistuksiin (NFT) perustuvan hajautetun sovelluksen kehittämiseen. Tämän lisäksi tavoitteena oli tarjota yksinkertaistettu perusta älysopimusten ja hajautettujen sovellusten kehittämiseen. Työn kehys muodostuu aihetta ympäröivästä kirjallisuuskatsauksesta ja oman henkilökohtaisen kehitysprojektin toteutuksen sekä tulosten raportoinnista. Aluksi perehdytään hajautettujen tietokantojen keskeisiin periaatteisiin vertaillen näiden vahvuuksia ja rajoitteita suhteessa keskitettyihin tietokantoihin. Tarkastelun kohteena on myös lohkoketjuteknologian vallitsevat rajoitteet ja sen haasteet sekä tietoturvallisuus ja sen hallinta. Lisäksi syvennytään tarkemmin työhön toteutetussa kehitysprojektissa hyödynnettyyn Ethereum-alustaan ja sen erityispiirteisiin. Oman kehitysprojektin toteutus nojautui työn alussa esitellyn teorian lisäksi muun muassa Ethereumin ja Solidityn dokumentaation. Kehitysprojekti toteutettiin hyödyntäen Scaffold-ETH 2 -työkalupakkia ja sen tarjoamaa kehitysympäristöä. Tämä mahdollisti syventymisen älysopimuksen ja sovelluksen hajautettujen toiminnallisuuksien kehittämiseen yksinkertaistaen lisäksi muun muassa käyttäjäinteraktioiden toteutusta sekä sovelluksen testaamista kehitysprosessin aikana. Projektissa toteutettu älysopimus perustuu ERC-721-standariin, joka on kehitetty erityisesti NFT-pohjaisten sopimusten kehykseksi. Toteutuksessa hyödynnettiin lisäksi hajautettua tiedostojärjestelmää (IPFS) mintattavan NFT:n kuvatiedoston ja metatietojen tallennukseen. Kehitysprojektin tuloksena saatiin toteutettua kevyt testiverkossa toimiva prototyyppimallinen hajautettu sovellus, joka mahdollistaa NFT:n luomisprosessin eli minttaamisen käyttäjän valitsemalla kuvatiedostolla. Sovelluksessa on myös äänestystoiminto, jossa NFT-kohtaiset äänet kirjataan lohkoketjuun sisäisesti. Käyttäjän minttaamien tokenien lukumäärä on rajoitettu enintään kolmeen, ja jokaisella käyttäjällä on käytössään vain yksi ääni. Tämä kehitysprojektin tuotos havainnollistaa hyvin, kuinka lohkoketjujen ja älysopimusten avulla voidaan luoda lisäarvoa ja käyttäjien välistä vuorovaikutusta sovelluksen sisäisesti, ilman tarvetta kolmansille osapuolille tai keskitetyille järjestelmille.
As blockchain technology continues to gain attention, there is a growing need to make it more accessible to young learners in K-12 education. However, the technical complexity and lack of accessible tools have been identified as significant barriers to adoption. Our paper proposes a new method for empowering NFTs by continuously updating their metadata using an API layer. The approach aims to reduce the barriers to entry and enable K-12 students to explore blockchain technology in the same way they learn computational thinking through visual programming tools like Scratch. Our method utilizes Google Blockly, a visual programming language, to make updating NFT metadata more accessible and engaging for young learners. By leveraging a familiar and engaging visual programming language, students can develop their computational thinking skills and explore blockchain technology in a fun and intuitive way. The paper discusses the benefits of using NFTs as a learning tool, including how they can help students understand the concept of digital ownership and value. Overall, our proposed method has the potential to promote student engagement and understanding of blockchain technology, which could have significant implications for the future of education.
Ball sort puzzle is a popular logic puzzle consisting of several bins containing balls of multiple colors. Each bin works like a stack; a ball has to follow the last-in first-out order. The player has to sort the balls by color such that each bin contains only balls of a single color. In this paper, we propose a physical zero-knowledge proof protocol for the ball sort puzzle using a deck of playing cards, which enables a prover to physically show that he/she knows a solution with $t$ moves of the ball sort puzzle without revealing it. Our protocol is the first zero-knowledge proof protocol for an interactive puzzle involving moving objects.
M.E. Sousa‐Vieira, David Ferrero-Castro, J.C. López-Ardao
Badges are non fungible tokens used to document or certify achievements in academics or in any other domain. Besides their utility as proof of achievement, badges are of interest in higher education as pure incentives to push the students and learners in general toward pursuing well-defined goals and skills. In this respect, badges can be naturally incorporated into digital learning platforms also as part of informal learning activities, and stimulate participation, merit, and visibility for the students. However, the level of engagement of learners into these learning activities depends crucially on how the system of badges and rewards has been designed and on how it is applied, if it is to be used effectively. In this paper, we report on the design and implementation of a smart badges system, and an example of its use inside a gamification methodology for informal learning in a master level course, and discuss the benefits and the observed gains in learning performance that can be obtained.
The fields of computer science and engineering are undergoing rapid change, with significant advances in areas including the internet-of-things, cloud computing, and blockchain technologies. Consequently, the gap between traditional course material taught to students in B.S./M.S. programs at universities and the cutting edge of technology used in industry is widening at an unprecedented rate. Students may get overwhelmed and discouraged by the amount of material they need to learn, contributing to high dropout rates in STEM fields, particularly in computer science and engineering. We propose a hands-on laboratory based approach to teach the students the basics of these emerging areas. The objective is to motivate and engage students by encouraging them to tinker with physical systems, so that they can develop an intuitive understanding of the new technologies. We present an approach using the Raspberry Pi, a small and inexpensive platform that allows students to build interesting applications in the area of the internet-of-things. We provide the preferred sequencing of necessary material, and the required combination of different software modules necessary to teach the students. We discuss our experience of teaching this course to both graduate and undergraduate students. Our results should be beneficial to instructors interested in exposing their students to these emerging technologies. Our main finding is that students prefer hands-on laboratory exercises to theoretical instruction. They are able to grasp concepts better when there is a short theoretical lecture followed immediately by related hands-on laboratory exercises. We present specific laboratory exercises to teach students about the end-to-end processing involved in acquiring images, creating immutable records using a cryptographic hash function, and transmitting and storing them on the cloud. These lab exercises provide students with an understanding of camera-based security applications, basic blockchain technology, and cloud computing.