Presentation is loading. Please wait.

Presentation is loading. Please wait.

‘All understanding begins with our not accepting the world as it appears.’ — Alan C. Kay.

Similar presentations


Presentation on theme: "‘All understanding begins with our not accepting the world as it appears.’ — Alan C. Kay."— Presentation transcript:

1 ‘All understanding begins with our not accepting the world as it appears.’ — Alan C. Kay

2 invent Design of a programming language for children By Pranav Mistry Guided by Prof. Ravi Poovaiah

3 I want to design a... Programming language for children n. 1: (a) Communication of thoughts and feelings through a system of arbitrary signals, such as voice sounds, gestures, or written symbols. (b) Such a system including its rules for combining its components, such as words. 2: (a) A system of signs, symbols, gestures, or rules used in communicating: the language of algebra. n. 1: (a) Communication of thoughts and feelings through a system of arbitrary signals, such as voice sounds, gestures, or written symbols. (b) Such a system including its rules for combining its components, such as words. 2: (a) A system of signs, symbols, gestures, or rules used in communicating: the language of algebra. n. 1: Setting an order and time for planned events 2: Creating a sequence of instructions to enable the computer to do something n. pl. of child Child n. 1: A person between birth and puberty. 2: An unborn infant; a fetus. 3: One who is childish or immature. n. pl. of child Child n. 1: A person between birth and puberty. 2: An unborn infant; a fetus. 3: One who is childish or immature.

4 I explored... Programming languages How children think and learn? Views on child behavior, learning and psychology Books Papers Projects My thoughts …

5 programming Language Programming languages – A *LISP *MOD {log} 20-GATE 2.PAK 3-LISP 473L Query 9PAC A A# A+ A0 A0[2] AACC AADL[1] AADL[2] AAL[1] AAL[2] AAL VL AAS Macro ABAP/4 ABC[1] ABC[2] ABC ALGOL ABCL/1 ABCL/c+ ABCL/R ABCL/R2 Abel[1] ABEL[2] ABEL[3] ABLE ABSET ABSYS 1 Abundance ACCEL Accent Access ACE ACL[1] ACL[2] ACOM ACOS ACP ACT++ ACT ONE Act1 Act2 Act3 Actalk Active Language I Actor Actors Actra Actus Acumen Ada Ada-83 Ada-95 Ada++ Ada' ADAM ADAMCL Ada-O Adaplex ADAPT AdaTran ADD 1 TO COBOL GIVING COBOL ADELE ADES ADL[1] ADL[2] ADL[3] ADL[4] AdLog ADM ADR/DL ADR/IDEAL/PDL ADS AdvSys ADW AE AED Aeolus AESOP[1] Aesop[2] AFAC AFML AgenTalk AGORA AHDL[1] AHDL[2] AHPL AID AIDA[1] AIDA[2] AIMACO AIML[1] AIML[2] AGP-L AKCL AKL AL[1] AL[2] ALADIN[1] ALADIN[2] ALAM Alan A-language ALC Alcool-90 ALCOR Aldat ALDES ALDiSP ALEC ALEF ALEPH[1] Aleph[2] Alex[1] Alex[2] Alexis ALF Alfl Algae ALGEBRAIC ALGOL ALGOL 58 ALGOL 60 ALGOL 60 Modified ALGOL 60 Revised ALGOL 68 ALGOL 68-R ALGOL 68 Revised ALGOL 68C ALGOL 68RS ALGOL 68S ALGOL C ALGOL D ALGOL N ALGOL W ALGOL X ALGOL Y ALGY ALIAS ALJABR Alki ALLOY ALM ALMA ALP ALPACA ALPAK ALPHA[1] ALPHA[2] Alphard[1] AlpHard[2] ALPS[1] ALPS[2] ALTAC ALTRAN A-MaCCS Amanda Amber[1] Amber[2] AMBIT AMBIT/G AMBIT/L AMBIT/S AMBUSH AML[1] AML[2] AML[3] ACPI Machine Language AML/E AMP AMPL[1] AMPL[2] AMPLE AMPPL-II AMTRAN ANCP ANDF Andorra-I Andorra-Prolog Animus Anna ANSWER/DB ANTLR APAL APAREL APDL APESE Aphrodite APL APL2 APLGOL APPLE AppleScript Applesoft BASIC APPLOG APRIL APS APSE APT APTools APX III AQL Arago ARC ARCHI Arctic ARENA ARES Argus Ariel ARITH-MATIC ARITY ART ART-IM Artemis ARTSPEAK ASDIMPL ASDL[1] ASDL[2] ASF Ashmedai ASIS ASIC ASL[1] ASL ASM ASN ASP AspecT ASPOL ASPEN ASPIK Aspirin ASPLE ASSEMBLY AS/SET Arago ARC ARCHI Arctic ARENA ARES Argus Ariel ARITH-MATIC ARITY ART ART-IM Artemis ARTSPEAK ASDIMPL ASDL[1] ASDL[2] ASF Ashmedai ASIS ASIC ASL[1] ASL ASM ASN ASP AspecT ASPOL ASPEN ASPIK Aspirin ASPLE ASSEMBLY AS/SET ….

