300,870 research outputs found
TEACHING CAD PROGRAMMING TO ARCHITECTURE STUDENTS
[Ensino da Programação CAD para Estudantes de Arquitetura]
O objetivo deste trabalho Ă© discutir a relevĂąncia da inclusĂŁo de uma disciplina de programação de computadores no currĂculo de Graduação em Arquitetura e urbanismo. Ele começa explicando como a programação tem sido aplicada em outros contextos educacionais com grande sucesso pedagĂłgico, e descrevendo os princĂpios de Papert. Em seguida, Ă© apresentado um resumo da evolução do CAD e trĂȘs exemplos histĂłricos de aplicaçÔes da programação no ensino de arquitetura sĂŁo apresentados, seguidos por um exemplo contemporĂąneo de grande relevĂąncia. Finalmente, Ă© proposta uma metodologia para o ensino de programação para arquitetos, com o objetivo de melhorar a qualidade dos projetos, tornando os conceitos arquitetĂŽnicos mais explĂcitos. Essa metodologia Ă© baseada na experiĂȘncia da autora de ensino de programação para alunos do curso de graduação em arquitetura na Universidade Estadual de Campinas. O trabalho termina com uma discussĂŁo sobre o papel da programação nos dias de hoje, quando a maioria dos programas de CAD sĂŁo amigĂĄveis. Como conclusĂŁo, sugere-se que a introdução da programação no currĂculo de CAD, dentro de um arcabouço teĂłrico apropriado, pode vir a transformar o conceito de ensino da arquitetura.
Palavras-chave: Computer programming; computer-aided design; architectural education.
ABSTRACT
The objective of this paper is to discuss the relevance of including the discipline of computer programming in the architectural curriculum. To do so I start by explaining how computer programming has been applied in other educational contexts with pedagogical success, describing Seymour Papert's principles. After that, I summarize the historical development of CAD and provide three historical examples of educational applications of computer programming in architecture, followed by a contemporary case that I find of particular relevance. Next, I propose a methodology for teaching programming for architects that aims at improving the quality of designs by making their concepts more explicit. This methodology is based on my own experience teaching computer programming for architecture students at undergraduate and graduate levels at the State University of Campinas, Brazil. The paper ends with a discussion about the role of programming nowadays, when most CAD software are user-friendly and do not require any knowledge of programming for improving performance. I conclude that the introduction of programming in the CAD curriculum within a proper conceptual framework may transform the concept of architectural education.
Key-words: Computer programming; computer-aided design; architectural education.The objective of this paper is to discuss the relevance of including the discipline of computer programming in the architectural curriculum. To do so I start by explaining how computer programming has been applied in other educational contexts with pedagogical success, describing Seymour Papert's principles. After that, I summarize the historical development of CAD and provide three historical examples of educational applications of computer programming in architecture, followed by a contemporary case that I find of particular relevance. Next, I propose a methodology for teaching programming for architects that aims at improving the quality of designs by making their concepts more explicit. This methodology is based on my own experience teaching computer programming for architecture students at undergraduate and graduate levels at the State University of Campinas, Brazil. The paper ends with a discussion about the role of programming nowadays, when most CAD software are user-friendly and do not require any knowledge of programming for improving performance. I conclude that the introduction of programming in the CAD curriculum within a proper conceptual framework may transform the concept of architectural education.
Key-words: Computer programming; computer-aided design; architectural education
Recommended from our members
Musical expertise as a scaffold for novice programming
textThis study addresses the role of musical expertise on novice computer programming. Engaging novices with computer programming is one of the great challenges of computer science education. Although there is extensive research focusing on constructionist approaches to programming education and creative entry points to programming, little research addresses the topic of how musical expertise informs an unstructured programming activity. To answer this question I focused on the role of participant talk during programming, patterns in participant programming, and evidence of computational thinking in participantsâ final Scratch projects.
For this interpretivist study, I worked with a dozen novice programmers from a variety of musical backgrounds: classical musicians, jazz musicians, composers, and non- musicians. Each participant worked on a free-form musical project in the Scratch programming environment. I collected data including participant talk, screen recordings of participant programming, and participantsâ final Scratch projects.
Overall, musical participants more readily took to the numeracy involved in programming music in Scratch. Also, musical participants were able to use musical concepts and techniques as jumping-off points for programming challenges. Considering my results by participant group, composers stood out in a number of ways: working the
longest, testing their programs the most often, adding Scratch objects the slowest, v
removing the most Scratch objects, creating projects of the greatest nested depth, and unanimous use of operators and random numbers. Non-musicians, on the other hand, worked for the shortest amount of time, added the fewest Scratch objects, and created projects of the lowest nested depth.
In addition to adding to the body of research around chunking and tinkering, this study reinforces the importance of context and comfort in an introduction to computer programming. Composition may be an especially rich area to leverage, given the design- like programming activity of the composers here. Future research projects could resemble this one while focusing on younger learners, explicit musical concepts like those invoked by participants, or alternative performing arts framings such as theater or dance.Curriculum and Instructio
The Impact of Collaboration, Problem Solving, and Creativity on Computer Programming Education for Middle School Girls
Despite high scores and abilities, girls lose interest in science and math throughout middle school. According to the Bureau of Labor Statistics, jobs in the computer science research field will grow 19% by 2026; however, only 18% of the bachelorâs degrees in computer science are earned by women in the United States (ComputerScience.org, 2021). New technology and inventions are being created without the benefit of more diverse perspectives and input from females. There is a need to engage girls and maintain their interest throughout middle school and beyond. Additional research needs to be conducted about the impact and best practices used during out-of-school time programs to encourage and motivate girls to stay engaged in STEM, including computer programming (Koch, 2014).
This study investigated the relationship between middle school girlsâ interest in computer programming and the opportunities to collaborate, solve problems, and use their creativity while participating in computer programming activities led by female role models during the 4-H Girls Tech Challenge, an informal education program. Research questions are the following: 1) In what ways did the 4-H Girls Tech Challenge experience, which included components of problem solving, collaboration, creativity and female role models, affect the attitudes of middle school girls towards computer programming? 2) To what extent did the 4-H Girls Tech Challenge experience affect the attitude of middle school girls towards potentially pursuing careers related to computer science and technology?
Evidenced by other studies, experiences in which collaboration, problem solving, and creativity are present have been shown to increase knowledge about computer programming and engagement in STEM (Cooper & Heaverlo, 2013; Wu-Rorrer, 2019; Hayden et al., 2011). A qualitative study employing interviews with previous participants was utilized to determine how the components of collaboration, problem solving, and creativity of the 4-H Girls Tech Challenge affected the attitudes of middle school girls towards computer programming and careers in computer science. Educators will benefit from learning more about best practices that engage, motivate, and retain more girls in STEM. An increase in the number of women in the STEM workforce will maximize innovation, creativity, and competitiveness (Hill et al., 2010)
Database Systems - Present and Future
The database systems have nowadays an increasingly important role in the knowledge-based society, in which computers have penetrated all fields of activity and the Internet tends to develop worldwide. In the current informatics context, the development of the applications with databases is the work of the specialists. Using databases, reach a database from various applications, and also some of related concepts, have become accessible to all categories of IT users. This paper aims to summarize the curricular area regarding the fundamental database systems issues, which are necessary in order to train specialists in economic informatics higher education. The database systems integrate and interfere with several informatics technologies and therefore are more difficult to understand and use. Thus, students should know already a set of minimum, mandatory concepts and their practical implementation: computer systems, programming techniques, programming languages, data structures. The article also presents the actual trends in the evolution of the database systems, in the context of economic informatics.database systems - DBS, database management systems â DBMS, database â DB, programming languages, data models, database design, relational database, object-oriented systems, distributed systems, advanced database systems
Rejection of learning how to code and the problem of ânon-useâ in the history of computer cultures
This paper investigates how a host of social actors, such as computer science experts and educators, discursively constructed both positively valued âuser-programmersâ and negatively valued ânon-programmers,â that is computer users who reject the practice of writing programs on their computers. I argue that the central theme of such a strategy was user agency and the question of having control over the technology that one is using in everyday life. Firstly, I investigate two key themes of the discursive construction of non-programmers in the era of the microcomputer of the 1980s, the discourses towards economies and social development related to computer literacy programs, and next, the key role of programming as a developmental tool for childrenâs education. Later, I compare that historical era with the contemporary âlearn to codeâ movement and investigate how it outlines the disadvantages of the neglect of learning programming
Pirate plunder: game-based computational thinking using scratch blocks
Policy makers worldwide argue that children should be taught how technology works, and that the âcomputational thinkingâ skills developed through programming are useful in a wider context. This is causing an increased focus on computer science in primary and secondary education.
Block-based programming tools, like Scratch, have become ubiquitous in primary education (5 to 11-years-old) throughout the UK. However, Scratch users often struggle to detect and correct âcode smellsâ (bad programming practices) such as duplicated blocks and large scripts, which can lead to programs that are difficult to understand. These âsmellsâ are caused by a lack of abstraction and decomposition in programs; skills that play a key role in computational thinking. In Scratch, repeats (loops), custom blocks (procedures) and clones (instances) can be used to correct these smells. Yet, custom blocks and clones are rarely taught to children under 11-years-old.
We describe the design of a novel educational block-based programming game, Pirate Plunder, which aims to teach these skills to children aged 9-11. Players use Scratch blocks to navigate around a grid, collect items and interact with obstacles. Blocks are explained in âtutorialsâ; the player then completes a series of âchallengesâ before attempting the next tutorial. A set of Scratch blocks, including repeats, custom blocks and clones, are introduced in a linear difficulty progression. There are two versions of Pirate Plunder; one that uses a debugging-first approach, where the player is given a program that is incomplete or incorrect, and one where each level begins with an empty program.
The game design has been developed through iterative playtesting. The observations made during this process have influenced key design decisions such as Scratch integration, difficulty progression and reward system. In future, we will evaluate Pirate Plunder against a traditional Scratch curriculum and compare the debugging-first and non-debugging versions in a series of studies
Contests Hosting Service as a tool to teach programming
Computer science would not exist without the concept of algorithm. Therefore design of algorithms plays an important role in education while implementation is usually considered to be straightforward. Increasing variety of programming languages, wealth of possible constructions, programming environments and tools makes programming difficult for the beginners.Apart from the idea of problem solution, it is important to teach programming skills. Size of classes of 10-20 pupils and a limited number of lessons and their short time are the major problem. The teacher has to check solution of every pupil, compile it and run tests. This is definitely a time-consuming process which makes teaching difficult. In this paper the authors present the use of problem solutions validation systems during classes. With the help of such a system called Zawody WEB, the authors teach algorithms and programming for the secondary school students
Defining requirements for a gamified programming exercises format
Computer programming is a complex domain both to teach and learn. This incited endeavors to find methods that could mitigateat least some of the existing barriers. In the last years, automatic assessment has been playing an important role in reducing theburden of teachers in the assessment of studentsâ attempts to solve programming exercises and fostering the autonomy of studentsby allowing them to practice in any place and at any time with timely feedback.Even more recent development is the use of gamification in computer programming education in order to raise the enjoyment andengagement of students. Despite its rising spread, until now, there is not a programming exercise specification format addressingthe needs of gamification, such as the definition of challenges, the underlying storyline, including the links to other exercises, orthe rewards for solving challenges in form of points, badges or virtual items. Such a data format would allow the exchange ofready-to-use programming exercises along with the gamification-related data among different educational institutions and courses,providing instructors a possibility to make use of gamification in their courses without having to invest their own time in defininggamification rules themselves.In this paper, we analyze a set of concepts related to programming gamification developed in our previous work to identify therequirements for the specification of a gamified exercise format.info:eu-repo/semantics/publishedVersio
The Stained Glass of Knowledge: On Understanding Novice Mental Models of Computing
Learning to program can be a novel experience. The rigidity of programming can be at odds with beginning programmer\u27s existing perceptions, and the concepts can feel entirely unfamiliar. These observations motivated this research, which explores two major questions: What factors influence how novices learn programming? and How can analogy by more appropriately leveraged in programming education?
This dissertation investigates the factors influencing novice programming through multiple methods. The CS1 classroom is observed as a whole system , with consideration to the factors present in it that can influence the learning process. Learning\u27s cognitive processes are elaborated to ground exploration into specifically learning programming. This includes extensive literature review spanning multiple disciplines. This allows positioning to guide the investigation. The literature survey also contributes to greater understanding of learning cognition within computing education research through its disciplinary depth.
The focus on analogy with the second question is motivated through the factors observed in the first question. Analogy\u27s role in cognition and in education is observed, and the analogical inclinations of technology as a field are showcased. Stigma surrounds the use of analogy in computer science education in spite of these indications. This motivated investigation on how the use of analogy could be better addressed in programming education in order to utilize its value. This research presents a tool for the design of well-formed analogy in programming to answer this question. It also investigates additional forms analogy can take in the classroom setting, proposing relevant cultural forms such as memes can be analogical vehicles that promote learner engagement.
This research presents a strong case for the value of analogy use in the CS1 classroom, and provides a tool to facilitate the design of well-formed analogies. In identifying ways to better leverage analogy in the programming classroom, presenting this research will hopefully contribute to dispelling analogy\u27s bad reputation in computing education.
By exploring factors that contribute to the learning process in CS1, this research frames education design as experience design. This motivates methods and considerations from user experience design, and investigates aspects of the whole system that can promote or deter a learner\u27s experience.
This dissertation presents findings on understanding the learner\u27s experience in the programming classroom, and how analogy can be used to benefit their learning process
- âŠ