Computer programming is the heart of computing education. It is a fundamental skill that all computing students are required to learn. However, programming courses are generally considered among the most difficult course and often have the highest dropout rates. The main concern is what concerns of computing faculty is to improve students’ motivation in getting involved in meaningful programming activities. This requires special skills to teach programming. A teacher training workshop was arranged at Directorate of Staff Development for newly inducted Computer Science teachers. The workshop covers various approaches proposed in literature for teaching computer programming. Some useful guidelines have also been suggested. These are the slides of this workshop.
Text book, Uses of computer science text book, Qualities of Good computer science text book, Use of text book in and outside the classroom, Criteria for evaluation of computer science text book, Values of computer science library, Digital library, Advantages of digital library,
Text book, Uses of computer science text book, Qualities of Good computer science text book, Use of text book in and outside the classroom, Criteria for evaluation of computer science text book, Values of computer science library, Digital library, Advantages of digital library,
Integrating an intelligent tutoring system into a virtual worldParvati Dev
The project goal was to provide effective training to medical professionals on the SALT Triage Protocol, and to improve communication between medical professionals and military during disaster situations.
Intelligent tutoring systems (ITS) for online learningBrandon Muramatsu
Kurt VanLehn's presentation at Conversations on Quality: A Symposium on K-12 Online Learning hosted by MIT and the Bill and Melinda Gates Foundation, January 24-25, 2012, Cambridge, MA.
Students’ Perception about Fundamental Programming Course Teaching and Learningrahulmonikasharma
Programming learning has unique characteristics as it is a subject that requires skill and higher order thinking. Students come to class with a perception about the subject mostly obtained from their seniors including fear or perceived difficulty. Senior students have a perception about programming learning that was supported by their experience during the subject learning. Students’ views (+ / -) about the course could affect their performance. A qualitative survey was conducted with 93 third year students to obtain their views about the students’ point of views while learning programming and the recommendation for modifying the course. Obstacles identified by students could be tackled with the aid of technology enhanced learning (TEL) including tutoring system. This survey is done as a preliminary step in developing and incorporating technical solution to students’ problems. The findings were: Mostly, students are satisfied with the amount of time and effort they dedicated to the subject. While some mentioned that they would practice coding more and perform some projects beyond the course level. Majority of the students pointed out that they got useful advice from seniors about the subject learning. Less feedback was discouraging to students. About their suggested modification about the way the course setup, their overall responses approved the course design. There were minor comments about the proportions of the theoretical to practical components and the suitable amount of assignments.
This presentation provides a brief introduction to Instructional Design and touches upon; History of Instructional Design, some popular Learning theories, and Instructional Design Models among some additional, related useful information.
Need analysis for the development of a microcontroller instructional module p...journalBEEI
In the era of the IR 4.0, the use of information technology among school students is widespread but students are not proficient in computer programming. To compete in the digital world, students need to be exposed to computer programming in order to produce computer programming experts. Integrating computer programming into the school curriculum can improve students literacy of computer programming but adequate computer programming skill among teachers are quite limited. Therefore, the development of microcontroller instructional teaching module which could address this problem is needed. This development aims to develop the module using design and developmental research (DDR) approach. Need Analysis phase in DDR is discussed in this article. The phase consists of identifying the level of knowledge, attitudes and practices of teachers about microcontroller and to obtain the views and opinions of the teachers on the developmental needs of microcontroller teaching modules. The type of microcontroller and the programming language to be used in the microcontroller module also identified.The results of this study are important to ensure that the design and development of an instructional module for microcontroller education are implemented and have a positive impact on increasing the programming literacy level among secondary school children
The I in PRIMM - Code Comprehension and QuestioningSue Sentance
Slides from a talk given at the CAS London conference on 29th February 2020. Discusses the teaching of computer programming using PRIMM and in particular, the Investigate stage. Looks at the Block Model and how we can explore students' understanding by asking a range of different questions.
SULTHAN's - C Programming Language notesSULTHAN BASHA
This book contains programming techniques, learning objectives of C language. And it will help for data structures concepts also. This is very useful to the beginners.
Integrating an intelligent tutoring system into a virtual worldParvati Dev
The project goal was to provide effective training to medical professionals on the SALT Triage Protocol, and to improve communication between medical professionals and military during disaster situations.
Intelligent tutoring systems (ITS) for online learningBrandon Muramatsu
Kurt VanLehn's presentation at Conversations on Quality: A Symposium on K-12 Online Learning hosted by MIT and the Bill and Melinda Gates Foundation, January 24-25, 2012, Cambridge, MA.
Students’ Perception about Fundamental Programming Course Teaching and Learningrahulmonikasharma
Programming learning has unique characteristics as it is a subject that requires skill and higher order thinking. Students come to class with a perception about the subject mostly obtained from their seniors including fear or perceived difficulty. Senior students have a perception about programming learning that was supported by their experience during the subject learning. Students’ views (+ / -) about the course could affect their performance. A qualitative survey was conducted with 93 third year students to obtain their views about the students’ point of views while learning programming and the recommendation for modifying the course. Obstacles identified by students could be tackled with the aid of technology enhanced learning (TEL) including tutoring system. This survey is done as a preliminary step in developing and incorporating technical solution to students’ problems. The findings were: Mostly, students are satisfied with the amount of time and effort they dedicated to the subject. While some mentioned that they would practice coding more and perform some projects beyond the course level. Majority of the students pointed out that they got useful advice from seniors about the subject learning. Less feedback was discouraging to students. About their suggested modification about the way the course setup, their overall responses approved the course design. There were minor comments about the proportions of the theoretical to practical components and the suitable amount of assignments.
This presentation provides a brief introduction to Instructional Design and touches upon; History of Instructional Design, some popular Learning theories, and Instructional Design Models among some additional, related useful information.
Need analysis for the development of a microcontroller instructional module p...journalBEEI
In the era of the IR 4.0, the use of information technology among school students is widespread but students are not proficient in computer programming. To compete in the digital world, students need to be exposed to computer programming in order to produce computer programming experts. Integrating computer programming into the school curriculum can improve students literacy of computer programming but adequate computer programming skill among teachers are quite limited. Therefore, the development of microcontroller instructional teaching module which could address this problem is needed. This development aims to develop the module using design and developmental research (DDR) approach. Need Analysis phase in DDR is discussed in this article. The phase consists of identifying the level of knowledge, attitudes and practices of teachers about microcontroller and to obtain the views and opinions of the teachers on the developmental needs of microcontroller teaching modules. The type of microcontroller and the programming language to be used in the microcontroller module also identified.The results of this study are important to ensure that the design and development of an instructional module for microcontroller education are implemented and have a positive impact on increasing the programming literacy level among secondary school children
The I in PRIMM - Code Comprehension and QuestioningSue Sentance
Slides from a talk given at the CAS London conference on 29th February 2020. Discusses the teaching of computer programming using PRIMM and in particular, the Investigate stage. Looks at the Block Model and how we can explore students' understanding by asking a range of different questions.
SULTHAN's - C Programming Language notesSULTHAN BASHA
This book contains programming techniques, learning objectives of C language. And it will help for data structures concepts also. This is very useful to the beginners.
Determining The Barriers Faced By Novice ProgrammersWaqas Tariq
Most of the novice programmers find glitches at various phases while trying to complete a program in their Computer Science programming course. These phases can be while constructing the code, finding errors in the code at the time of compilation of the program, debugging these errors while executing the program. Novice programmers are unable to understand some of the concepts in programming. Computer Science programming course instructors are experiencing difficulty in finding these barriers faced by the students. These barriers are forcing students to drop programming course from their degree plan and becoming a concern to the professors teaching programming course. In this research ActivePresenter software is used. This software recorded the full motion video with crystal clear quality and helped in capturing screen shots automatically with a click of a mouse or pressing any key in the keyboard of the students who are trying to complete a programming assignment. By analyzing all the recordings collected from different students, these barriers are determined.
Introduction to Software Engineering, Software Process, Perspective and Specialized Process Models – Introduction to Agility – Agile process – Extreme programming – XP process - Estimation-FP,LOC and COCOMO I and II,Risk Management, Project Scheduling.
Normal Labour/ Stages of Labour/ Mechanism of LabourWasim Ak
Normal labor is also termed spontaneous labor, defined as the natural physiological process through which the fetus, placenta, and membranes are expelled from the uterus through the birth canal at term (37 to 42 weeks
Biological screening of herbal drugs: Introduction and Need for
Phyto-Pharmacological Screening, New Strategies for evaluating
Natural Products, In vitro evaluation techniques for Antioxidants, Antimicrobial and Anticancer drugs. In vivo evaluation techniques
for Anti-inflammatory, Antiulcer, Anticancer, Wound healing, Antidiabetic, Hepatoprotective, Cardio protective, Diuretics and
Antifertility, Toxicity studies as per OECD guidelines
2024.06.01 Introducing a competency framework for languag learning materials ...Sandy Millin
http://sandymillin.wordpress.com/iateflwebinar2024
Published classroom materials form the basis of syllabuses, drive teacher professional development, and have a potentially huge influence on learners, teachers and education systems. All teachers also create their own materials, whether a few sentences on a blackboard, a highly-structured fully-realised online course, or anything in between. Despite this, the knowledge and skills needed to create effective language learning materials are rarely part of teacher training, and are mostly learnt by trial and error.
Knowledge and skills frameworks, generally called competency frameworks, for ELT teachers, trainers and managers have existed for a few years now. However, until I created one for my MA dissertation, there wasn’t one drawing together what we need to know and do to be able to effectively produce language learning materials.
This webinar will introduce you to my framework, highlighting the key competencies I identified from my research. It will also show how anybody involved in language teaching (any language, not just English!), teacher training, managing schools or developing language learning materials can benefit from using the framework.
Operation “Blue Star” is the only event in the history of Independent India where the state went into war with its own people. Even after about 40 years it is not clear if it was culmination of states anger over people of the region, a political game of power or start of dictatorial chapter in the democratic setup.
The people of Punjab felt alienated from main stream due to denial of their just demands during a long democratic struggle since independence. As it happen all over the word, it led to militant struggle with great loss of lives of military, police and civilian personnel. Killing of Indira Gandhi and massacre of innocent Sikhs in Delhi and other India cities was also associated with this movement.
Francesca Gottschalk - How can education support child empowerment.pptxEduSkills OECD
Francesca Gottschalk from the OECD’s Centre for Educational Research and Innovation presents at the Ask an Expert Webinar: How can education support child empowerment?
Introduction to AI for Nonprofits with Tapp NetworkTechSoup
Dive into the world of AI! Experts Jon Hill and Tareq Monaur will guide you through AI's role in enhancing nonprofit websites and basic marketing strategies, making it easy to understand and apply.
How to Make a Field invisible in Odoo 17Celine George
It is possible to hide or invisible some fields in odoo. Commonly using “invisible” attribute in the field definition to invisible the fields. This slide will show how to make a field invisible in odoo 17.
The French Revolution, which began in 1789, was a period of radical social and political upheaval in France. It marked the decline of absolute monarchies, the rise of secular and democratic republics, and the eventual rise of Napoleon Bonaparte. This revolutionary period is crucial in understanding the transition from feudalism to modernity in Europe.
For more information, visit-www.vavaclasses.com
A Survey of Techniques for Maximizing LLM Performance.pptx
Teaching of computer programming
1. Prof. Dr. M. A. Pasha
Chairman
Department of CS & IT
University of Sargodha
2. Computer Programming
Computer programming is not just programming
language syntax and using a development
environment. At its core, computer programming is
solving problems.
Key Objectives should be:
Making students able to apply an appropriate problem-
solving method for developing an algorithmic solution
to a problem.
Making students aware of some of the basic ethical
issues confronting computing professionals.
4. Phases of Computer Programming
Problem-Solving Phase
1. Analysis and Specification. Understand (define) the
problem and what the solution must do.
2. General Solution (Algorithm). Specify the required data
types and the logical sequences of steps that solve the
problem.
3. Verify. Follow the steps exactly to see if the solution really
does solve the problem.
Implementation Phase
1. Concrete Solution (Program). Translate the algorithm (the general
solution) into a programming language.
2. Test. Have the computer follow the instructions. Then manually check the
results. If you find errors, analyze the program and the algorithm to determine
the source of the errors, and then make corrections.
Maintenance Phase
1. Use. Use the program.
2. Maintain. Modify the program to meet changing requirements or to correct
any errors that show up while using it.
5. Example
Problem: Calculate volume of a box of given dimensions
(width, length, height).
The first step to solving any problem is to decompose the
problem description (syntactic analysis)
Identify all of the nouns in the sentence (Determine the
volume of a box of given dimensions (width, length, height).
Eliminate redundant or irrelevant information ( box,
dimensions). Rule of Thumb: eliminate the most general
items.
Divide the remaining nouns into two categories; Input and
Output
Inputs: width, length, height
Output: volume
Identify all of the verbs in the problem statement (processes).
Calculate
6. Example (cont.)
Link your inputs, processes, and output
Input
width
length
height
Processing
Calculate
Output
volume
Use external knowledge to complete your solution
Volume = width * length * height
7. Example (Cont.)
Algorithm Development using Pseudo code
Get length, width, height
Compute volume
volume = length * width * height
Store volume
Display volume
11. Types of Programmers
Types of Students:
Stoppers: In problematic situation, simply stop and
abandon all hope of solving the problem on their own
Movers: In problematic situation, keep trying,
modifying their code and use feedback about errors
effectively
Tinkerers: they are extreme movers. They cannot track
their program, make changes more or less randomly, and
like stoppers do not progress very much in their task.
12. Characteristics of Novice
Programmers (Cont.)
Limited to surface knowledge of programs and
generally approach programming "line by line" rather
than at the level of bigger program structures.
Spend little time in planning and testing code, and
when necessary, try to correct their programs with
small local fixes instead of more thoroughly
reformulating programs.
The knowledge of novices tends to be context specific
rather than general , and
Often fail to apply correctly the knowledge they have
obtained.
13. Where Lies the Problem?
The main source of difficulty does not seem to be the
syntax or understanding of concepts, but rather basic
program planning.
A student can explain what does a pointer do, but still
fails to use it appropriately in a program.
Students may know the syntax and semantics of
individual statements, but they do not know how to
combine these features into valid programs.
14. Approaches to Teaching
Programming
Bottom-up: predominantly focuses on teaching of the
details of syntax and implementation of data structures
concepts. (Stereotype approach)
Top-down: focuses on understanding the abstractions of
classical data structures regardless of their physical
implementation.
Hard for stereotype teachers to think about the abstract
behavior of the implemented structures.
Uses components rather than their implementation enable
students to do “interesting” things much earlier than they can
in the B-Up-Approach.
A program is a collection of large components interacting
with each other rather than a single very long sequence of
basic instructions.
15. Four Approaches to Teaching
Computer Programming
Code Analysis
2. Building Blocks
3. Simple Units
4. Full systems
1.
16. Code Analysis
Learners learn to analyze and understand existing
code prior to producing their own.
Learners read and understand programming logic
before writing their own. This approach is based on
the use of pseudocode so it is not programming
language dependent.
The ability to explain programming logic and code
appears to be a prerequisite for the ability to write
code. ( Campbell and Bolker, 2002); Kölling and
Rosenberg, 2001)
17. Building Blocks
Learning syntax and semantic before developing
serious application.
Learners develop an understanding of individual
pieces before combining the pieces to create meaning.
Language constructs are introduced and understood
one at a time, in isolation, before combining them.
By combining basic constructs into simple units that
solve small well-defined problems, learners can create
toolboxes of useful and reusable code fragments.
18. Simple Units
Learners master solutions to small problems before
applying the learned logic to more complex problems.
The simple units approach is analogous to learning to
speak a language from a phrase book with a limited
vocabulary.
19. Full systems
Learners design a solution to a non-trivial problem and the
programming concepts and language constructs are
introduced only when the solution to the problem requires
their application.
For example, a 2-player game of tic-tac-toe could serve as
an introductory problem. To produce this, learners would
need to demonstrate skills in decomposition
(understanding the problem), handling inputs from the
keyboard, displaying outputs in some format, tracking
turns (variables/ assignments), determining availability of
position (selection/conditional), and identifying a winning
move (repetition). The language constructs would be
introduced only when that part of the problem needs to be
solved. (Duke, et al, 2000; Sattar & Lorenzen, 2009).
20. What is Required?
The art of programming includes
knowledge of programming tools and languages,
problem-solving skills, and
effective strategies for program design and implementation.
Visualization: Programmers can build solutions both in their
minds and on a computer.
Skills: code analysis (tracing and explaining), in
understanding block behaviours (tracing and explaining),
in constructing simple units (writing), in combining
simple units to create full systems (writing), debugging.
Constructivism (Ben-Ari , 1998), Learning theory and
pedagogical methods support this idea.
21. Pedagogical Guideline
Teacher-centred learning: the teacher transmit knowledge
and students are passive recipients; teachers put more
emphasis on the knowledge itself rather than developing
students’ learning skills.
Student –centered learning focuses on the students’
learning; knowledge is constructed by students and the
teacher is only a facilitator (Harden and Crosby 2000).
Peer learning methods
Group work
Peer tutoring
E-learning