TRACK 9. A world of digital competences: mobile apps, e-citizenship and computacional systems as learning tools
Authors: José Figueiredo, Natália Gomes and Francisco José Garcia-Peñalvo.
https://youtu.be/SaWpTbBH0R4
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
ne-Course for Learning Programming
1. ne-Course for Learning Programming
José Figueiredo
Research Unit for Inland Development
Polytechnic of Guarda, Portugal
jfig@ipg.pt
Natália Gomes
Research Unit for Inland Development
Polytechnic of Guarda, Portugal
ngomes@ipg.pt
Francisco José García-Peñalvo
Computer Science Department Research Institute
for Educational Sciences GRIAL research group
University of Salamanca, Spain
fgarcia@usal.es
Track 9. A world of digital competences: mobile apps,
e-citizenship and computational systems as learning tools
2. Why is programming so difficult?
• The abstract concepts that are involved in programming
• The capacities that are required to solve problems
• The mental skill to the decomposition of the problems
• Programming is a new subject for many of the students who take
programming courses
• This is a difficult time for many students
T. Jenkins, “On the Difficulty of Learning to Program,” Language (Baltim)., vol. 4, pp. 53–58, 2002.
3. Why is programming so difficult?
• The students need to know the syntax, the semantics and the
structure, of a unusual language
• Programming requires a significant amount of effort in several skill
areas for often a very modest return
• Reputation: Programming courses acquire the reputation of being
difficult
• Image: there is the public image of a "programmer". This is of a
socially inadequate "nerd", spending all hours producing unintelligible
code, fuelled by pizza and caffeine
T. Jenkins, “On the Difficulty of Learning to Program,” Language (Baltim)., vol. 4, pp. 53–58, 2002.
4. Solving problems in programming
In 2014 some authors have presented a systematic review of articles
describing approaches for teaching introductory programming and
their influence on success.
In resume, some of the best practices to teaching programing are:
• Collaboration
• Contextualization
• CS0
• Change in the grading schema
• Group work
• Peer support
• Support
5. Our proposal
No Electronic (ne) Course for learning programming.
• Follow and Give instruction
• Map Design
• Paper Folding and Origami
• Memory Transfer Language
• Parson Problems
6. Follow/Give instruction
The use of this kind of exercises has as purpose to increase the
development of students’ cognitive reasoning abilities and spatial
visualization.
12. Memory Transfer Language (MTL)
- Class Experiment
The experiment was carried out to test the comprehension that
students may have between variable and computer memory
13. Memory Transfer Language (MTL)
- Class Experiment
First examination
• Initial concepts: computer programs and programming concepts such as
variable, basic data types and computer memory representation
16. Memory Transfer Language (MTL)
- Class Experiment
Second examination
• After clarification of the doubts it was proposed to the students to repeat the
exercises
The results increased from 20% to 81% of correct answers.
17. Parson Problems
• Parson’s problems are assignments for learning programming where
the student has to select, order, and indent code fragments.
20. Conclusion
The objective of this study was to test the impact of different activities
when used as a learning programming tool without the intervention of
any electronic component.
Where students explore with pleasure, without fear of making mistakes and
where teacher-student relationship and confidence can be improved and
enhanced.
21. Conclusion
We believe that it’s still important to see the face and expressions of students in
solve programming problems. We want to feel the atmosphere and excitement
in problem solving
“Programming should be taught by programming teachers
and not by programmers"
Good morning, I’m José FigueiredoI go to present our work, with the title ne-Course for Learning Programming
I teach programming, over 25 years.
I feel this problem is a constant. By the other hand, I’m gland that problem isn’t particular from our school.
This phenomenon is universal.
Since the appearance of the first programming languages this problem is been studied.
There are numerous studies with the main reflection of the difficulties of solving programming problems.
This is a difficult time for many students – a time of transition as they adapt to life and study at university.
They may well be living away from home for the first time.
Reputation and Image: Programming courses acquire the reputation of being difficult.
And This view is passed to the new students by old students, and is exaggerated in the telling.
At the same time, there is the public image of a "programmer".
This is of a socially inadequate "nerd", spending all hours producing unintelligible code, fuelled by pizza and caffeine.
If students approach a course with an expectation that it will be difficult, and with a negative image, it is very hard to imagine their being especially motivated. And students who are not motivated will not succeed.
Some authors have presented a systematic review of articles for teaching programming and their influence on success,
and suggest the best practices to learning programing are:
collaboration: activities that encourage student collaboration either in classrooms or labs.
contextualization: activities with a specific context
CS0: the creation of a preliminary course that was to be taken before the introductory programming course.
change in the grading schema: increase the amount of points rewarded from programming activities, while reducing the weight of the course exam.
group work: activities with increased group work commitment such as team-based learning and cooperative learning.
peer support: support by peers in form of pairs, groups, peer mentors or tutors.
support: an umbrella term for all support activities, e.g. increased teacher hours, additional support channels, etc
-----------------------------
What should change?
• Programming should never be taught before the second year of any course;
• The language used should be chosen for pedagogic suitability and not because it is popular in industry;
• Programming should be taught by those who can teach programming and not those who can program.
• Programming courses should be designed to be flexible to allow different students to learn in different ways;
• There should be no summative (continuous) assessment to ease pressure on students.
• Departments should acknowledge that programming is difficult and supply adequate support to students.
Our proposal is given a set of exercises, no electronic, with the intent to help the students in their problems.
After some reading about this subject, we propose a pré-programming course with a set of exercises about
With this kind of exercises we propose to improve the capacity of spatial visualization abilities.
Here, we tell a one student to describe for the class the image. The class try to draw.
Here, we tell for the class draw a map for a known location.
And we analyse the level of detail, like: the use of reference of known buildings, and others things...
We use too, the asking direction and the students answer with words description.
BENEFITS
This art is very known and there's a lot benefits in use this pratique
The practice origami active the whole brain.
we present here a list of some of the benefits of using origami.I highlight some, like
Some examples of origami exercices proposes
To practice Paper Folding, exercises with Punched Holes
we propose this 3 very simples exercices, with simple generic instrutions
This is results.
What hapenned?
The Students represents severals values on same place of memory
After clarification of the doubts it was proposed to the students to repeat the exercises.
Parson’s problems are assignments for learning programming where the student has to select, order, and indent code fragments.
we have created a device to help manipulation.
This represents the main memory.
And the students put the in order the instructions.