Jump to content

Menu

Best Computer Science Curriculum for Elementary


Vida Winter
 Share

Recommended Posts

Hello, popping in here to ask about CS Curriculum. I don't know any of the "newer" languages - C++, Python, etc... and I need to tutor a third grader in CS on a long term basis. I can design my own curriculum but would prefer to not re-invent the wheel. Would love to hear some suggestions!

Link to comment
Share on other sites

42 minutes ago, Vida Winter said:

Hello, popping in here to ask about CS Curriculum. I don't know any of the "newer" languages - C++, Python, etc... and I need to tutor a third grader in CS on a long term basis. I can design my own curriculum but would prefer to not re-invent the wheel. Would love to hear some suggestions!

If you have some programming experience in another language, then you will find python to be a joy to teach and learn.  For my elementary kids I designed lessons using Python Programming for the Absolute Beginner by Dawson.  It's written for adults, but hte conceit is that all the projects involve games, so it's very friendly for kids.  I wouldn't give an elementary student the book and tell them to work from it (it's written for adults) but it was easy for me to use as a scaffold for teaching.  

Link to comment
Share on other sites

I have a couple of suggestions for books that could be used as spines.

Background:  Both my husband and I have bachelor's degrees in Computing Sciences and in my last position, I was a technical architect.  My husband set up an IDE for my son last year-ish so that my son could write his first Hello World in Java, but we haven't gotten back to it in quite a while....  2020 and 2021..... 

DK's Help Your Kids with Computer Coding: Scratch and Python mini-projects, true or false, data types, strings, loops.  Written to be very accessible.

https://www.amazon.com/Help-Computer-Coding-Step-Step/dp/1465477322/

DK's Help Your Kids with Computer Science - topics like binary,  what is hardware, etc.  It's written to be very accessible.

https://www.amazon.com/Help-Your-Kids-Computer-Science/dp/1465473602/

 

I've also seen this one, but I don't own it:  I think my son already understands the topics in it, he's relatively advanced in Scratch.

Another DK book:

https://www.amazon.com/Coding-Games-Scratch-Step-Step/dp/1465477330/

 

Link to comment
Share on other sites

6 hours ago, Clickie said:

I have a couple of suggestions for books that could be used as spines.

Background:  Both my husband and I have bachelor's degrees in Computing Sciences and in my last position, I was a technical architect.  My husband set up an IDE for my son last year-ish so that my son could write his first Hello World in Java, but we haven't gotten back to it in quite a while....  2020 and 2021..... 

DK's Help Your Kids with Computer Coding: Scratch and Python mini-projects, true or false, data types, strings, loops.  Written to be very accessible.

https://www.amazon.com/Help-Computer-Coding-Step-Step/dp/1465477322/

DK's Help Your Kids with Computer Science - topics like binary,  what is hardware, etc.  It's written to be very accessible.

https://www.amazon.com/Help-Your-Kids-Computer-Science/dp/1465473602/

 

I've also seen this one, but I don't own it:  I think my son already understands the topics in it, he's relatively advanced in Scratch.

Another DK book:

https://www.amazon.com/Coding-Games-Scratch-Step-Step/dp/1465477330/

 

These are on my wishlist - thanks so much! With so many choices it's nice to get solid recommendations.

Link to comment
Share on other sites

4 hours ago, MeaganS said:

My kids have been enjoying Nintendo switch's new game programming game which has built in lessons. 

They have also been enjoying CS First lessons. Especially my 12, 10, and 9yo.

I had no idea that the Switch had a programming game! Also I will definitely check out CS First Lessons -- I had not heard of it before. Thanks for pointing these out! WTM board never disappoints.

Link to comment
Share on other sites

9 hours ago, Vida Winter said:

Hello, popping in here to ask about CS Curriculum. I don't know any of the "newer" languages - C++, Python, etc... and I need to tutor a third grader in CS on a long term basis. I can design my own curriculum but would prefer to not re-invent the wheel. Would love to hear some suggestions!

I take CS education pretty seriously for my own homeschool and I can say that I was not too happy with any of the CS-for-kids stuff that was out there (when I looked). CODE.org (back when I looked) wasn't too impressive, but some of it is helpful if you want to make use of what they offer.

Back when I looked Many of the CS-for-kids stuff was of the same caliber as the Foreign Language for kids type stuff out there--shiny, colorful wastes of time that are utterly lacking in substance.

My suggestion--which you paid a whopping $0.00, for by the way-- is that that you first map out your course of study and then look for existing resources that fit what you want to cover and evaluate the existing resource from the point of "Does this help me in my quest to teach ABC topic to the level and standard that I want to teach it?"

Back when they were young beginners, I cobbled together all of our IT/CS courses myself.

They learned to build computers by going to Goodwill and Yardsales and buying super old computers that were technically obsolete anyway so if they ruined the machine it wouldn't be a big deal.

I taught them the basic good habits of thinking the problem through and planning a solution out fully before sitting to the keyboard using HTML5 and CSS3 first.  We added in JavaScript once they were proficient with the basics of HTML5/CSS3.

Frankly, I didn't do as thorough a job with JavaScript as I should've but it is what it is. Hindisight and all that, you know?

Once they were able to reliably make some respectable web-sites and basic apps/features with JS then we went to computer programming. One programming book that we've gotten a lot of mileage out of is Programming Logic and Design -- it's basically an explanation of concepts followed by thinking through problems and planning solutions fully using Psuedocode only.

