Resources for Middle School Girls to Learn Programming

While we were at the Junior Achievement Girls Dream Fair a few months ago, a middle school girl came up to our booth. She went carefully through a sheet of questions, writing down my answers word for word.

“Anything else you’re curious about?” I asked when she was done.

After a pause, she asked, “Is computer science hard?”

I told her yes, it was challenging at times, but that it was so rewarding to see a final product like a website or a phone app being used in the real world and know that I was part of building it.

She said that sounded like a fun job. I agreed.

Why it Matters

Early this spring, Atomic Object hosted BitCamp, a day-long event teaching seventh- and eighth-grade girls how to create websites. By the end of the day, each girl had built a website reflecting something she was interested in (e.g. horses, chickens, Harry Potter, Hollywood, and even the band My Chemical Romance). At the end of the day, one girl said she hadn’t thought she was “smart enough” to create a website, but BitCamp gave her the tools to do so.

Events like the Dream Fair and BitCamp introduce middle school girls to careers they might not have considered, sparking their interest and building their confidence. Of course, these events are just the first step.

I learned about HTML & CSS during a middle school computer class. Excited to try things out on my own, I spent hours learning how to build a basic webpage. But after building a couple of web pages, I lost interest because I didn’t know what the next step was or how to keep learning.

The resources below are about taking that next step. I hope they will help middle school girls continue to develop their interest and hone their skills.

Programming Resources for Girls

Online resources

There are a lot of free resources available—so many it can be difficult to know where to start.  Here are some available online (roughly ranked by difficulty):

  • – Free. This site has content for pre-K to high school. There is an intro-to-web-development unit and a game development unit geared toward middle schoolers.
  • Khan Academy – Free and fun. The content is somewhat more advanced than the middle school content. There are intro lessons for HTML/CSS/JavaScript (the languages to build a website), as well as a well-done intro to SQL (the tool to store and access data).
  • Scratch – Free, and because of the visual content, well-suited for elementary kids & middle schoolers. Scratch lets one build things by moving visual blocks of code around, which is good for visual learners. A downside might be the dissimilarity between coding with the visual blocks and writing code for a website.
  • Alice – Free. Somewhat like Scratch, it lets you create a program using blocks so you don’t have to worry about syntax errors in your code. Unlike Scratch, it generates code from the visual blocks, making it easier to transition from coding with blocks to typing actual code.
  • Codecademy – This is a mix of some free courses and some paid courses. While not meant explicitly for middle schoolers, it provides lessons that start from the very beginning (check out the intro HTML/CSS/JavaScript lessons).
  • Codemancer – This fantasy game teaches coding. It currently costs $25 and is geared to 9- to 14-year-olds.

After picking up the basics from the resources above, try making a website about something that interests you. There are so many possible subjects and a lot of resources to learn from online. Building a basic website (and learning how to Google things you don’t know) can be a rewarding experience.

You can also test out and get CSS ideas with CodePen. This gets pretty advanced, since CodePen has complex tables/graphics etc. However, once you understand the fundamentals of how HTML and CSS (the tools to build the visual part of a website) work, this is a great way to experiment and learn more.

Resources through your school

  • School programming class. – Your school might offer a programming class. Check it out! can help you find a local computer science class.
  • FIRST Robotics – This robotics competition club is offered at a lot of schools.
  • Girls Go CyberStart – This team event offers “fun and interactive series of challenges” related to security. A school can create a team of one to four girls. The team then works on solving cyber challenges.
  • Hour of Code – Check to see if there is an event nearby.
  • Girls Dream Fair – This day-long event introduces middle school girls to STEM-related fields. Junior Achievement partners with schools in creating this event. If your school doesn’t attend this event, reach out. JA will be happy to talk to your school about participating.

Resources in Grand Rapids

  • Girls Who Code – There are three Girls Who Code locations in Grand Rapids (Grand Rapids Catholic Central, Calvin College, and Cornerstone). The clubs range in level from beginner to advanced, so there is a lot of room to learn. Calvin College offers three levels, and you can register here.
  • BitCamp – This day-long event is designed to help seventh- and eighth-grade girls to create a website and learn about the software development process.
  • STEPS – Grand Valley State University offers this science & technology summer camp for middle school girls.
  • WMCAT – West Michigan Center for Art and Technology offers summer camps for middle school and high students from any school district.
  • Meetup and Eventbrite – It’s good to keep an eye on these sites for intro-to-coding events.

A Few Recommendations

One-time intro events are a great places to start. However, since learning to code takes time, I would recommend enrolling in a recurring class if possible. Girls Who Code clubs or a programming class at your school (check might be a good choice for recurring classes.

If classes are not an option, a mix of at-home learning and one-time events might also be a good route. I would recommend choosing an “on-her-own” option that seems like a good fit, and then attending one-time events such as Bitcamp, JA Girls Dream Fair, or a summer camp to provide context and motivation.

What has worked for you or your middle schooler? Are there any resources available in Grand Rapids that I’ve missed?