6 programming Language More than 3,000 programming languages

7 programming Language More than 3,000 programming languages Genetic classification 1957 FORTRAN 1958 ALGOL 1960 LISP 1960 COBOL 1962 APL 1962 SIMULA 1964 BASIC 1964 PL/I 1966 ISWIM 1970 Prolog 1972 C 1975 Pascal 1975 Scheme 1977 OPS CSP 1978 FP 1980 dBASE II 1983 Smalltalk Ada 1983 Parlog 1984 Standard ML 1986 C++ …

8 programming Language More than 3,000 programming languages Genetic classification Generic classification Logic programming languages Functional programming languages Imperative programming languages Concurrent programming languages Object-oriented programming languages Structural programming languages …

9 programming Language More than 3,000 programming languages Genetic classification Generic classification Classification from users’ perspective?

10 programming Language More than 3,000 programming languages Genetic classification Generic classification Classification from users’ perspective? Kids and programming Smalltalk, LOGO, JUDO, Basic, …

11 Children, thinking and learning How children think and learn? Interaction with children MARBO ‘Ghost in the machine’ ACT computer center, NIIT Teaching table-tennis 5 th std. Computer class at VidyaMandir, Palanpur New Era school, Mumbai Kendriya Vidyalaya, IIT Bombay

12 From Pavlov to Piaget and from Papert to Pranav Ivan Pavlov Jean Piaget Lev Vygotsky J. Bruner Seymour Papert … I think …

13 Why… A medium to think Constructivism and Constructionism The language to communicate Learning problem solving Learning how to learn …

14 For … Concrete Operational Stage (7 to 11 yrs.)

15 Imagine... Explore... learn Learning by experiencing Learning by exploring Learning by doing Strategies, challenges, problems, ….learning Invent A medium to think and explore

16 Imagine... Explore... learn Learning by experiencing Learning by exploring Learning by doing Strategies, challenges, problems, ….learning A medium to think and explore InventInvent InventInvent

17 & then I did … Swami and his friends Analysis Inferences Evaluation of the design concepts Ideation The design “I think I know ‘how to do’ something. I want to learn ‘what to do’.”

18 Swami and his friends ‘Swami and his friends’ & ‘Malgudi Days’ by R.K.Narayan Swami, Rajam and friends as personas A story as scenario and ‘invent’ ‘The school train’

19 The school train a story by Pranav Mistry illustrated by Puspam

20

21

22

23

24 Designs Languages (programming) Learning theories Interactions... Analysis

25 Inferences ‘This is that’ ‘This is like that’ World creation Role playing Storytelling Do, Relate, Perform We can’t imagine that ‘what they can imagine’ Ready to learn new things...

26 ‘This is that’ & ‘This is like that’ This is ….. Can find use for things other than it is. Can imagine something as something. This is like ….. Can relate to something they have seen the behavior, the look,…

27 Ideation Domain knowledge Experience Inferences Evaluations Intuitions What it will be? How the child will do it? How it will help? “I can't understand why people are frightened of new ideas. I'm frightened of the old ones.” - John Cage

28 The design One can create anything can decide how it will look, behave or act can relate it to world and other things can instruct or order..... Can create worlds, challenges or can tell stories Can explore one’s imagination (for the child)

