Loading presentation...

Present Remotely

Send the link below via email or IM

Copy

Present to your audience

Start remote presentation

  • Invited audience members will follow you as you navigate and present
  • People invited to a presentation do not need a Prezi account
  • This link expires 10 minutes after you close the presentation
  • A maximum of 30 users can follow your presentation
  • Learn more about this feature in our knowledge base article

Do you really want to delete this prezi?

Neither you, nor the coeditors you shared it with will be able to recover it again.

DeleteCancel

Make your likes visible on Facebook?

Connect your Facebook account to Prezi and let your likes appear on your timeline.
You can change this under Settings & Account at any time.

No, thanks

Coding: Children, technology and powerful ideas

BIT15 Presentation (Bring IT Together, November 2015) What's the real benefit of young children learning to code in school? How does coding connect to the Ontario curriculum? Focuses on MIT's Scratch as the primary coding tool for students.
by

Jim Cash

on 6 November 2016

Comments (0)

Please log in to add your comment.

Report abuse

Transcript of Coding: Children, technology and powerful ideas

Why should children
learn to code / code to learn?
Coding and the Ontario Curriculum
How do I "teach" coding?
Scratch vs. ScratchJr
Coding:
Children, technology and powerful ideas

About Me
How are students:
being supported to take charge of their learning (a.k.a. self-regulation, autonomous learning, life-long learning)?
using technology effectively in the service of learning?
being supported to make their thinking and learning visible?
using technology to create, think, share, discuss, reflect and critically analyze ideas?
@cashjim
Multiple perspectives - father, teacher, student
Educational technology resource teacher
Build capacity, share, connect
Constructionist educator
prezi.com/user/jim
Flow
Perplexity
Controlling
Challenging
Agency
Making
Dan Meyer: Teaching for perplexity (not just engagement)
NOT boredom, not confusion
Spent too long chasing "
engagement
"
Perplexity results in a
ripple
, or a
disorientation
, or a
disequilibrium
in the minds of students
Mihaly Csikszentmihalyi described a state of being called
flow
"the state of being
completely involved
in an activity for its own sake"
Indicators include: Clear goals, focused, concentrated, distorted sense of time, immediate feedback, personal control, rewarding
Bo Adams proposes that there might be
one "C" to rule them all
in so-called definitions of
"21st century learning"
The underlying "C" for the other "C" traits is
CONTROL
(of learning)
http://itsaboutlearning.org/2013/03/21/could-there-actually-be-one-c-to-rule-them-all/
Seymour Papert: "I am convinced that the best learning takes place when the learner takes charge, as the young Piaget did."
Hard fun: a term coined by Papert after hearing a grade one student say about coding: "
It's fun. It's hard.
"
Hard fun is akin to "flow"
The "maker movement" is all about
constructionism
(the practical application of
constructivism
) in education today
Coding provides a method by which children can
actively
make their ideas and designs come to life using technology
Papert on "Hard Fun" - http://www.papert.org/articles/HardFun.html
Defines the extent to which students feel that they are
active participants
in their own learning (vs. feeling they are
passive recipients
of knowledge)
Related to a
growth mindset
Similar to
self-regulation

