SlideShare ist ein Scribd-Unternehmen logo
1 von 14
Downloaden Sie, um offline zu lesen
Programming skills are a crucial part of our education as computational linguists, yet so
many programming classes leave students uninformed, confused, and often unable to
solve problems that differ too much from those that were discussed in class. How can we
offer better programming courses that motivate and enable students to grok all basic
concepts, rather than merely learn a number of functions by heart, without understanding
why things work the way they do?
In the first part of this session, I will give an overview of some questions that I think
should be considered when a programming class for computational linguists is being
designed.
In the second part of the session, you are welcome to discuss these questions with me
and share your own opinions and experiences. If you've participated in a programming
class before, either as a student or a teacher/TA, or if you're going to do so soon, your
input is valuable for the discussion!
How not to fail at programming education
How not to fail at
programming
education
Esther Seyffarth - TaCOS 25
Any feelings about programming courses?
● Raise your hand if you’ve participated in a
programming class.
● Raise your hand if you’ve contributed to a
programming class (as a teacher or TA).
● Raise your hand if you’ve learned a
programming language by yourself.
● Raise your hand if you don’t know how to
code.
What went wrong?
● Bad class materials?
● Boring examples for complex concepts?
● Not enough explanations?
● No connection to your other classes?
● Too much homework? Too little homework?
● Obligatory class with no intrinsic pull?
How can we design a great programming
class?
● There is no objectively great programming
class!
● Where you have to start depends on where
the students are.
● Which aspects of a programming class
matter most?
● How should each aspect look in your specific
case?
Morphological Box
● The morphological box is a way of thinking
about products one aspect at a time.
● You identify core attributes and find a
reasonable number of different values.
● Compare possibilities and decide which
combination of values you prefer.
Attribute A: Assumptions about students’
knowledge
● Pretend nobody knows anything about
computers or logic.
● Compare the language in question to
languages students might already know.
● Assume students have worked with the
language, but give opportunities for
struggling students to keep up.
● Publish strict course prerequisites early on.
Attribute B: Object Orientation (in Python)
● Pretend there’s no such thing as classes.
● Teach imperative style for a couple of
weeks, then switch to OO.
● Teach imperative for a semester, talk about
OO in last 2 weeks.
● Force students to understand Object
Orientation before they write their first line of
code.
Attribute C: IDE
● Use a simple, wooden interpreter/shell/editor
with no syntax highlighting etc.
● Use an IDE like IDLE, with syntax
highlighting, but no remarkable qualities.
● Use an IDE that has integrated Version
Control, code completion, error detection…
● Use IPython Notebook ❤
Attribute D: Depth vs. Breadth
● Use a book, focus on showing how to solve
given problems.
● Explain basic concepts and build more and
more complex projects together.
● Give a broad overview of a range of topics,
show students where to look for help.
● Provide an opportunity for students to
develop their own projects.
Attribute E: Exams? Homework?
● Give programming assignments throughout
the semester.
● Start each class by asking a couple of
questions about the learnings so far.
● Have a big, intimidating exam in the last
week.
● Plan supervised practice sessions with
small, optional tasks.
Morphological Box
A:
Prerequisites
Zero prerequisites Build on existing
knowledge
Help students
help themselves
Strict
prerequisites
B:
Object
Orientation
Pretend objects
don’t exist
Introduce after
first 2 weeks
Introduce in last 2
weeks
Pretend
everything’s an
object
C:
IDE
B/W shell IDLE Most Intelligent
Python IDE
IP[y]:
D:
Depth vs.
Breadth
Narrow focus on
individual
examples
Develop complex
projects together
Broad overview,
show good
resources
Let students
develop ideas
E:
Exams?
Homework?
Homework
programming
assignments
Continuous
repetition of key
concepts
Final exam Supervised
practice sessions
Morphological Box: Opinion Time!
A:
Prerequisites
Zero prerequisites Build on existing
knowledge
Help students
help themselves
Strict
prerequisites
B:
Object
Orientation
Pretend objects
don’t exist
Introduce after
first 2 weeks
Introduce in last 2
weeks
Pretend
everything’s an
object
C:
IDE
B/W shell IDLE Most Intelligent
Python IDE
IP[y]:
D:
Depth vs.
Breadth
Narrow focus on
individual
examples
Develop complex
projects together
Broad overview,
show good
resources
Let students
develop ideas
E:
Exams?
Homework?
Homework
programming
assignments
Continuous
repetition of key
concepts
Final exam Supervised
practice sessions
Other questions
● Covered: Prerequisites, Object Orientation,
IDE, Depth vs Breadth, Exams
● Other questions:
o Which programming language?
o Cooperation with other courses?
o Materials: Books? Slides? Websites?
o Extracurricular projects, e.g. NaNoGenMo ❤

