999 research outputs found
Masters Students' Experiences of Learning to Program: An Empirical Model
The investigation reported here examined how Masters students experience learning to program. The phenomenographic research approach adopted permitted the analysis of 1) how students go about learning to program, that is the âActâ of learning to program, and 2) what students understand by âprogrammingâ, that is the âObjectâ of learning to program. Analysis of data from twenty-three participants identified five different experiences of the Act of learning to program and five different experiences of the Object of learning to program. Together the findings comprise an empirical model of the learning to program experience amongst the participating students. We suggest how our findings are significant for programming teachers and offer tools to explore studentsâ views
em Where do I begin? A problem solving approach to teaching functional programming
This paper introduces a problem solving method for teaching functional programming, based on Polya's `How To Solve It', an introductory investigation of mathematical method. We first present the language independent version, and then show in particular how it applies to the development of programs in Haskell. The method is illustrated by a sequence of examples and a larger case study
Visual and Textual Programming Languages: A Systematic Review of the Literature
It is well documented, and has been the topic of much research, that Computer
Science courses tend to have higher than average drop out rates at third level.
This is a problem that needs to be addressed with urgency but also caution. The
required number of Computer Science graduates is growing every year but the
number of graduates is not meeting this demand and one way that this problem
can be alleviated is to encourage students at an early age towards studying
Computer Science courses.
This paper presents a systematic literature review on the role of visual and
textual programming languages when learning to program, particularly as a first
programming language. The approach is systematic, in that a structured search
of electronic resources has been conducted, and the results are presented and
quantitatively analysed. This study will give insight into whether or not the
current approaches to teaching young learners programming are viable, and
examines what we can do to increase the interest and retention of these
students as they progress through their education.Comment: 18 pages (including 2 bibliography pages), 3 figure
Ways of experiencing the act of learning to program: a phenomenographic study of introductory programming students at university
The research reported here investigates variation in first year university studentsâ early experiences of learning to program, with a particular focus on revealing differences in how they go about learning to program. A phenomenographic research approach was used to reveal variation in how the act of learning to program may be constituted amongst first year university students. Semi-structured interviews were conducted with students who had either recently completed, or were enrolled in, a university-level introductory programming subject. Analysis revealed that students might go about learning to program in any of five different ways; by:
(1) Following â where learning to program is experienced as âgetting throughâ the unit;
(2) Coding â where learning to program is experienced as learning to code;
(3) Understanding and integrating â where learning to program is experienced as learning to write a program through understanding and integrating concepts;
(4) Problem solving â where learning to program is experienced as learning to do what it takes to solve a problem, and;
(5) Participating or enculturation â where learning to program is experienced as discovering what it means to become a programmer.
The relationships between these different approaches to learning are represented diagrammatically. The mapping of the variation constitutes a framework within which one aspect of the teaching and learning of introductory programming, how students go about it, may be understood. Implications for teaching and learning in introductory university curricula are discussed
Programming language trends : an empirical study
Predicting the evolution of software engineering technology trends is a dubious proposition. The recent evolution of software technology is a prime example; it is fast paced and affected by many factors, which are themselves driven by a wide range of sources. This dissertation is part of a long term project intended to analyze software engineering technology trends and how they evolve. Basically, the following questions will be answered: How to watch, predict, adapt to, and affect software engineering trends?
In this dissertation, one field of software engineering, programming languages, will be discussed. After reviewing the history of a group of programming languages, it shows that two kinds of factors, intrinsic factors and extrinsic factors, could affect the evolution of a programming language. Intrinsic factors are the factors that can be used to describe the general desigu criteria of programming languages. Extrinsic factors are the factors that are not directly related to the general attributes of programming languages, but still can affect their evolution. In order to describe the relationship of these factors and how they affect programming language trends, these factors need to be quantified. A score has been assigued to each factor for every programming language. By collecting historical data, a data warehouse has been established, which stores the value of each factor for every programming language. The programming language trends are described and evaluated by using these data.
Empirical research attempts to capture observed behaviors by empirical laws. In this dissertation, statistical methods are used to describe historical programming language trends and predict the evolution of the future trends. Several statistics models are constructed to describe the relationships among these factors. Canonical correlation is used to do the factor analysis. Multivariate multiple regression method has been used to construct the statistics models for programming language trends. After statistics models are constructed to describe the historical programming language trends, they are extended to do tentative prediction for future trends. The models are validated by comparing the predictive data and the actual data
Language history : A tale of two countries
This paper looks at the relationships between industry computer languages and those taught in universities. By considering the differences between two of the first countries to embrace programmable computers (USA and Australia) we find patterns that seem culturally independent. History shows a set of recurring problems for academics in choosing languages. This study shows that academics should be informed by history when making those decisions.2nd IFIP Conference on the History of Computing and EducationRed de Universidades con Carreras en InformĂĄtica (RedUNCI
Using Visualization as an Easy Way to Learn Programming Logic
In the Information Technology (IT) education, from certificate level in colleges or educational institutions until degree level in universities, programming
courses are essential to build studentsâ logical thinking and to train their programming skills in creating different types of software. Unfortunately,programming courses often consist of higher failure rates than other computer science courses. In this research, problem in studying programming courses will be analysed through literature review. To improve and to aid the understanding of the essence of computer programming, an easy way to learn programming logic will be formulated focusing on providing visualization to aid the learning. This approach will be applied on a courseware prototype, presented and later evaluated by first year diploma computer science students. Brief on the results obtained
Introductory programming: a systematic literature review
As computing becomes a mainstream discipline embedded in the school curriculum and acts as an enabler for an increasing range of academic disciplines in higher education, the literature on introductory programming is growing. Although there have been several reviews that focus on specific aspects of introductory programming, there has been no broad overview of the literature exploring recent trends across the breadth of introductory programming.
This paper is the report of an ITiCSE working group that conducted a systematic review in order to gain an overview of the introductory programming literature. Partitioning the literature into papers addressing the student, teaching, the curriculum, and assessment, we explore trends, highlight advances in knowledge over the past 15 years, and indicate possible directions for future research
Recommended from our members
Pervasiveness of a Programming Paradigm: Questions Concerning an Object-oriented Approach
This paper outlines the way in which a radical syllabus is being designed for the new introductory computing course being offered by the Open University from 1997. It describes how a decision to teach object-oriented programming has resulted in the associated concepts and paradigm pervading the syllabus. The result is a novel ped- agogy by which students take considerable time to begin conventional programming. The context for this innovatory approach is a very large student population (3,500 per year), a long lead time for developing courses, and a need to remain current six or seven years after conception. The background and the emerging syllabus are both summarized and questions concerning the teaching of the object-oriented approach are raised
- âŠ