teaching strategies and learning styles cra-w workshop march 4, 2009
DESCRIPTION
Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009. Susan Rodger Professor of the Practice Duke University www.cs.duke.edu/~rodger. Outline. About Me and my teaching path Learning Styles Teaching Strategies Preparation for class Group dynamics - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/1.jpg)
Teaching Strategies and Learning StylesCRA-W Workshop
March 4, 2009
Susan RodgerProfessor of the Practice
Duke Universitywww.cs.duke.edu/~rodger
![Page 2: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/2.jpg)
Outline
• About Me and my teaching path• Learning Styles• Teaching Strategies– Preparation for class– Group dynamics– Activities w/o computer– Activities w/ computer• JAWAA• JFLAP
![Page 3: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/3.jpg)
Who Am I - Personally?Spouse Mother
![Page 4: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/4.jpg)
Hobby – Baking Shape cakes, cookies
![Page 5: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/5.jpg)
How do you make those cakes?
![Page 6: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/6.jpg)
What path did I take?
PhD, 1989Computer Science
Assistant Prof.1989-1994
Assistant Prof. Of Practice1994-1997Associate Prof. Of Practice1997-2008Professor of the Practice2008-present
![Page 7: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/7.jpg)
Along the way, Duke’s been great!• Virtual Prof (bedrest) - Fall
1996• Maternity leave – Spring 1997• Virtual Prof (bedrest) – Fall
1999• Maternity leave – Spring 2000• ¾ time for five years – Fall
2000-Spring 2005• “Leave” Fall 2004 – writing
books
![Page 8: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/8.jpg)
What is Professor “of the Practice”?• Position exists in many departments at Duke– About 20% of Arts and Sciences Faculty
• PhD preferred, or appropriate professional experience• Non-tenure track, permanent position, promotable• Renewable contracts (4 –8 yrs)• Focus on “education in the discipline”• Main tasks– Teaching (2 courses per semester)– Research (related to education)– Service, advising
![Page 9: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/9.jpg)
How do Prof of Practice differ from regular rank faculty in CS?
• Teach 2 courses/semester vs 1 course/semester• Focus on undergrad curriculum, first two years• Teach intro courses– Other grad and undergrad courses too
• Supervise undergraduates more than grad. studs.• Attend faculty meetings– Vote on everything except tenure decisions
• No sabbatical, instead apply for Dean’s leave• Salary is similar!• Write grants – CS education or education part of
research grant
![Page 10: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/10.jpg)
My Research Interests
• Computer Science Education• Visualization and Interaction– Instructional Tools for Theoretical concepts • Automata theory and formal languages
• Algorithm Animation
![Page 11: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/11.jpg)
Three NSF Projects I’m involved in
• JFLAP– Software for automata theory– Study with 14 universities
• The Alice project– Create 3D virtual worlds– Teaching programming non-
majors college– Teaching to K-12 – 6 regional
sites, $1.3 Million• Peer Led Team Learning– Students teaching students– 8 universities, 4 year grant– Women and minorities
![Page 12: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/12.jpg)
Learning Styles
• Different people learn differently• Various ways to categorize learning styles– Visual– Auditory– Read/Write– Kinesthetic/Tactile
• Most people have multiple styles
![Page 13: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/13.jpg)
Visual Learners
• Learn by seeing• Like pictures,
diagrams, body language
• Appreciate use of color, highlighting
![Page 14: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/14.jpg)
Auditory Learners
• Learn by listening• Like lectures, discussions• Attuned to oral queues
(tone of voice, pitch, speed)• Can benefit from reading
aloud, using a tape recorder, explaining ideas to others
![Page 15: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/15.jpg)
Read/Write Learners
• Learn by reading and writing (textual learner)
• Like to read words or numbers rather than be told or see diagrams
• Like lists, essays, dictionaries, glossaries, manuals
• Most successful academics are read/write learners; most students are not!
![Page 16: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/16.jpg)
Kinesthetic Learners
• Learn by doing, moving, touching
• Like hands-on approach and real-world examples: labs, case studies, field trips
• May need breaks during lecture• May find chewing gum, listening
to music helpful while studying
![Page 17: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/17.jpg)
Style != Ability
• Non read/write learners may have excellent reading/writing skills
• Non-visual learners may enjoy visual experiences and activities
![Page 18: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/18.jpg)
How do you reach all types?
Teach me my most difficult concepts in my preferred styleLet me explore my easiest concepts in a different styleJust don’t teach me all the time in your preferred styleand think I’m not capable of learning.
Virleen Carlson,Center for Teaching and LearningCornell University
Provide pictures, diagrams and textDiscuss what you are doingProvide activities for trying it
![Page 19: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/19.jpg)
Teaching StrategiesPreparation for class
![Page 20: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/20.jpg)
Get to know your students!
• Get their picture– Pass around a camera the first day– Registrar photo lists
• Assigned Seating• Calling on students– Pick-a-student system (rotate thru their pictures)
![Page 21: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/21.jpg)
Interactive Lecture
• Lecture for 10-20 minutes• Students solve a problem– Solve problem from scratch (longer)– Find what is wrong with a “solution” (shorter)
• Discuss solution– Ask how many did X? (gets students involved)– Give a possible solution (shorter)– Student present solution (longer)
• REPEAT
![Page 22: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/22.jpg)
Interactive Lecture Notes and Handouts
• Create 4 versions of my lecture– Slides with holes– Handouts with holes– My notes – holes filled in– Library notes (handouts with holes filled in)• Don’t give out any more
![Page 23: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/23.jpg)
How to create Lecture notes• Latex – 1 file with tags– %M – my notes only– %S – slides and handout– %SO – slides only– %LH – library notes, my notes and handout– Etc..
• Powerpoint– Use notes feature, print slides 4 per page
• Tablet PC– Different views
![Page 24: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/24.jpg)
Interactive Lecture with ComputersOR Interactive Lab
• Lecture for 10-20 minutes
• Students work on problem with computers
• Bring students back together
![Page 25: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/25.jpg)
Room Layout with Computers• 20 computers, 40 students• Extra desks for group work• Advantage: see what students are doing
![Page 26: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/26.jpg)
Say help with a Beanie
Thanks to Robert Duvall
![Page 27: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/27.jpg)
Teaching StrategiesGroup Dynamics
• Work with large or small classes
![Page 28: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/28.jpg)
Divide Students into Groups
• Random assignment– Count off and assign groups on the spot– Assign in advance, bring in seating chart– Change groups every 2-3 weeks
• Students work on problems during class in groups– Short (2 min) or long problems (20 min)
![Page 29: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/29.jpg)
Advantages to Random Groups Large or Small classes
• Students help each other• Students are more confident to answer
questions – not feeling alone• Students present different solutions• Students meet other students• Less work to grade for you• Can pass graded work back quickly– Sort it by groups first
![Page 30: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/30.jpg)
Groups in Lab - Pair Programming
• Work in pairs• Responsibilities– One person is driver– One person is navigator
• “Pair Programming Illuminated” by Williams and Kessler, 2003
![Page 31: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/31.jpg)
Peer-Led Team Learning
• Related to a course– Students solve problems in small groups (4-8
students) weekly in addition to regular class meeting– Interesting exercises to be solved as a group– Led by trained undergraduate student leaders who
facilitate group learning• Used in Chemistry for about 12 years• Now in computer science: www.pltlcs.org• Beneficial to both students and student leaders• SIGCSE 2009 paper – Horwitz, Rodger
![Page 32: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/32.jpg)
Cone of Learning(Edgar Dale)
![Page 33: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/33.jpg)
PLTL Effects on Students
• Better/deeper understanding of material• Lower drop rates• Better grades (usually)• Formation of social groups• Very high satisfaction
![Page 34: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/34.jpg)
PLTL Effects on Peer Leaders
• Better understanding of the material• Increased confidence to continue in CS• Appreciation for different teaching /learning
styles• Improved leadership skills• Collegial relationship with faculty
![Page 35: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/35.jpg)
Teaching StrategiesActivities Without a Computer
• Get creative in bringing hands-on activities into the classroom
![Page 36: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/36.jpg)
Interaction in Class – PropsPassing “Parameters” in Class
• Pass by reference – throw frisbee
• Pass by value – throw copy of frisbee
• Pass by const reference – throw “protected” frisbee
![Page 37: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/37.jpg)
Interaction in Class – PropsLinked List and Memory Heaps
ITiCSE 98 – Astrachan – “Concrete Teaching: Hooks and Props asInstructional Technology
![Page 38: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/38.jpg)
Interaction in Class – Props Memory Heap
![Page 39: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/39.jpg)
Be a Robot
• 4 People– Controller (head)– Sensors (eyes)– Manipulators (2 hands)
• Blindfolded except eyes• Controller knows what
to build• Limited communication
SIGCSE 96, Rodger,Walker
![Page 40: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/40.jpg)
Sorting Over 100 Words
• An envelope with over 100 words, each word on one slip of paper
• Sort the words• Write down the
algorithm• Early assignment, before
sorting is covered
anchorphysiotherapistpatheticbootstrappedacrimoniouspolarizationfirecrackerpalindromeobservatorycontroversialorchestratestatisticianconfrontationscrumptiousrevolutionary…
![Page 41: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/41.jpg)
Interaction with Class Binary Tree and Recursion
• Build a binary tree– Pick a root– Root picks two children – point at them– Repeat until everyone is part of the tree
• Recursively calculate height of tree– Start at root– Ask children their height– Leaf notes know their height is 0
SIGCSE 2002 – Wolfman – “Making Lemonade: Exploring the Bright Side of Large Lecture Classes
![Page 42: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/42.jpg)
Interaction in Class – PropsEdible Turing Machine
• TM for f(x)=2x where x is unary
• TM is not correct, can you fix it? Then eat it!
• States are blueberry muffins
![Page 43: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/43.jpg)
Students building DFA with cookies and icing
![Page 44: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/44.jpg)
The Smart Waitress vs Customer
• Four cups on a revolving tray (each up or down)
• Waitress blindfolded and wears boxing gloves
• Goal is to turn all cups up• Game – Repeat:– W turns 1-4 cups
• If all up wins– Customer rotates tray 0, 90, 180 or
270 degrees• Is there a winning strategy?– This is a DFA problem
From an old EATCS bulletin
![Page 45: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/45.jpg)
Teaching StrategiesActivities With a Computer
• Using software to teach concepts during lecture
• Will illustrate with software I use in lecture• JAWAA• JFLAP
![Page 46: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/46.jpg)
The Role of Visualization and Engagement
• Working Group ITiCSE 2002 (Naps et al)• Six Levels of Learner Engagement
1. No Viewing 2. Viewing
3. Responding 4. Changing
5. Constructing 6. Presenting
• Hypothesis: 1 and 2 equivalent, higher the number, better learning outcomes
![Page 47: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/47.jpg)
What is JAWAA?
• Scripting Language for Animation• Easily create, modify and move objects• Runs over the web, no need to install• More Advanced Students
• Output JAWAA Command from Program• Animate Data Structures Easily
• SIGCSE 2003 and SIGCSE 1998• www.cs.duke.edu/~rodger/tools/• Students: Pierson, Patel, Finley, Akingbade,
Jackson, Gibson, Gartland
![Page 48: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/48.jpg)
Related Work
• Samba, Jsamba - Stasko (Georgia Tech)• AnimalScript – Roessling (Darmstadt Univ
of Tech, SIGCSE 2001)• JHAVE – Naps (U. Wisc. Oshkosh, SIGCSE
2000)• Lots of animations and systems on the
web!
![Page 49: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/49.jpg)
JAWAA Commands
circle cl 30 20 60 blue red
moveRelative c1 60 0 move right
moveRelative c1 0 50 move down
changeParam c1 bkgrd blue
![Page 50: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/50.jpg)
JAWAA Primitives
circle
rectangle
line
oval
polygon
text
![Page 51: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/51.jpg)
JAWAA Data Structures
Array
![Page 52: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/52.jpg)
JAWAA Data Structures• Stack
• Queue
![Page 53: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/53.jpg)
JAWAA Data Structures• Linked List
• Trees
![Page 54: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/54.jpg)
Instructor Use of JAWAA in CS 1/2
• Use JAWAA Editor to make quick animations for lecture
• Fast - 4-8 minutes each animations, Fall 2002 CS 2 Course
• Create quick animation of data structure in an existing program, add JAWAA commands as output
• Show web pages with JAWAA animations in lecture
• Students replay animations later
![Page 55: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/55.jpg)
Instructor Animations for CS 2 Lecture
• How Pointers Work in Memory• Recursion• Shellsort• Linked List - Insert at the Front• Quadratic Collision Resolution• Build Heap and Heapsort
![Page 56: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/56.jpg)
Overview of JFLAP
• Java Formal Languages and Automata Package
• Instructional tool to learn concepts of Formal Languages and Automata Theory
• SIGCSE 2006 and SIGCSE 2009• www.jflap.org
![Page 57: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/57.jpg)
What is JFLAP?
Regular languages – create
• DFA• NFA• regular grammar• regular expression
Regular languages - conversions
• NFA to DFA to Min DFA• NFA to reg grammar to NFA• NFA to reg expr to NFA
![Page 58: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/58.jpg)
What is JFLAP? (cont)CFL - create
CFL - transform
• pushdown automaton• context-free grammar
• PDA to CFG• CFG to NPDA (LL parse)• CFG to NPDA (SLR parse)• CFG to CNF• CFG to LL Parse table and parser• CFG to SLR Parse table and parser• CFG to brute force parser
![Page 59: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/59.jpg)
What is JFLAP? (cont)
Recursively enumerable languages
L-Systems
• Turing machine (one-tape)• Turing machine (multi-tape)• unrestricted grammar
• brute force parser
• Create L-Systems
![Page 60: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/60.jpg)
Thanks to Students - Worked on JFLAP and Automata Theory Tools
• NPDA - 1990, C++, Dan Caugherty• FLAP - 1991, C++, Mark LoSacco, Greg Badros• JFLAP - 1996-1999, Java version
Eric Gramond, Ted Hung, Magda and Octavian Procopiuc• Pâté, JeLLRap, Lsys
Anna Bilska, Jason Salemme, Lenore Ramm, Alex Karweit, Robyn Geer
• JFLAP 4.0 – 2003, Thomas Finley, Ryan Cavalcante• JFLAP 6.0 – 2005-2008 Stephen Reading, Bart Bressler,
Jinghui Lim, Jason Lee, Chris Morgan, Jonathan Su
![Page 61: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/61.jpg)
Why study finite automata?
• Application: Compiler• Compiler identifies your syntax errors • Can write a big DFA to identify all words in a
Java program– integers, doubles, boolean – keywords, variable names– arithmetic operators, punctuation symbols
![Page 62: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/62.jpg)
Why Develop Tools for Automata?
Textual
Tabular
Visual
Interactive
![Page 63: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/63.jpg)
Finite Automata Editingand Simulation
• The most basic feature of JFLAP has always been the creation of automata, and simulation of input on automata.
• Here we demonstrate the creation and simulation on a simple NFA.
![Page 64: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/64.jpg)
FA Edit & SimulationStart up JFLAP
• When we start up JFLAP we have a choice of structures.
• The first of these is the Finite Automata!
![Page 65: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/65.jpg)
FA Edit & SimulationStart Editing!
• We start with an empty automaton editor window.
![Page 66: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/66.jpg)
FA Edit & SimulationCreate States
• We create some states ...
![Page 67: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/67.jpg)
FA Edit & SimulationCreate Transitions
• We create some transitions ...
![Page 68: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/68.jpg)
FA Edit & SimulationInitial and Final State
• We set an initial and final state.
• Now we can simulate input on this automaton!
![Page 69: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/69.jpg)
FA Edit & SimulationInput to Simulate...
• When we say we want to simulate input on this automaton, a dialog asks us for the input.
![Page 70: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/70.jpg)
FA Edit & SimulationStart Simulation!
• When simulation starts, we have a configuration on the initial state with all input remaining to be processed.
![Page 71: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/71.jpg)
FA Edit & SimulationAfter One Step
• This is a nondeterministic FA, and on this input we have multiple configurations after we “Step.”
![Page 72: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/72.jpg)
FA Edit & SimulationAfter Two Steps
• The previous configurations on q1 and q2 are rejected, and are shown in red.
• The remaining uncolored configurations paths are not rejected, and are still open.
![Page 73: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/73.jpg)
FA Edit & SimulationAfter Three Steps
• Yet another step.
![Page 74: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/74.jpg)
FA Edit & SimulationAfter Four Steps
• One of the final configurations has been accepted!
![Page 75: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/75.jpg)
FA Edit & SimulationTraceback
• One can then see a traceback to see the succession of configurations that led to the accepting configuration.
![Page 76: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/76.jpg)
FA Multiple Run
• Select Multiple Run
• One can then enter many strings and receive acceptance info.
![Page 77: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/77.jpg)
Using JFLAP during Lecture
• Use JFLAP to build examples of automata or grammars
• Use JFLAP to demo proofs• Load a JFLAP example and students work in
pairs to determine what it does, or fix it if it is not correct.
![Page 78: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/78.jpg)
Use of JFLAP by InstructorShowing how to layout items
Poor:
Better:
![Page 79: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/79.jpg)
Use of JFLAP by Instructor
Is this correct for anbncn?
How do we fix it?
![Page 80: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/80.jpg)
Use of JFLAP by InstructorExperimenting with Difficult Concepts
Nondeterminism: wwR
• Students attempt at desk - difficult: want to find the “middle”
• Instructor builds with class using JFLAP
![Page 81: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/81.jpg)
Use of JFLAP by InstructorTesting Student Programs
![Page 82: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/82.jpg)
JFLAP’s use Outside of Class
• Use with Homework problems – Turn in JFLAP files– OR turn in on paper, check answers in JFLAP
• Recreate examples from class• Work additional problems– Receive immediate feedback
![Page 83: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/83.jpg)
Additional References
• Astrachan, Forbes, Duvall and Rodger, “Active Learning in Small to Large Courses”, FIE 2002.
• Rodger, An Interactive Lecture Approach to Teaching Computer Science, SIGCSE 1995.
• Smith, The Craft of Teaching Cooperative Learning, An Active Learning Strategy, FIE 1989
![Page 84: Teaching Strategies and Learning Styles CRA-W Workshop March 4, 2009](https://reader035.vdocument.in/reader035/viewer/2022062314/568139fc550346895da1c0b9/html5/thumbnails/84.jpg)
Conclusion• Incorporate props into your
teaching• Consider interactive lectures
– assign students to random groups
• Consider instructional software/animations in your lectures
• Consider Peer-led team learning• Go to SIGCSE every year!
– Lots of people are doing active learning