Weitere ähnliche Inhalte

Was ist angesagt?

Integrating Tutors And Call In Efl
Integrating Tutors And Call In EflIntegrating Tutors And Call In Efl
Integrating Tutors And Call In Eflgetchan
 
Video Project Grading Rubric - BEA 214 Presentation by Sam Edsall
Video Project Grading Rubric - BEA 214 Presentation by Sam EdsallVideo Project Grading Rubric - BEA 214 Presentation by Sam Edsall
Video Project Grading Rubric - BEA 214 Presentation by Sam EdsallSamuel Edsall
 
Difficulties in EAP module in "SLIIT"
Difficulties in EAP module in "SLIIT"Difficulties in EAP module in "SLIIT"
Difficulties in EAP module in "SLIIT"Omobio
 
Case study: evaluation of a tool for searching inside a collection of multimo...
Case study: evaluation of a tool for searching inside a collection of multimo...Case study: evaluation of a tool for searching inside a collection of multimo...
Case study: evaluation of a tool for searching inside a collection of multimo...ronchet
 
Searching information in a collection of video-lectures
Searching information in a collection of video-lecturesSearching information in a collection of video-lectures
Searching information in a collection of video-lecturesronchet
 
Curricular Integration Project - Lesson plan
Curricular Integration Project - Lesson planCurricular Integration Project - Lesson plan
Curricular Integration Project - Lesson planhaleybarrette
 
Animations. cartoons otc tech october 2016 dublin
Animations. cartoons otc tech october 2016 dublinAnimations. cartoons otc tech october 2016 dublin
Animations. cartoons otc tech october 2016 dublinkamuran üçer koç
 
Digital Language Lab - Self Access Center
Digital Language Lab - Self Access CenterDigital Language Lab - Self Access Center
Digital Language Lab - Self Access CenterDilip Barad
 
Academic fastrack...
Academic fastrack...Academic fastrack...
Academic fastrack...Iffat Subhani
 

Was ist angesagt? (19)

ISTE 2017: Using Coding to Teach Writing
ISTE 2017: Using Coding to Teach WritingISTE 2017: Using Coding to Teach Writing
ISTE 2017: Using Coding to Teach Writing
 
Rubric video
Rubric videoRubric video
Rubric video
 
Integrating Tutors And Call In Efl
Integrating Tutors And Call In EflIntegrating Tutors And Call In Efl
Integrating Tutors And Call In Efl
 
Lesson planner
Lesson plannerLesson planner
Lesson planner
 
Video Project Grading Rubric - BEA 214 Presentation by Sam Edsall
Video Project Grading Rubric - BEA 214 Presentation by Sam EdsallVideo Project Grading Rubric - BEA 214 Presentation by Sam Edsall
Video Project Grading Rubric - BEA 214 Presentation by Sam Edsall
 
Cae speaking part 3
Cae speaking   part 3Cae speaking   part 3
Cae speaking part 3
 
Difficulties in EAP module in "SLIIT"
Difficulties in EAP module in "SLIIT"Difficulties in EAP module in "SLIIT"
Difficulties in EAP module in "SLIIT"
 
Case study: evaluation of a tool for searching inside a collection of multimo...
Case study: evaluation of a tool for searching inside a collection of multimo...Case study: evaluation of a tool for searching inside a collection of multimo...
Case study: evaluation of a tool for searching inside a collection of multimo...
 
