A Teamwork-based Approach to Programming Fundamentals with Scheme, Smalltalk & Java

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

0 comments

Post a comment

    Post a comment
    Embed Video
    Edit your comment Cancel

    1 Favorite

    A Teamwork-based Approach to Programming Fundamentals with Scheme, Smalltalk & Java - Presentation Transcript

    1. A Teamwork-based Approach to Programming Fundamentals with Scheme, Smalltalk & Java Michele Lanza, Amy L. Murphy*, Romain Robbes, Mircea Lungu, Paolo Bonzini, Marco D’Ambros, Richard Wettel Faculty of Informatics - University of Lugano, Switzerland *now with Foundation Bruno Kessler, Trento, Italy
    2. Introduction Languages & Tools Contents Didactic Elements Reflections
    3. Introduction
    4. 2004: A new faculty of informatics
    5. A remarkable faculty ‣ Low faculty-student ratio (1:6) ‣ English as teaching language ‣ Compliant with ACM curriculum guidelines ‣ “Agile” infrastructure & 24/7 accessibility ‣ Morning Lectures vs. Afternoon “Ateliers” Lectures Atelier
    6. The “Missions” of a newborn faculty ‣ “Research Excellence” ‣ “Teaching Innovation” ‣ Multiple programming languages to teach programming ‣ Group projects as early as the first semester ‣ Independent exercises + single & pair projects ‣ Design fests ‣ Expert lectures
    7. Programming Fundamentals I & II DF1 DF2 Personal Group Lectures Project Project Scheme DF Pair Lectures Lectures Group Project Project Smalltalk Java
    8. Languages & Tools
    9. Scheme - The Functional Clean Slate ‣ Back to square zero ‣ Simple syntax ‣ Dr. Scheme ‣ Multimedia libraries ‣ HTDP ‣ Emphasizes algorithmic thinking and problem solving ‣ Enforces programming style through a design recipe
    10. The HTDP Design Recipe ; mid-point : posn posn -> posn ; takes two posns and produces the posn in the middle between them (define mid-point (lambda (a-posn b-posn) (local ( (define mid (lambda (x y) (/ (+ x y) 2))) ) (make-posn (mid (posn-x a-posn) (posn-x b-posn)) (mid (posn-y a-posn) (posn-y b-posn)))))) ; tests (equal? (make-posn 2 3) (mid-point (make-posn 4 6) (make-posn 0 0)))
    11. Smalltalk - Pure Objects ‣ The Nygaard keynote: into the water with the babies ‣ Java not appropriate: too convoluted ‣ Smalltalk: simple syntax, reflective, interactive, pure, elegant ‣ Didactic goal: teach concepts ‣ Objects, classes, inheritance, polymorphism, message sending, frameworks
    12. Java - The Mainstream ‣ Teaching from scratch but at a very fast pace ‣ Chance to catch up and reinforcement of key concepts ‣ Focus is not on “how to program” but on “how to design (and build) OO programs” ‣ TIJ as a reference book ‣ High-speed progress (100 pages/week)
    13. Didactic Elements
    14. Individual Work ‣ Learning to program is a personal thing ‣ Graded exercises and written exams ‣ Each assignment includes a trivia part (hand-in within 24 hours) ‣ Augmented with supervised, non-graded hands-on exercises ‣ Goal: Grasp, not evaluation of mastery, of a concept ‣ Guided, step-wise path through a problem towards its solution
    15. Single & Pair Projects ‣ Single projects: the first complex program for many people, after six weeks ‣ 2 weeks of intensive development ‣ Students sleep in the lab ;-) ‣ 20% of the final grade ‣ MineDetector
    16. Design Fests ‣ Afternoon long sessions with TAs & Profs ‣ Students work in groups to tackle more complex problems ‣ Tetrisfest
    17. Expert Lectures ‣ On-Demand lectures on selected topics to provide students with necessary knowledge ‣ Example ‣ 1 lecture on SVN in PF1 to make students use it ‣ 2 UML lectures in PF2 to make students describe their designs ‣ 1 lecture on “how to give presentations”
    18. Group Projects ‣ 3-5 week long projects on selected topics ‣ Too hard to describe.. Back to USI
    19. Reflections
    20. The Role of the Ateliers ‣ All of this hardly possible without them ‣ Example: PF1 & Software Atelier 1 ‣ CVS ‣ LaTex ‣ HTML ‣ Unix ‣ Most of all: project time!
    21. Conclusions ‣ A “one of a kind” experience ‣ The conjunction of the “right people” in the “right mindset” at the “right place” ‣ Highly successful, some of the best students I’ve ever seen came out of this ‣ Created closely knit groups of students, instead of “mass anonymity” ‣ Good times..
    22. + + = A great idea, but...
    23. R.I.P.

    + Michele LanzaMichele Lanza, 2 years ago

    custom

    1153 views, 1 favs, 0 embeds more stats

    A presentation I gave at the ICSE 2008 education tr more

    More info about this document

    CC Attribution-ShareAlike LicenseCC Attribution-ShareAlike License

    Go to text version

    • Total Views 1153
      • 1153 on SlideShare
      • 0 from embeds
    • Comments 0
    • Favorites 1
    • Downloads 10
    Most viewed embeds

    more

    All embeds

    less

    Flagged as inappropriate Flag as inappropriate
    Flag as inappropriate

    Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

    Cancel
    File a copyright complaint
    Having problems? Go to our helpdesk?

    Categories