Process Expectations
Opportunities for integration
Clock Challenge (Gr. 8)
https://scratch.mit.edu/projects/86257187/
http://www.hightechhigh.org/unboxed/issue10/mindsets_and_student_agency_contributors/
http://www.edweek.org/ew/articles/2015/09/23/carol-dweck-revisits-the-growth-mindset.html
Scratch Research Papers & Presentations (Source: https://scratch.mit.edu/info/research/)
Math Art (Gr. 3)
https://scratch.mit.edu/projects/86402168/
Sandbox analogy :: Run alongside :: Challenges :: Projects
Some learning from my own experience:

Learn to code and model a
growth mindset
with students. Bugs (mistakes) in programming are
normal
and
expected
.
The hardest thing to do when introducing / "teaching" Scratch to children is to get out of their way.
Hold on to the learning theory that
children are the active builders of their own knowledge
, understandings, and skills.
Demonstrate what you want students to do but stay away from specifics.
Model creative thinking
, the design process and problem solving strategies but don’t do it for them.
If you use coding challenges/projects with students, encourage students to
follow their own instincts and model "growth mindset"
Plan to
allow ample time
so students can explore and play; and provide extra time for interactions between students to discuss what they are doing in their programming.
Don’t get too stressed about "covering" specific curriculum expectations when using Scratch.
Coding with Scratch is a highly integrated
and
complex learning activity
that activates all of the Math Process Expectations
Learning to ride by Chaim Zvi: https://flic.kr/p/g1EVG
Sandbox by Michael Newman: https://flic.kr/p/RJkWk
Benefits of coding to learn
Abstract thoughts are made concrete
Abstract thought processes become visible on the screen
Codified thought can be easily manipulated and controlled by the student
The teacher can also see more clearly what and how a student is thinking
Students can better collaborate with other students
Papert's term: "objects-to-think-with"
Active knowledge building and skill development
Coding is an active task
Successful coding is only possible when students coordinate critical thinking, problem solving and procedural thinking
Papert always intended that programming be purposeful and contextual
Microworlds: Euclidian (Turtle), Newtonian (Dynaturtle)
Quality of knowledge
The second meaning of "quality" - distinctive attribute
Coding allows for direct and immersive experiences with knowledge (e.g., mathematical concepts)
Papert used the example of being immersed in a foreign culture (compared to reading about it)
Syntonic learning - relating one's own sense of movement to that of another (e.g., drawing a circle in Scratch by first walking in a circle and translating those movements into code to create a circle)
Divergent thinking
Coding allows for divergent thinking
Supports "differentiated instruction" strategies
There is no "right answer" in any coding project; the right answer is whatever solution works for the intended purpose of the program
Respects the originality and creativity of children's own ideas and solutions--the act of programming is highly personal and highly self-regulated
https://llk.media.mit.edu/scratch/Learning-with-Scratch.pdf
ScratchJr is a coding app (iOS & Android) specifically designed for young children
Children can create simple programs such as stories, games & animations
ScratchJr is not an app-based version of Scratch but shares its ease of use and coloured coding blocks
More details here: http://makelearn.org/2014/09/16/scratchjr-peel21st-blog-hop/
Thank
Connect with me!
@cashjim
makelearn.org
Link to this Prezi:
https://goo.gl/QdaXqm
you!
Guiding questions in my work:
Coding Project Ideas in Scratch Jr:
Create a coding challenge with a friend but also integrate math curriculum expectations (see video left)
Organize procedural thinking into a concrete creation, such as a narrative
Create a game in which the user has to touch a fast moving character in order to move to the next level
Use the built-in x-y coordinate grid to create/test position pattern rules and transformational geometry concepts
Create a realistic or funny animation, such as a character bouncing a ball and throwing it into a basket
Use the voice record tool to create a word wall that reads a high frequency word out loud when touched by the user
https://medium.com/bright/a-different-approach-to-coding-d679b06d83a
Benefits of learning to code
Computational thinking
Computational participation
Coding as outcome vs. coding as tool
Isolated work vs. contextual production
Designing code + designing applications
Solitary coding + social/shared coding
Original code + remixed code
Access complexity
Coding projects allow children to access a greater degree of complexity than is usually possible in the physical world
Example project: Building a working analogue clock
In the physical world, might lead to frustration due to unforeseen limitations of materials and resources
Children start to get a feel for complex systems
Coding supports the development of programming skills / fluency via ever increasing complex tasks
Process of design
https://llk.media.mit.edu/scratch/Learning-with-Scratch.pdf
Coding engenders learning about the "process of design"
Students start with an idea
Then, they create a working prototype; they experiment, debug it when things go wrong, get feedback from others, then revise and redesign it
A continuous spiral of design
http://scratched.gse.harvard.edu/ct/defining.html
7 CONCEPTS:
sequence: identifying a series of steps for a task
loops: running the same sequence multiple times
parallelism: making things happen at the same time
events: one thing causing another thing to happen
conditionals: making decisions based on conditions
operators: support for mathematical and logical expressions
data: storing, retrieving, and updating values
4 PRACTICES:
experimenting and iterating: developing a little bit, then trying it out, then developing more
testing and debugging: making sure things work — and finding and solving problems when they arise
reusing and remixing: making something by building on existing projects or ideas
abstracting and modularizing: exploring connections between the whole and the parts
3 PERSPECTIVES:
expressing: realizing that computation is a medium of creation, "I can create."
connecting: recognizing the power of creating with and for others, "I can do different things when I have access to others."
questioning: feeling empowered to ask questions about the world, "I can (use computation to) ask questions to make sense of (computational things in) the world."
Full transcript