29 The design Everything is an object One can create an object can edit, duplicate,modify,.. can provide properties, behaviors can relate one object to other objects of world can program objects and events... Prototype based O.O. programming An intuitive visual programming environment...

30 The system WORLD Scene 2 OBJECT Properties Behaviors Interaction relations Scene … Scene 1 OBJECT Environment

31 The design

32

33 Scale Instruct Rotate Duplicate Back to object bar Properties & behaviors Edit

34 The design

35 Layouts Overlapping windows Docked menus Temporal menus

36 Create Everything is an object.

37 The object Each object is unique. Objects can be duplicated, can be modified, can be instructed, …

38 Create One can create objects by drawing, coloring, …

39 Properties and behaviors ‘This is like that’ & ‘This is that’

40 Properties and behaviors It will … move, by, look, … by,

41 Instruct When this happens.. Do this. If …. then …. Instructing by showing. (TOPOBO, MIT media lab)

42 The confusion Instruct by selecting common actions available Vs. Instruct by changing base properties to generate the desired actions ?

43

44

45

46

47

48 References Papert on Piaget. Papert, Seymour. “Papert on Piaget.” Time (March 29, 1999): p (accessed February 07, 2005). Ghost in the Machine: Seymour Papert on How Computers Fundamentally Change the Way Kids Learn. Interview of Seymour Papert by Dan Schwartz. (accessed February 01, 2005). How children think and learn Wood, D. How children think and learn: Understanding children’s worlds. Cambridge, MA: Basil Blackwell Mindstorms Papert, Seymour. Mindstorms: Children, Computers, and Powerful Ideas. Basic Books. New York Effects of Computer Programming on Young Children's Cognition Clement, D., and Gullo, D. "Effects of Computer Programming on Young Children's Cognition," Journal of Educational Psychology (vol. 76, no. 6) Child Power: Keys to the New Learning of the Digital Century Lecture by Seymour Papert. The eleventh Colin Cherry Memorial Lecture on Communication on June 2, 1998, at the Imperial College in London Prototype-Based Programming: Concepts, Languages and Applications by James Noble, Antero Taivalsaari, Ivan Moore

49 References History of Programming Languages-II Bergin, Thomas J. and Richard G. Gibson, eds. History of Programming Languages-II. New York: ACM Press, Cultivating Minds: A Logo Casebook Sylvia Weir, Cultivating Minds: A Logo Casebook. New York: Harper & Row, 1987 Watch What I Do: Programming by Demonstration Edited by Allen Cypher. The MIT Press Programmers at Work: Interviews With 19 Programmers Who Shaped the Computer Industry by Susan Lammers. Tempus Books Into the world of the “really not real”. Sen, Ajanta and Poovaiah, Ravi. Into the world of the “really not real”. Leveraging a child’s make- belief abilities for design clues to build a cross-cultural collaborative environment on the Internet. LEGO serious play (accessed February 01, 2005). To Understand Is To Invent Piaget, J. (1972). To Understand Is To Invent. New York: The Viking Press, Inc. Piaget’s Constructivism, Papert’s Constructionism: What’s the difference? Ackerman, Edith, Piaget´s Constructivism, Papert’s Constructionism, What’s the Difference? … …continued

50 Next... Solution to ‘Instruct problem’ Implementation Evaluation Iteration … & … I want suggestions from you “Design is not just what it looks like and feels like. Design is how it works.” - Steve Jobs

51 Acknowledgements Prof. Ravi Poovaiah Srini Koppulu Dr. Ajanta Sen Poovaiah Perry (Perraju Bendapudi) Niranjan Kirti Mistry (My father) Amisha Banker Puspam Microsoft India R&D Ltd All the kids of the world …

52 Imagine Design of a programming language for children By Pranav Mistry Guided by Prof. Ravi Poovaiah

53 Explore Design of a programming language for children By Pranav Mistry Guided by Prof. Ravi Poovaiah

54 & Learn Design of a programming language for children By Pranav Mistry Guided by Prof. Ravi Poovaiah

55 Thanks “ The best way to predict the future is to invent it. ” - Alan C. Kay


Download ppt "‘All understanding begins with our not accepting the world as it appears.’ — Alan C. Kay."

Similar presentations


Ads by Google