Searching information in a collection of video-lectures
Searching information in a collection of video-lecturesSearching information in a collection of video-lectures
Searching information in a collection of video-lectures
 
Curricular Integration Project - Lesson plan
Curricular Integration Project - Lesson planCurricular Integration Project - Lesson plan
Curricular Integration Project - Lesson plan
 
Animations. cartoons otc tech october 2016 dublin
Animations. cartoons otc tech october 2016 dublinAnimations. cartoons otc tech october 2016 dublin
Animations. cartoons otc tech october 2016 dublin
 
Power of PowerPoint
Power of PowerPointPower of PowerPoint
Power of PowerPoint
 
Digital Language Lab - Self Access Center
Digital Language Lab - Self Access CenterDigital Language Lab - Self Access Center
Digital Language Lab - Self Access Center
 
NoRedInk Lesson Ideas
NoRedInk Lesson IdeasNoRedInk Lesson Ideas
NoRedInk Lesson Ideas
 
Academic fastrack...
Academic fastrack...Academic fastrack...
Academic fastrack...
 
Cae speaking part 2
Cae speaking   part 2Cae speaking   part 2
Cae speaking part 2
 
Ucla Cdh
Ucla CdhUcla Cdh
Ucla Cdh
 
Making Lesson Plans
Making Lesson PlansMaking Lesson Plans
Making Lesson Plans
 
Effective lecutre
Effective lecutreEffective lecutre
Effective lecutre
 

Andere mochten auch

Climate Justice, #BlackLivesMatter, and Palestinian Liberation - Coalition of...
Climate Justice, #BlackLivesMatter, and Palestinian Liberation - Coalition of...Climate Justice, #BlackLivesMatter, and Palestinian Liberation - Coalition of...
Climate Justice, #BlackLivesMatter, and Palestinian Liberation - Coalition of...Rae Abileah
 
¿POR QUÉ?
¿POR QUÉ?¿POR QUÉ?
¿POR QUÉ?Felix231
 
¿LICENCIADO EN LENGUAS MUERTAS?
¿LICENCIADO EN LENGUAS MUERTAS?¿LICENCIADO EN LENGUAS MUERTAS?
¿LICENCIADO EN LENGUAS MUERTAS?Felix231
 
Wie funktioniert eigentlich Pentametron? Computerlinguistische Perspektiven a...
Wie funktioniert eigentlich Pentametron? Computerlinguistische Perspektiven a...Wie funktioniert eigentlich Pentametron? Computerlinguistische Perspektiven a...
Wie funktioniert eigentlich Pentametron? Computerlinguistische Perspektiven a...Esther Seyffarth
 
Presentation janice s. dionisio
Presentation   janice s. dionisioPresentation   janice s. dionisio
Presentation janice s. dionisiojanicesdionisio
 
Work Fat_by James D
Work Fat_by James DWork Fat_by James D
Work Fat_by James DJames Beers
 
6 benso, alban. - da micro-historia
6   benso, alban. - da micro-historia6   benso, alban. - da micro-historia
6 benso, alban. - da micro-historiaMilaysa Paz
 
Scala Days 2014: Pitching Typesafe
Scala Days 2014: Pitching TypesafeScala Days 2014: Pitching Typesafe
Scala Days 2014: Pitching TypesafeBoldRadius Solutions
 
Caleb clark's journal
Caleb clark's journalCaleb clark's journal
Caleb clark's journallucyjonas
 
Article Inspiration - Devlin
Article Inspiration - DevlinArticle Inspiration - Devlin
Article Inspiration - Devlinconorg97
 
REACH THEM by MATHEW OLASUPO
REACH THEM by MATHEW OLASUPOREACH THEM by MATHEW OLASUPO
REACH THEM by MATHEW OLASUPOMathew Olasupo
 
Banner locations of Pragyan
Banner locations of PragyanBanner locations of Pragyan
Banner locations of PragyanVishnu Gopal
 
Ferdigheter for en nav veileder
Ferdigheter for en nav  veilederFerdigheter for en nav  veileder
Ferdigheter for en nav veilederunnihelene50
 