They learn a couple of "mainstream" programming languages as we work through PLaD, using the exact same method that we used for web-coding. It's tedious, but it's been beneficial to have that habit ingrained into them and they're coming along well, I think.

We've taken detours into Game Programming using books, online guides and have learned other bits and pieces as they've come up. We also work through various Coding Challenges (you can find them online)

Having done an "ok" job with coding, I have some strong opinions on how I will probably sequence coding topics for another full time student. But what I think would've been right for my family in hindsight wouldn't be directly useful to you.

I strongly suggest that you spend some time putting together a Scope and Sequence, then look for resources that will serve your purposes.

 

  • Like 1
Link to comment
Share on other sites

25 minutes ago, Vida Winter said:

Gil2.0 - I wish I had time to put together my own program - to some extent I may be able to. Thanks for the detailed explanation and resources!

21 hours ago, Vida Winter said:

Hello, popping in here to ask about CS Curriculum. I don't know any of the "newer" languages - C++, Python, etc... and I need to tutor a third grader in CS on a long term basis. I can design my own curriculum but would prefer to not re-invent the wheel. Would love to hear some suggestions!

If it's a long-term basis then make the kid wait for 1-2 sessions of early tutoring. My experience has taught me that if you want to do a mediocre job on a long term basis, then do not plan first. For every 15 minutes you spend planning and thinking ahead, you save yourself about a month of start-and-stop, going in circles, backtracking, time-wasting nonsense.

Computer Science =/= Programming. If you actually want to teach the broader Computer Science, then it's going to take more intention and design than just teaching a unit in Programming.

So, my opinion is that if it at all possible, then the time that you have carved out to tutor this kid, cancel/postpone the first 2 sessions with him/her and instead sit yourself down and use that time to plan.

I'm not saying sit down and plan/create the first coding projects--designing a coding project to be used as a tutorial is extremely time consuming in the early days (I know!)--I'm saying decide what your first 3 "units" will be and the best sequence for them.

ID the big items in each unit and then ID the sub-items and the skills needed for them.
Look for resources that aid in your specific aims.
Anyway, that's my premium grade opinion which cost you a whopping $0.00 and 37 seconds of your time.

 

 

  • Like 1
Link to comment
Share on other sites

My husband (who taught CS at a University of California) says teaching the algorithmic concepts is much more important than the languages. He likes to start with saying that computer science is just being able to give excruciatingly detailed directions. As for the topics for a 3rd grader he says to start with linked lists, arrays, and bubble sort. He thinks that should take a year to learn well.

I personally think it also depends on the goals for the child how you approach engineering/computer science with kids. Some are really looking for a "see what cool things you can do" to motivate kids to do the hard work to having a career in the field. While some are looking for get my kid to be good at doing the job. I volunteered for the robotics club at my local middle school which is more of a "see what cool things you can do" class. I approached that class very differently than I would when I teach my interns how to do the job. (Even accounting for children vs. adult.) 

  • Like 1
Link to comment
Share on other sites

On 6/30/2021 at 8:44 AM, Gil2.0 said:

If it's a long-term basis then make the kid wait for 1-2 sessions of early tutoring. My experience has taught me that if you want to do a mediocre job on a long term basis, then do not plan first. For every 15 minutes you spend planning and thinking ahead, you save yourself about a month of start-and-stop, going in circles, backtracking, time-wasting nonsense.

Computer Science =/= Programming. If you actually want to teach the broader Computer Science, then it's going to take more intention and design than just teaching a unit in Programming.

So, my opinion is that if it at all possible, then the time that you have carved out to tutor this kid, cancel/postpone the first 2 sessions with him/her and instead sit yourself down and use that time to plan.

I'm not saying sit down and plan/create the first coding projects--designing a coding project to be used as a tutorial is extremely time consuming in the early days (I know!)--I'm saying decide what your first 3 "units" will be and the best sequence for them.

ID the big items in each unit and then ID the sub-items and the skills needed for them.
Look for resources that aid in your specific aims.
Anyway, that's my premium grade opinion which cost you a whopping $0.00 and 37 seconds of your time.

 

 

I am going to work with his current tutor to create a transition plan.  I actually have  a window of time to plan this out (July).

  • Like 1
Link to comment
Share on other sites

On 7/2/2021 at 6:59 PM, Clarita said:

My husband (who taught CS at a University of California) says teaching the algorithmic concepts is much more important than the languages. He likes to start with saying that computer science is just being able to give excruciatingly detailed directions. As for the topics for a 3rd grader he says to start with linked lists, arrays, and bubble sort. He thinks that should take a year to learn well.

Do you know of any good resources to learn this? It sounds really interestjng!

Link to comment
Share on other sites

1 hour ago, MK2222 said:

Do you know of any good resources to learn this? It sounds really interestjng!

My husband suggests Introduction to Algorithms. However it is not light reading so if it's for a child you'd probably have to read it and then tell them what it is.

  • Thanks 1
Link to comment
Share on other sites

How to Think Like a Coder Without Even Trying is written to be very kid-friendly. It could be a very good precursor to Programming Logic and Design which is definitely meant for an older audience and I do NOT recommend it for a child under 13!

Hello Wold! is a coding book that uses Python to teach coding. Very accessible--it was written by a father who was teaching his 11/12 year old son to code.

Once you have a plan for what you're focusing on, come and let me know. I have a huge collection of coding books and resources and I might be able to help you find resources.

 

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...