69,162 research outputs found
Contemporary developments in teaching and learning introductory programming: Towards a research proposal
The teaching and learning of introductory programming in tertiary institutions is problematic. Failure rates are high and the inability of students to complete small programming tasks at the completion of introductory units is not unusual. The literature on teaching programming contains many examples of changes in teaching strategies and curricula that have been implemented in an effort to reduce failure rates. This paper analyses contemporary research into the area, and summarises developments in the teaching of introductory programming. It also focuses on areas for future research which will potentially lead to improvements in both the teaching and learning of introductory programming. A graphical representation of the issues from the literature that are covered in the document is provided in the introduction
Distributed-Pair Programming can work well and is not just Distributed Pair-Programming
Background: Distributed Pair Programming can be performed via screensharing
or via a distributed IDE. The latter offers the freedom of concurrent editing
(which may be helpful or damaging) and has even more awareness deficits than
screen sharing. Objective: Characterize how competent distributed pair
programmers may handle this additional freedom and these additional awareness
deficits and characterize the impacts on the pair programming process. Method:
A revelatory case study, based on direct observation of a single, highly
competent distributed pair of industrial software developers during a 3-day
collaboration. We use recordings of these sessions and conceptualize the
phenomena seen. Results: 1. Skilled pairs may bridge the awareness deficits
without visible obstruction of the overall process. 2. Skilled pairs may use
the additional editing freedom in a useful limited fashion, resulting in
potentially better fluency of the process than local pair programming.
Conclusion: When applied skillfully in an appropriate context, distributed-pair
programming can (not will!) work at least as well as local pair programming
App creation in schools for different curricula subjects - lesson learned
The next generation of jobs will be characterized by an increased demand for
people with computational and problem solving skills. In Austria, computer
science topics are underrepresented in school curricula hence teaching time for
these topics is limited. From primary through secondary school, only a few
opportunities exist for young students to explore programming. Furthermore,
today's teachers are rarely trained in computer science, which impairs their
potential to motivate students in these courses. Within the "No One Left
Behind" (NOLB) project, teachers were supported to guide and assist their
students in their learning processes by constructing ideas through game making.
Thus, students created games that referred to different subject areas by using
the programming tool Pocket Code, an app developed at Graz University of
Technology (TU-Graz). This tool helps students to take control of their own
education, becoming more engaged, interested, and empowered as a result. To
ensure an optimal integration of the app in diverse subjects the different
backgrounds (technical and non-technical) of teachers must be considered as
well. First, teachers were supported to use Pocket Code in the different
subjects in school within the feasibility study of the project. Observed
challenges and difficulties using the app have been gathered. Second, we
conducted interviews with teachers and students to underpin our onsite
observations. As a result, it was possible to validate Pocket Codes' potential
to be used in a diverse range of subjects. Third, we focused especially on
those teachers who were not technically trained to provide them with a
framework for Pocket Code units, e.g., with the help of structured lesson plans
and predefined templates.Comment: 10 pages, 5 tables EduLearn 201
Agile values and their implementation in practice
Today agile approaches are often used for the
development of digital products. Since their development in
the 90s, Agile Methodologies, such as Scrum and Extreme
Programming, have evolved. Team collaboration is strongly
influenced by the values and principles of the Agile Manifesto. The
values and principles described in the Agile Manifesto support
the optimization of the development process. In this article, the
current operation is analyzed in Agile Product Development
Processes. Both, the cooperation in the project team and the
understanding of the roles and tasks will be analyzed. The results
are set in relation to the best practices of Agile Methodologies. A
quantitative questionnaire related to best practices in Agile Product
Development was developed. The study was carried out with
175 interdisciplinary participants from the IT industry. For the
evaluation of the results, 93 participants were included who have
expertise in the subject area Agile Methodologies. On one hand,
it is shown that the collaborative development of product-related
ideas brings benefits. On the other hand, it is investigated which
effect a good understanding of the product has on decisions made
during the implementation. Furthermore, the skillset of product
managers, the use of pair programming, and the advantages of
cross-functional teams are analyzed.Ministerio de Ciencia e Innovación TIN2013-46928-C3-3-
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
- …