Andere mochten auch (20)

Elektriskie lādiņi
Elektriskie lādiņiElektriskie lādiņi
Elektriskie lādiņi
 
Tik bab 2
Tik bab 2Tik bab 2
Tik bab 2
 
service marketing
service marketingservice marketing
service marketing
 
Climate Justice, #BlackLivesMatter, and Palestinian Liberation - Coalition of...
Climate Justice, #BlackLivesMatter, and Palestinian Liberation - Coalition of...Climate Justice, #BlackLivesMatter, and Palestinian Liberation - Coalition of...
Climate Justice, #BlackLivesMatter, and Palestinian Liberation - Coalition of...
 
One stop english
One stop englishOne stop english
One stop english
 
¿POR QUÉ?
¿POR QUÉ?¿POR QUÉ?
¿POR QUÉ?
 
Competitive pricing
Competitive pricingCompetitive pricing
Competitive pricing
 
¿LICENCIADO EN LENGUAS MUERTAS?
¿LICENCIADO EN LENGUAS MUERTAS?¿LICENCIADO EN LENGUAS MUERTAS?
¿LICENCIADO EN LENGUAS MUERTAS?
 
Wie funktioniert eigentlich Pentametron? Computerlinguistische Perspektiven a...
Wie funktioniert eigentlich Pentametron? Computerlinguistische Perspektiven a...Wie funktioniert eigentlich Pentametron? Computerlinguistische Perspektiven a...
Wie funktioniert eigentlich Pentametron? Computerlinguistische Perspektiven a...
 
Competitive pricing
Competitive pricingCompetitive pricing
Competitive pricing
 
Presentation janice s. dionisio
Presentation   janice s. dionisioPresentation   janice s. dionisio
Presentation janice s. dionisio
 
Work Fat_by James D
Work Fat_by James DWork Fat_by James D
Work Fat_by James D
 
Bab 5
Bab 5Bab 5
Bab 5
 
6 benso, alban. - da micro-historia
6   benso, alban. - da micro-historia6   benso, alban. - da micro-historia
6 benso, alban. - da micro-historia
 
Scala Days 2014: Pitching Typesafe
Scala Days 2014: Pitching TypesafeScala Days 2014: Pitching Typesafe
Scala Days 2014: Pitching Typesafe
 
Caleb clark's journal
Caleb clark's journalCaleb clark's journal
Caleb clark's journal
 
Article Inspiration - Devlin
Article Inspiration - DevlinArticle Inspiration - Devlin
Article Inspiration - Devlin
 
REACH THEM by MATHEW OLASUPO
REACH THEM by MATHEW OLASUPOREACH THEM by MATHEW OLASUPO
REACH THEM by MATHEW OLASUPO
 
Banner locations of Pragyan
Banner locations of PragyanBanner locations of Pragyan
Banner locations of Pragyan
 
Ferdigheter for en nav veileder
Ferdigheter for en nav  veilederFerdigheter for en nav  veileder
Ferdigheter for en nav veileder
 

Ähnlich wie How not to fail at programming education

TechLogic 2014 Keynote on Inverting an Algorithms Class (Extended Version)
TechLogic 2014 Keynote on Inverting an Algorithms Class (Extended Version)TechLogic 2014 Keynote on Inverting an Algorithms Class (Extended Version)
TechLogic 2014 Keynote on Inverting an Algorithms Class (Extended Version)suthers
 
Visuals -flipping--draft-one
Visuals -flipping--draft-oneVisuals -flipping--draft-one
Visuals -flipping--draft-oneSaul Carliner
 
Using Programmed Instruction to Help Students Engage with eTextbook Content
Using Programmed Instruction to Help Students Engage with eTextbook Content Using Programmed Instruction to Help Students Engage with eTextbook Content
Using Programmed Instruction to Help Students Engage with eTextbook Content Sergey Sosnovsky
 
Lesson six plan
Lesson six planLesson six plan
Lesson six plansutt202
 
J ford unit 4 apps p
J ford unit 4 apps pJ ford unit 4 apps p
J ford unit 4 apps pMc_ford08
 
