Skip to content

Instantly share code, notes, and snippets.

@remixz
Last active March 14, 2016 20:18
Show Gist options
  • Save remixz/446826d5f51575039fb5 to your computer and use it in GitHub Desktop.
Save remixz/446826d5f51575039fb5 to your computer and use it in GitHub Desktop.
curriculum

Curriculum Plan

note: this assumes that many clubs can only meet once a week. for clubs that decide to meet twice a week, this can be modified to introduce extra hacking time, or to combine a couple of the easier weeks into one.

week 0 - "introduction"

intro, discover member interests, get leaders started, introducing the workshops and "schedule" and stuff

we'll be providing a strict structure for this, so that these first-time leaders can feel confident doing this first meeting. this'll provide a nice confidence boost for the leaders.

as well, members should go through setting up github and c9 accounts.

weeks 1-3 - "computer science is..."

computer science is...

  1. in things you wouldn't expect
  2. useful in everyday life
  3. something you can play with

less technical some concepts more inspirational

give examples of cool projects

week 3.5 - "personal website"

despite numbering, this is a separate week. members will do personal website plus, which'll be a rewritten personal website workshop. members will look back on things they were exposed to, and be encouraged to try something they maybe had no idea about before. they'll also list out things they want to explore more in the future. this'll be good for leaders to get an idea of what their club is interested, and also for us as staff as well. will culminate with demo as we currently have.

weeks 4-6 - "deep dive #1"

in depth on how to do a concept

current working plan is a text adventure. structure will look something like this:

  1. write the story using twine, with its basic syntax and macro features. serves to let the member mostly focus on a story, and not worry about tons of computer science stuff thrown at them at the same time.
  2. recreating their twine story using basic HTML, by creating a bunch of pages and linking them together
  3. recreating/adding to their story by using CSS and JS, including inlining all the story into one file, and navigatable with some basic jquery.

we'll recommend some hacking time as well, so users can try adding more interactivity with JS, or extra styling for specific sections or whatever. demo too. not a fully fledged hack week at this point though

weeks 7-8 - "deep dive #2"

different, more complex topic, now covered in two weeks, since the first deep dive will have gone over a lot of basics using one concept.

introduce interfacing with an API for use in week 9 (see below)

short hack+demo as before

week 9 - "hack week"

hack week (no new concepts) with party try to combine everything you've learned, or build on something from before encourage larger group collaborations, either with creating 1 large project together, or creating a bunch of small things. overall, a very abstract week, used to encourage members to build on everything they've done for the past ~8-9 weeks.

recommend: demo day! pizza special guests!

week 10, 11, 12 - "electives"

having done the hack week, the members should feel confident in creating new things. we'll be creating a bunch of more abstract resources that aren't strictly tutorials, but are more ideas of things to create, and how to go about doing them. we'll potentially introduce new languages, new concepts, just a bunch of kinda crazy stuff. these can kinda be seen as "individual studies", since people can choose from a bunch of concepts. members can still work together though.

post week 12

members have now "finished" our curriculum! this will have been after about 4 months, so members should feel pretty comfortable with coding. we'll still be creating resources for post week 12, but they'll be lots of experimental things, and stuff that assumes some knowledge, or potentially stuff we'd want feedback on. other things these clubs could do:

  • organize a hackathon together, instead of having a traditional meeting for that week
  • work together as a club to create a workshop, for whatever skill level they choose
  • bring in guest speakers from local companies, or have speakers over a video call or whatever
  • any sort of side projects they may have started working on, and maybe want to get other involved in
  • open-source contributions?? that'd be cool i guess
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment