Ask HN: Curriculum for a Computer Science crash course
I am taking a month off from work to teach computer science at a public school in Mumbai, India. The kids I'll be teaching are from a low income background and have almost no exposure to computer science/programming/software development. They're 14 years old and have a basic math background. I'll have close to 40 hours of teaching time with these kids. The objective of the course isn't immediate employment. I am hoping to get them more interested in the field and maybe get them started on programming on the side.
I need to design a 4 week course for them. Here is what I have right now:
Computer Fundamentals ~ 10 hours (Basic computer achitecture, basic networking, very basic introduction to OS)
Basic web design ~ 4-6 hours (Introduction to HTML, CSS, making a real simple webpage)
Introduction to JS ~ 16 hours (Introducing programming concepts like abstraction, simple JavaScript syntax like functions and variables, basic DOM interactivity)
Make a simple app from scratch ~ 10 hours (maybe a timetable or a to-do app to bring together most concepts we have been learning and get them excited about making new stuff)
Things I am skipping in the interest of time but unsure if I should:
Discrete Math, Logic, Algorithms, Datastructures, Linux/UNIX, Lots of OS, Lots of Computer Architecture, A JS framework like React or Vue, Databases
Do you folks have any suggestions to improve the course? Should I include something key that I am missing?
I understand that I have not included very fundamental CS concepts but I am hoping these are things they can take up if they express further interest in learning the subject.
Appreciate your feedback!
PS: If some of you can donate some Computer Hardware and can ship it to Mumbai, India, that would be awesome! If you are interested, drop me a line at [my hn username @ gmail.com]
Thanks!
7 comments
[ 0.27 ms ] story [ 24.0 ms ] threadTime tables or todo apps may bore many children to death. Maybe you can find a JavaScript-based 2D game engine? That would certainly be more engaging for them.
My .02 cents....
One option is that I believe you can get relatively inexpensive Android devices in India. And there are now environments such as Grasshopper and SoloLearn that allow you to develop in Java right on the mobile device!
I can also recommend CS Unplugged: "a collection of free teaching material that teaches Computer Science through engaging games and puzzles that use cards, string, crayons and lots of running around"
https://csunplugged.org/en/
https://www.linkedin.com/learning/four-semesters-of-computer...
There's another book out of print called The Schemer's Guide by Iain Ferguson, which was geared for highschool students and could be done entirely in pen and paper. You can buy it used off Abe Books or amazon for $10 and just hand out illicit photocopies.