Baleap tel sig conference slides
Baleap tel sig conference slidesBaleap tel sig conference slides
Baleap tel sig conference slidesPhil Longwell
 
Teaching chinese to international exchange students a case sharing
Teaching chinese to international exchange students a case sharingTeaching chinese to international exchange students a case sharing
Teaching chinese to international exchange students a case sharingtangweizhiillie
 
Reading Book Report 3. Chapter
Reading Book Report 3. ChapterReading Book Report 3. Chapter
Reading Book Report 3. ChapterELENA GOMEZ
 
Presentacion ana 0508 part b
Presentacion ana 0508 part bPresentacion ana 0508 part b
Presentacion ana 0508 part bAna Ramos
 
Paul Gruhn Faculty-Research-Day Student-Poster Program Evalution
Paul Gruhn Faculty-Research-Day Student-Poster Program EvalutionPaul Gruhn Faculty-Research-Day Student-Poster Program Evalution
Paul Gruhn Faculty-Research-Day Student-Poster Program EvalutionPaul Gruhn
 
Student Survey Nov 2022
Student Survey Nov 2022Student Survey Nov 2022
Student Survey Nov 2022Peter Windle
 
Technology Seminar Handout
Technology Seminar HandoutTechnology Seminar Handout
Technology Seminar HandoutDerecskei Anita
 
Blended instruction for EL Modern Learners
Blended instruction for EL Modern LearnersBlended instruction for EL Modern Learners
Blended instruction for EL Modern LearnersMartin Cisneros
 
Building Teaching Skills Through the Interactive Web Plan Report_Harun
Building Teaching Skills Through the Interactive Web Plan Report_HarunBuilding Teaching Skills Through the Interactive Web Plan Report_Harun
Building Teaching Skills Through the Interactive Web Plan Report_HarunHarun Md. Shahed Bin Naim
 
Building proficiency 365
Building proficiency 365Building proficiency 365
Building proficiency 365eaj67
 
Extreme apprenticeship: a new way of teaching Computer Science?
Extreme apprenticeship: a new way of teaching Computer Science?Extreme apprenticeship: a new way of teaching Computer Science?
Extreme apprenticeship: a new way of teaching Computer Science?Gabriella Dodero
 
UbD Tools For Effective Unit Design
UbD Tools For Effective Unit DesignUbD Tools For Effective Unit Design
UbD Tools For Effective Unit Designcashill
 
Extreme Apprenticeship: what do students think?
Extreme Apprenticeship: what do students think?Extreme Apprenticeship: what do students think?
Extreme Apprenticeship: what do students think?Gabriella Dodero
 

Ähnlich wie How not to fail at programming education (20)

Unit planning w eqs
Unit planning w eqsUnit planning w eqs
Unit planning w eqs
 
TechLogic 2014 Keynote on Inverting an Algorithms Class (Extended Version)
TechLogic 2014 Keynote on Inverting an Algorithms Class (Extended Version)TechLogic 2014 Keynote on Inverting an Algorithms Class (Extended Version)
TechLogic 2014 Keynote on Inverting an Algorithms Class (Extended Version)
 
Visuals -flipping--draft-one
Visuals -flipping--draft-oneVisuals -flipping--draft-one
Visuals -flipping--draft-one
 
Module 1 PBL Mini Series
Module 1 PBL Mini SeriesModule 1 PBL Mini Series
Module 1 PBL Mini Series
 
Using Programmed Instruction to Help Students Engage with eTextbook Content
Using Programmed Instruction to Help Students Engage with eTextbook Content Using Programmed Instruction to Help Students Engage with eTextbook Content
Using Programmed Instruction to Help Students Engage with eTextbook Content
 
Lesson six plan
Lesson six planLesson six plan
Lesson six plan
 
J ford unit 4 apps p
J ford unit 4 apps pJ ford unit 4 apps p
J ford unit 4 apps p
 
Baleap tel sig conference slides
Baleap tel sig conference slidesBaleap tel sig conference slides
Baleap tel sig conference slides
 
