Related papers: Minecraft: An Engaging Platform to Learn Programmi…
While teaching introductory programming courses for over a decade in reputed institutions we have experienced that several factors play significant role in developing problem solving skills and program development skills in students. There…
Programming languages serve a dual purpose: to communicate programs to computers, and to communicate programs to humans. Indeed, it is this dual purpose that makes programming language design a constrained and challenging problem.…
Kids have an amazing capacity to use modern electronic devices such as tablets, smartphones, etc. This has been incredibly boosted by the ease of access of these devices given the expansion of such devices through the world, reaching even…
In this innovative practice work-in-progress paper, we compare two different methods to teach machine learning concepts to undergraduate students in Electrical Engineering. While machine learning is now being offered as a senior-level…
Algorithmic thinking is a central concept in the context of computational thinking, and it is commonly taught by computer programming. A recent trend is to introduce basic programming concepts already very early on at primary school level.…
Game development is a highly technical practice that traditionally requires programming skills. This serves as a barrier to entry for would-be developers or those hoping to use games as part of their creative expression. While there have…
School classrooms are equipped with more and more mobile devices. However, the latest studies show that their use by teachers is still very limited because of a lack of resources and applications adapted to use these artifacts in education.…
Teaching programming to novices is best done with tools with simpler user interfaces than professional IDEs that are tailored for experienced programmers. In a distance learning situation it is also important to have a development…
Cloud computing is the new technology that has various advantages and it is an adoptable technology in this present scenario. The main advantage of the cloud computing is that this technology reduces the cost effectiveness for the…
Serious games are beneficial for education in various computer science areas. Numerous works have reported the experiences of using games (not only playing but also development) in teaching and learning. Considering it could be difficult…
We provide ongoing results from the development of a personalized learning system integrated into a serious game. Given limited instructor resources, the use of computerized systems to help tutor students offers a way to provide higher…
Modeling should play a central role in K-12 STEM education, where it could make classes much more engaging. A model underlies every scientific theory, and models are central to all the STEM disciplines (Science, Technology, Engineering,…
People use the Internet to learn new skills, stay connected with friends, and find new communities to engage with. Live streaming platforms like Twitch.tv, YouTube Live, and Facebook Gaming provide a place where all three of these…
Serious games are defined as applied games that focus on the gamification of an experience (e.g., learning and training activities) and are not strictly for entertainment purposes. In recent years, serious games have become increasingly…
With large language models (LLMs) on the rise, in-game interactions are shifting from rigid commands to natural conversations. However, the impacts of LLMs on player performance and game experience remain underexplored. This work explores…
This paper introduces our gamification of a part of our software design curriculum. Based on typical design principles a motivating learning game is developed to train students in software design. We use Bloom's taxonomy to determine…
Sketching is an important means of communication in software engineering practice. Yet, there is little research investigating the use of sketches. We want to contribute a better understanding of sketching, in particular its use during…
Mob Programming, or "mobbing", is a relatively new collaborative programming practice being experimented with in different organizational contexts. There are a number of claimed benefits to this way of working, but it is not clear if these…
This paper presents different possibilities of using mobile robots in education. Through the application of mobile mechatronic robotic system "Robotino" this paper shows the possibilities of developing interactive lectures and exercises in…
As part of formative and summative assessments in programming courses, students work on developing programming artifacts following a given specification. These artifacts are evaluated by the teachers. At the end of this evaluation, the…