1,221 research outputs found

    Block-Based Development of Mobile Learning Experiences for the Internet of Things

    Get PDF
    The Internet of Things enables experts of given domains to create smart user experiences for interacting with the environment. However, development of such experiences requires strong programming skills, which are challenging to develop for non-technical users. This paper presents several extensions to the block-based programming language used in App Inventor to make the creation of mobile apps for smart learning experiences less challenging. Such apps are used to process and graphically represent data streams from sensors by applying map-reduce operations. A workshop with students without previous experience with Internet of Things (IoT) and mobile app programming was conducted to evaluate the propositions. As a result, students were able to create small IoT apps that ingest, process and visually represent data in a simpler form as using App Inventor's standard features. Besides, an experimental study was carried out in a mobile app development course with academics of diverse disciplines. Results showed it was faster and easier for novice programmers to develop the proposed app using new stream processing blocks.Spanish National Research Agency (AEI) - ERDF fund

    Learning Dimensions: Lessons from Field Studies

    Get PDF
    In this paper, we describe work to investigate the creation of engaging programming learning experiences. Background research informed the design of four fieldwork studies involving a range of age groups to explore how programming tasks could best be framed to motivate learners. Our empirical findings from these four studies, described here, contributed to the design of a set of programming "Learning Dimensions" (LDs). The LDs provide educators with insights to support key design decisions for the creation of engaging programming learning experiences. This paper describes the background to the identification of these LDs and how they could address the design and delivery of highly engaging programming learning tasks. A web application has been authored to support educators in the application of the LDs to their lesson design

    Recoding Product Design Education: Visual Coding for Human Machine Interfaces

    Get PDF
    This paper evaluates the impact of visual coding on the Industrial Design and 3D Design disciplines, in particular the role it plays in developing new products and services that would previously require interdisciplinary teams, or significant training beyond the scope of these disciplines into text-based coding and electrical engineering. The professional practice of designers working at the intersection of product design and coding is discussed, and design education evaluated in relation to the opportunities of electronics and visual coding. Quantitative research data is provided to support an argument that visual coding can enable designers to control their designs in new ways throughout the design and prototyping process

    ECCE Toolkit: Prototyping Sensor-Based Interaction

    Get PDF
    Building and exploring physical user interfaces requires high technical skills and hours of specialized work. The behavior of multiple devices with heterogeneous input/output channels and connectivity has to be programmed in a context where not only the software interface matters, but also the hardware components are critical (e.g., sensors and actuators). Prototyping physical interaction is hindered by the challenges of: (1) programming interactions among physical sensors/actuators and digital interfaces; (2) implementing functionality for different platforms in different programming languages; and (3) building custom electronic-incorporated objects. We present ECCE (Entities, Components, Couplings and Ecosystems), a toolkit for non-programmers that copes with these issues by abstracting from low-level implementations, thus lowering the complexity of prototyping small-scale, sensor-based physical interfaces to support the design process. A user evaluation provides insights and use cases of the kind of applications that can be developed with the toolkit.This research project has been partially funded by the EU FP7 project meSch (Grant agreement 600851) and national Spanish project CREAx (TIN2014-56534-R). We thank participants of the TEI 2014 studio and the DEI Laboratory staff and students at Universidad Carlos III de Madrid for their valuable feedback

    Impact Of A Visual Programming Experience On The Attitude Toward Programming Of Introductory Undergraduate Students

    Get PDF
    Traditionally, textual tools have been utilized to teach basic programming languages and paradigms. Research has shown that students tend to be visual learners. Using flowcharts, students can quickly understand the logic of their programs and visualize the flow of commands in the algorithm. Moreover, applying programming to physical systems through the use of a microcontroller to facilitate this type of learning can spark an interest in students to advance their programming knowledge to create novel applications. This study examined if freshmen college students\u27 attitudes towards programming changed after completing a graphical programming lesson. Various attributes about students\u27 attitudes were examined including confidence, interest, stereotypes, and their belief in the usefulness of acquiring programming skills. The study found that there were no statistically significant differences in attitudes either immediately following the session or after a period of four weeks

    Designing Engaging Learning Experiences in Programming

    Get PDF
    In this paper we describe work to investigate the creation of engaging programming learning experiences. Background research informed the design of four fieldwork studies to explore how programming tasks could be framed to motivate learners. Our empirical findings from these four field studies are summarized here, with a particular focus upon one – Whack a Mole – which compared the use of a physical interface with the use of a screen-based equivalent interface to obtain insights into what made for an engaging learning experience. Emotions reported by two sets of participant undergraduate students were analyzed, identifying the links between the emotions experienced during programming and their origin. Evidence was collected of the very positive emotions experienced by learners programming with a physical interface (Arduino) in comparison with a similar program developed using a screen-based equivalent interface. A follow-up study provided further evidence of the motivation of personalized design of programming tangible physical artefacts. Collating all the evidence led to the design of a set of ‘Learning Dimensions’ which may provide educators with insights to support key design decisions for the creation of engaging programming learning experiences

    Robi: a visual programming language for educational robotics

    Get PDF
    Dissertação de mestrado em Engenharia InformáticaThis document presents a Master’s thesis with researches focused on the teaching of computational thinking and present the development details of Robi, a block-based visual programming language that is able to program a robot built with an Arduino Uno. These researches had the purpose of evaluating if the development of Robi, a block-based program ming language that communicates with Arduino, would really be needed. The researches have proved that from the popular programming environments that exist in the market, that were investigated, none have the requirements that Robi requires. The platform will be used to teach computational think through a block-based programming environment and educational robotics. Robi development is motivated by the intersection between the costs of educational robotics kits and the existing block-based programming language, in which simplicity and intuitiveness could be improved, so children with learning difficulties or even younger children, in the context of educational robotics, can leverage the learning benefits that the Robi environment can bring. The educational robotics kit used with the block-based programming environment developed, is the one based on Arduino Uno, a microcontroller board that, together with electronic components, can be considered cheaper than some of the famous educational robotics kits. The main goal of this project is to provide a simpler and more intuitive visual programming language platform to program a robot based on Arduino Uno.Este documento apresenta uma tese de Mestrado com investigações voltadas ao ensino do pensamento computacional e apresenta os detalhes do desenvolvimento de Robi, uma linguagem de programação visual baseada em blocos, que é possível programar um robô construído com um Arduino Uno. Essas investigações tiveram o objetivo de avaliar se o desenvolvimento de Robi, uma linguagem de programação baseada em blocos que se comunica com o Arduino, seria realmente necessário. As investigações comprovaram que dos ambientes de programação populares existentes no mercado, que foram investigados, nenhum possui os requisitos que Robi exige. A plataforma será utilizada para ensinar pensamento computacional por meio de um ambiente de programação baseado em blocos e robótica educacional. O desenvolvimento de Robi é motivado pela combinação entre os custos dos kits de robótica educacional existentes no mercado e linguagens de programação baseada em blocos existentes, em que simplicidade e intuitividade poderiam ser aprimoradas, para assim, crianças com dificuldades de aprendizagem ou até crianças mais novas, no contexto da robótica educacional, poderiam fazer proveito dos benefícios da aprendizagem que o ambiente Robi pode trazer. O kit de robótica educacional utilizado com o ambiente de programação baseado em blocos desenvolvido é um kit com o Arduino Uno, uma placa de microcontrolador que, junto com componentes eletrônicos, pode ser considerada mais barata que alguns dos famosos kits de robótica educacional. O objetivo principal deste projeto é fornecer uma plataforma de linguagem de programação visual mais simples e intuitiva para programar um robô baseado em Arduino Uno
    corecore