Teaching chinese to international exchange students a case sharing
Teaching chinese to international exchange students a case sharingTeaching chinese to international exchange students a case sharing
Teaching chinese to international exchange students a case sharing
 
Reading Book Report 3. Chapter
Reading Book Report 3. ChapterReading Book Report 3. Chapter
Reading Book Report 3. Chapter
 
Presentacion ana 0508 part b
Presentacion ana 0508 part bPresentacion ana 0508 part b
Presentacion ana 0508 part b
 
Paul Gruhn Faculty-Research-Day Student-Poster Program Evalution
Paul Gruhn Faculty-Research-Day Student-Poster Program EvalutionPaul Gruhn Faculty-Research-Day Student-Poster Program Evalution
Paul Gruhn Faculty-Research-Day Student-Poster Program Evalution
 
Student Survey Nov 2022
Student Survey Nov 2022Student Survey Nov 2022
Student Survey Nov 2022
 
Technology Seminar Handout
Technology Seminar HandoutTechnology Seminar Handout
Technology Seminar Handout
 
Blended instruction for EL Modern Learners
Blended instruction for EL Modern LearnersBlended instruction for EL Modern Learners
Blended instruction for EL Modern Learners
 
Building Teaching Skills Through the Interactive Web Plan Report_Harun
Building Teaching Skills Through the Interactive Web Plan Report_HarunBuilding Teaching Skills Through the Interactive Web Plan Report_Harun
Building Teaching Skills Through the Interactive Web Plan Report_Harun
 
Building proficiency 365
Building proficiency 365Building proficiency 365
Building proficiency 365
 
Extreme apprenticeship: a new way of teaching Computer Science?
Extreme apprenticeship: a new way of teaching Computer Science?Extreme apprenticeship: a new way of teaching Computer Science?
Extreme apprenticeship: a new way of teaching Computer Science?
 
UbD Tools For Effective Unit Design
UbD Tools For Effective Unit DesignUbD Tools For Effective Unit Design
UbD Tools For Effective Unit Design
 
Extreme Apprenticeship: what do students think?
Extreme Apprenticeship: what do students think?Extreme Apprenticeship: what do students think?
Extreme Apprenticeship: what do students think?
 

Kürzlich hochgeladen

Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceSamikshaHamane
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfSpandanaRallapalli
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfTechSoup
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPCeline George
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxCarlos105
 
Gas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptxGas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptxDr.Ibrahim Hassaan
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 
Science 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxScience 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxMaryGraceBautista27
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
Q4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxQ4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxnelietumpap1
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONHumphrey A Beña
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
ENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomnelietumpap1
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Jisc
 
Judging the Relevance and worth of ideas part 2.pptx
Judging the Relevance  and worth of ideas part 2.pptxJudging the Relevance  and worth of ideas part 2.pptx
Judging the Relevance and worth of ideas part 2.pptxSherlyMaeNeri
 

Kürzlich hochgeladen (20)

Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptxYOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
YOUVE_GOT_EMAIL_PRELIMS_EL_DORADO_2024.pptx
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in Pharmacovigilance
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdf
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
 
How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERP
 
Raw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptxRaw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptx
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
 
Gas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptxGas measurement O2,Co2,& ph) 04/2024.pptx
Gas measurement O2,Co2,& ph) 04/2024.pptx
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 
OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...
 
Science 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxScience 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptx
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
Q4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxQ4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptx
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
ENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choom
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...
 
Judging the Relevance and worth of ideas part 2.pptx
Judging the Relevance  and worth of ideas part 2.pptxJudging the Relevance  and worth of ideas part 2.pptx
Judging the Relevance and worth of ideas part 2.pptx
 

