Changes

Jump to navigation Jump to search
no edit summary
Line 23: Line 23:  
Teaching Kids to Code is a program that introduces kids to coding through a series of activities that make use of Turtle in Python. It will act as an introduction to object-oriented programming for late elementary school-aged kids. Computer science is sadly under-taught in the vast majority of public schools, something that will need to change as the subject is recognized for its importance relative to the core subjects (math, science, English, history). Kids need an easily accessible, fun way to learn how to code, starting with an introduction that gives them an understanding of the fundamentals of coding and the opportunities computer science allows, without overwhelming them with all the details.  
 
Teaching Kids to Code is a program that introduces kids to coding through a series of activities that make use of Turtle in Python. It will act as an introduction to object-oriented programming for late elementary school-aged kids. Computer science is sadly under-taught in the vast majority of public schools, something that will need to change as the subject is recognized for its importance relative to the core subjects (math, science, English, history). Kids need an easily accessible, fun way to learn how to code, starting with an introduction that gives them an understanding of the fundamentals of coding and the opportunities computer science allows, without overwhelming them with all the details.  
   −
The basis of the project is that students start with a simple tutorial and are challenged to apply their cumulative knowledge to increasingly difficult games and activities. To make the whole of the program more game-like, the activities will be written in a story-like manner where the turtle is the main character, which can be named by the user. The tutorial will focus on controlling the turtle object’s basic movements with a fill-in-the-blank approach. Once students complete the tutorial, they will be able to apply the learned movements to at least two activities: one in which they move their turtle object to “collect” objects on the screen in a treasure hunt of sorts; the other in which they navigate their turtle through a maze. These activities lead up to drawing-centered games that utilize the skills previously learned in addition to teaching new structures, like for loops, again starting out in a fill-in-the-blank-style tutorial. In one activity, students will be challenged to redraw shapes that are shown on the screen, and they will be scored for how accurately drawn and concisely coded the shape is, and given suggestions for improved code. Students will not be expected to code from scratch, rather there will be a set of constructs to choose from for each line. Finally, using this same pseudo-coding from scratch approach, students are asked to draw one of three prompts of varying difficulty, given according to the score achieved in the shape drawing activity. This is a great opportunity for teachers to set up a final project that will showcase the learned skills of the students, or simply for students to bring together all of their newfound skills in a satisfying way.  
+
The basis of the project is that students start with a simple tutorial and are challenged to apply their cumulative knowledge to increasingly difficult games and activities. To make the whole of the program more game-like, the activities will be written in a story-like manner where the turtle is the main character, which can be named by the user. The tutorial will focus on controlling the turtle object’s basic movements with a fill-in-the-blank approach. Once students complete the tutorial, they will be able to apply the learned movements to at least two activities: one in which they move their turtle object to “collect” objects on the screen in a treasure hunt of sorts; the other in which they navigate their turtle through a maze. These activities lead up to drawing-centered games that utilize the skills previously learned in addition to teaching new structures, like for loops, again starting out in a fill-in-the-blank-style tutorial. In one activity, students will be challenged to redraw shapes that are shown on the screen, and they will be scored for how accurately drawn and concisely coded the shape is, and given suggestions for improved code. Students will not be expected to code from scratch, rather there will be a set of constructs to choose from for each line (similar to the Turtle Blocks activity). Finally, using this same pseudo-coding from scratch approach, students are asked to draw one of three prompts of varying difficulty, given according to the score achieved in the shape drawing activity. This is a great opportunity for teachers to set up a final project that will showcase the learned skills of the students, or simply for students to bring together all of their newfound skills in a satisfying way.  
    
Some concerns that I have are:
 
Some concerns that I have are:
Line 32: Line 32:     
- I am not familiar with any libraries that would be useful in constructing this project, but I am open to suggestions!
 
- I am not familiar with any libraries that would be useful in constructing this project, but I am open to suggestions!
* What is the timeline for development of your project? The Summer of Code work period is from mid-May to mid-August; tell us what you will be working on each week. (As the summer goes on, you and your mentor will adjust your schedule, but it's good to have a plan at the beginning so you have an idea of where you're headed.) Note that you should probably plan to have something "working and 90% done" by the midterm evaluation (end of June); the last steps always take longer than you think, and we will consider cancelling projects which are not mostly working by then.
+
* What is the timeline for development of your project? The Summer of Code work period is from mid-May to mid-August; tell us what you will be working on each week. (As the summer goes on, you and your mentor will adjust your schedule, but it's good to have a plan at the beginning so you have an idea of where you're headed.) Note that you should probably plan to have something "working and 90% done" by the midterm evaluation (end of June); the last steps always take longer than you think, and we will consider canceling projects which are not mostly working by then.
    
* Convince us, in 5-15 sentences, that you will be able to successfully complete your project in the timeline you have described. This is usually where people describe their past experiences, credentials, prior projects, schoolwork, and that sort of thing, but be creative. Link to prior work or other resources as relevant.
 
* Convince us, in 5-15 sentences, that you will be able to successfully complete your project in the timeline you have described. This is usually where people describe their past experiences, credentials, prior projects, schoolwork, and that sort of thing, but be creative. Link to prior work or other resources as relevant.
Line 48: Line 48:  
Send us a link to a screenshot of your Sugar development environment with the following modification: when you hover over the XO-person icon in the middle of Home view, the drop-down text should have your email in place of "logout".
 
Send us a link to a screenshot of your Sugar development environment with the following modification: when you hover over the XO-person icon in the middle of Home view, the drop-down text should have your email in place of "logout".
   −
Send us a link to a pull request or merge request you have made on a Sugar or Sugar activity bug.
+
- Send us a link to a pull request or merge request you have made on a Sugar or Sugar activity bug.
    
It's normal to need assistance with this, so please visit our IRC channel, #sugar on irc.freenode.net, and ask for help.
 
It's normal to need assistance with this, so please visit our IRC channel, #sugar on irc.freenode.net, and ask for help.
Line 54: Line 54:  
If you plan to work on Sugar-Web projects we want to be sure that you're familiar with web technologies, so:
 
If you plan to work on Sugar-Web projects we want to be sure that you're familiar with web technologies, so:
   −
Clone the Sugarizer repository
+
- Clone the Sugarizer repositor
   −
Using instructions here develop your first Sugar-Web activity
+
- Using instructions here develop your first Sugar-Web activity
   −
Send us a screenshot of your new activity executed in Sugarizer
+
- Send us a screenshot of your new activity executed in Sugarizer
 
+
* Describe a great learning experience you had as a child.
Describe a great learning experience you had as a child.
   
* Is there anything else we should have asked you or anything else that we should know that might make us like you or your project more?
 
* Is there anything else we should have asked you or anything else that we should know that might make us like you or your project more?
    
[[Category:2016 GSoC applications]]
 
[[Category:2016 GSoC applications]]

Navigation menu