CS, Diversity and Education

I was a middle school teacher for three years before I confronted the reality that teaching public school and financial safety in the Bay Area don’t square up. Especially with a baby on the way. I therefore quit my brief teaching career and enrolled in the most competitive coding bootcamp available. This essay is a reflection as an educator and software engineering professional on what can be adapted to any enterprise seeking to improve outcomes of underrepresented minorities in the tech industry.

It’s never too late to start, but Public Middle School is the key time and place to build long term impact

My fellow students at the bootcamp were mostly young adults, male, and asian or white. There was only a dozen or so of us who stood outside of those traits. And though efforts were made by the organization to attract minorities, it was clear the incoming demographics were not diverse enough.

Studies (1) have shown interest for STEM is either nourished or famished throughout the transition to adolescence. By the time they reach high school, women and people of color have less interest, largely due to a lack of exposure capable of competing with the myriad distractions of life as a female or minority youth. Providing those opportunities and inspiration at the public middle school level should be an educational imperative. Any enterprise seeking to improve this situation needs to acknowledge the right time and place to make the long term difference: public middle school. There’s only so much we can do at the high school level when interest has already dropped.

Be willing to train teachers and teach kids

Many vendors offer resources and materials, but more effort needs to be put into widening the curricular makeup of teacher preparation programs, which are short and lean enough already. For example, MS Math is a great place to introduce computing connections with 2D and 3D coordinate planes, a fundamental for any future front end work. K12 education can’t just be about english and math anymore. Industry should seek to collaborate with teacher prep programs and schools to increase the number of teachers (not just specialists, but all teachers) capable of CS education (2).

Industry should also partner with middle schools, high schools and (community) colleges to run meaningful learning units, workshops and hackathons with effort, investment, real life tools, and real life changing opportunities and rewards for both students and teachers.

Maintain a relationship with families and children

Low SES minority families struggle supporting their children’s educational interests. Limited budgets for enrichment and math anxiety are just two of a number of roadblocks. Because this process needs to start early, any enterprise needs to acknowledge that a reasonable metric of success will follow the middle-school-through-college trajectory of beneficiaries. This means sustaining a close relationship through programs that culminate in scholarships, internships and jobs. It also means providing life changing resources to families. Often, minority families don’t even have the means to secure internet access. (3)

To attract diversity, offer diversity. In time, narrow it down.

A heterogeneous population cannot be served by a homogeneous curriculum. Maxine Williams, Facebook’s Diversity Chief, recently said: “What we look for are people who are very good in two specific subjects: data structures and algorithms.”(4) For the middle school population, the relevance of “Data structures and Algorithms” might not be apparent. Therefore, a child’s budding engineering identity would be well served by a series of scaffolds that bridge their interest towards the hard skills.

Creative computing and collaboration are two solid starting points. At the bootcamp I learned about pair programming, SCRUM, and git (GitHub has recently announced resources for education) which could be easily taught in middle school and above. Maker and STEAM education is particularly well suited to attract a wide range of creative interests that can evolve into more specific CS knowledge. (5) IOT, tech arts and crafts, games, robotics, graphics, and sound will attract a wide audience. Variables and structured programming will follow and build on the creative and collaborative foundation. Eventually, students will be ready for data structures and algorithms, machine learning, AI, full stack concepts, frameworks and more. Or become 21st century artists, which is just as good of an outcome.


  1. Planning Early for Careers in Science (2006)
  2. Universities aren’t preparing enough computer science teachers (2017)
  3. Innovation in East Oakland: The Realities of Keeping Up Outside of Silicon Valley’s Bubble (2018)
  4. Facebook Diversity Chief: ‘We Still Have More Work To Do’ (2018)
  5. Mitchel Resnick: Designing for Wide Walls (2016)