How not to fail at programming education

  • 1. Programming skills are a crucial part of our education as computational linguists, yet so many programming classes leave students uninformed, confused, and often unable to solve problems that differ too much from those that were discussed in class. How can we offer better programming courses that motivate and enable students to grok all basic concepts, rather than merely learn a number of functions by heart, without understanding why things work the way they do? In the first part of this session, I will give an overview of some questions that I think should be considered when a programming class for computational linguists is being designed. In the second part of the session, you are welcome to discuss these questions with me and share your own opinions and experiences. If you've participated in a programming class before, either as a student or a teacher/TA, or if you're going to do so soon, your input is valuable for the discussion! How not to fail at programming education
  • 2. How not to fail at programming education Esther Seyffarth - TaCOS 25
  • 3. Any feelings about programming courses? ● Raise your hand if you’ve participated in a programming class. ● Raise your hand if you’ve contributed to a programming class (as a teacher or TA). ● Raise your hand if you’ve learned a programming language by yourself. ● Raise your hand if you don’t know how to code.
  • 4. What went wrong? ● Bad class materials? ● Boring examples for complex concepts? ● Not enough explanations? ● No connection to your other classes? ● Too much homework? Too little homework? ● Obligatory class with no intrinsic pull?
  • 5. How can we design a great programming class? ● There is no objectively great programming class! ● Where you have to start depends on where the students are. ● Which aspects of a programming class matter most? ● How should each aspect look in your specific case?
  • 6. Morphological Box ● The morphological box is a way of thinking about products one aspect at a time. ● You identify core attributes and find a reasonable number of different values. ● Compare possibilities and decide which combination of values you prefer.
  • 7. Attribute A: Assumptions about students’ knowledge ● Pretend nobody knows anything about computers or logic. ● Compare the language in question to languages students might already know. ● Assume students have worked with the language, but give opportunities for struggling students to keep up. ● Publish strict course prerequisites early on.
  • 8. Attribute B: Object Orientation (in Python) ● Pretend there’s no such thing as classes. ● Teach imperative style for a couple of weeks, then switch to OO. ● Teach imperative for a semester, talk about OO in last 2 weeks. ● Force students to understand Object Orientation before they write their first line of code.
  • 9. Attribute C: IDE ● Use a simple, wooden interpreter/shell/editor with no syntax highlighting etc. ● Use an IDE like IDLE, with syntax highlighting, but no remarkable qualities. ● Use an IDE that has integrated Version Control, code completion, error detection… ● Use IPython Notebook ❤
  • 10. Attribute D: Depth vs. Breadth ● Use a book, focus on showing how to solve given problems. ● Explain basic concepts and build more and more complex projects together. ● Give a broad overview of a range of topics, show students where to look for help. ● Provide an opportunity for students to develop their own projects.
  • 11. Attribute E: Exams? Homework? ● Give programming assignments throughout the semester. ● Start each class by asking a couple of questions about the learnings so far. ● Have a big, intimidating exam in the last week. ● Plan supervised practice sessions with small, optional tasks.
  • 12. Morphological Box A: Prerequisites Zero prerequisites Build on existing knowledge Help students help themselves Strict prerequisites B: Object Orientation Pretend objects don’t exist Introduce after first 2 weeks Introduce in last 2 weeks Pretend everything’s an object C: IDE B/W shell IDLE Most Intelligent Python IDE IP[y]: D: Depth vs. Breadth Narrow focus on individual examples Develop complex projects together Broad overview, show good resources Let students develop ideas E: Exams? Homework? Homework programming assignments Continuous repetition of key concepts Final exam Supervised practice sessions
  • 13. Morphological Box: Opinion Time! A: Prerequisites Zero prerequisites Build on existing knowledge Help students help themselves Strict prerequisites B: Object Orientation Pretend objects don’t exist Introduce after first 2 weeks Introduce in last 2 weeks Pretend everything’s an object C: IDE B/W shell IDLE Most Intelligent Python IDE IP[y]: D: Depth vs. Breadth Narrow focus on individual examples Develop complex projects together Broad overview, show good resources Let students develop ideas E: Exams? Homework? Homework programming assignments Continuous repetition of key concepts Final exam Supervised practice sessions
  • 14. Other questions ● Covered: Prerequisites, Object Orientation, IDE, Depth vs Breadth, Exams ● Other questions: o Which programming language? o Cooperation with other courses? o Materials: Books? Slides? Websites? o Extracurricular projects, e.g. NaNoGenMo ❤