R.W.'s Professional Portfolio đĢ đŗī¸ââ§ī¸
Table of Contents
Email: rsingh13 -at- jccc -dot- edu
đ Home | đ My courses webpage | đī¸ My course repositories | đšī¸ My games and zines
1. Resource links
I keep a lot of my course resources and tools on my gitlab.com/rachels-courses group on GitLab. These items are free for anyone to use, change around, etc. Generally, they're licensed as Creative Commons with Attribution.
1.1. Free, hand-made course resources (no AI)
Canvas HTML page templates Pages and designs built to work with Canvas Pages, with instructions on how to copy/paste into your course.
1.2. Web applications
Syllabus Filler-Outter A tool that has a template of the JCCC syllabus and swaps out the [[ ]] blocks with text you enter in the toolbar.
Image alt-text library A tool where you can upload an image AND its alt-text, and the uploaded image has the alt text automatically set for you.
1.3. Written resources
Intro to Game Programming A course I taught for JCCC CE for kids grades 4-6 and 7-9
Creative Coding Another programming course I taught for JCCC CE for kids grades 4-6 and 7-9
- Course homepage - The notes I provide to students for the semester.
- Discrete Structures archive - An archive of the resources I've made for CS 210 and CS 211 at JCCC and CS 191 at UMKC.
- Discrete Structures notes - My old notes on Discrete Structures topics.
1.4. Video media
1.5. Games
1.6. Example code
- API Scripts - Example code using the Canvas LMS API, examples with Python, PHP, and Curl.
- CLI Manager for Teachers - A command line based program to run operations on Canvas courses via the API.
- Class utilities - Bash scripts to clone repositories, sync, copy files, etc.
- C++ Utilities - Common functionality I use in C++ a lot, often use these functions in course assignments.
- Example code for class - A repository of example code, mostly for my CS 200 and CS 235 classes in C++.
- Plaintext data files and generators - When an assignment needs data, I grab stuff from this
- CuTEST - The C++-based unit test framework I wrote. (Kinda old)
- Course building files - Graphics, ideas, etc. (Kinda old)
1.7. Additional work
1.7.1. Virtual pets
Spring 2026 I set up a thing where I drew virtual pet sprites which would "evolve" over time as students got further in the course. At the start of the semester I asked them to name their "egg" pet, and showed the list of eggs at the top of the page. The purpose is to give a visual representation of progress in class, gamify progress, and engage students with cute art and having an investment in a virtual pet.
Egg
Baby level
1.7.2. To Do list
I've created a better "to-do " list of things to grade that updates automatically by utilizing the Canvas API.
1.7.3. Lab report
I made a tool where students can generate a "lab-report" by uploading their code files for the weekly lab and the report will generate a "diff" of which lines of code have changed, and be downloadable as an HTML file. Students can then upload this file into Canvas as their submission, making grading easier for me.
2. My ramblings
2.1. Presentations
- 2026-08: Software Is Political
- 2026-01: All my AI notes
- 2025-08: Artificial Intelligence: What Should Professors Know? (synergizED)
- 2025-04: Why students cheat and designing courses for student buy-in
- 2025-01: Accessibility Guidelines for Canvas design - An overview of Web Content Accessibility Guidelines (WCAG) 2.1
- 2025-01: Takeaways from "The Norton Guide to Equity-Minded Teaching" and "Cheating Lessons: Learning from Academic Dishonesty"
2.2. Blog
- 2026-05-15: Spring 2026 Semester Reflection
- 2025-09-22: If you're gonna use AI at least double check it
- 2025-03-11: Simulating Real World Codebases and Thwarting Gen AI
- 2024-08-20: What gender means to me
- 2023-12-14: Spring 2024 preparation
- 2023-12-14: Fall 2023 reflections
- 2023-09-25: What students want in a teacher
- 2023-08-01: Classroom modalities
- 2023-07-11: Lessons learned from group programming assignments
- 2023-05-01: Perks of Peer Review
- 2022-05-11: GWC games
- 2022-04-14: Preparing for Summer 2022
3. About R.W. Singh
I am R.W. (Rachel Wil) "Moose" Singh (he/him/they/them)
Role: Associate Professor, Computer Science, Johnson County Community College
3.1. Skills overview
- Tools: C++, Java, C#, Python, Lua, JavaScript, HTML, CSS, Git, Linux, emacs, RESTful APIs, BASIC for Vic-20 :)
- Technical: Software development practices, Agile scrum, Free/Open Source software, retro computing
- Teaching: Course design, curriculum design, flipped and hyflex classroom design, Canvas LMS
- Social: Accessibility in web and course design, learning about culture and language serving "non-traditional" students, diversity equity and inclusion, inclusivity towards LGBTQIA+ members, designing for neurodivergence/ADHD/Autism, designing for remote students, etc.
3.2. Courses I teach
At Johnson County Community College
- CS 134: Programming Fundamentals
- CS 200: Concepts of Programming Algorithms Using C++
- CS 235: Object-Oriented Programming using C++
- CS 250: Basic Data Structures using C++
And I have taught these previously, but not recently:
Elseware
- CS 201R: Problem Solving and Programming II at UMKC
- CS 191: Discrete Structures I at UMKC
Additional work
- JCCC Center for Teaching and Learning Faculty Fellow, 2025 - ?
- JCCC AI Taskforce committee, 2025 - ?
- JCCC Continuing Education - Intro to Game Programming, Creative Coding classes.
- Mentoring new teachers, helping others learn about how to use Canvas LMS.
- Hosted CodeDay at JCCC, Fall 2024.
- Gave Professional Development talks, Spring 2025.
- Participated on a Peer Review Commitee, 2023-2024.
- Volunteered for JCCC's Homeschool Day for the past 3 years.
- Participates in the Teaching & Learning group on campus.
- Advisor for the Developing Diversity in STEM club. Backup advisor for the JCCC Cybersecurity club.
- Girls Who Code / Let's Code! club JCCC chapter - Instructor / organizer. Jan 2018 - Dec 2022.
3.3. FAQ
- Why are you a "Singh"? My husband is from Uttarakhand, India! We've been married since 2017.
- Why is your nickname "Moose"? Long ago I used to play Ragnarok Online and my character wore antlers because I thought it was funny, and then "Moose/Moosie" became my online nickname.
3.4. Background
I was originally born in Washington state but have lived in the KC Metro area since I was a pre-teen. My sister and I were homeschooled, and I began taking computer science classes at a local community college starting at the age of 14. I went on to UMKC for my Bachelor's in Computer Science and graduated with my BS in 2009.
I've worked in software and web development since 2010, though I've also been programming video games on my own since 2000 (working with C++ since 2002, when I was 14), and developing my own websites and Android apps on the side as an adult. I've worked at various sized companies, including Perceptive Software and Epiq Systems. Most of my work professionally has been with C++ or C#, as well as HTML, CSS, JavaScript, and various flavors of SQL.
I self-publish indie video games as well as cartoons in Esperanto in my spare time. I am currently also learning Hindi so that I can communicate with my husband's family better. I also enjoy bird watching and learning to grow vegetables.
3.5. Teaching philosophy
(Work in progress)
I believe that education should be accessible and available to everybody. As I create educational resources for my courses, I also share those resources for free online, for other teachers and for students who may be self-studying or needing to supplement a class they're taking.
I come from a working class family and I understand the challenges of managing life, expenses, and other responsibilities with trying to build a better future through college. I believe in creating classes that serve and train the students by providing them with all the resources they need to learn, and not punishing students for having other responsibilities in their lives.
I also come from the industry, where I worked as a software and a web developer. I believe in teaching my students about software development practices, use of source control and other important development tools, being aware of current trends in tech, and understanding the ethics of tech and ways bias can creep into designs. Beyond just pure C++ programming, I also provide opportunities for my students to learn and discuss these things.
I believe that anybody who wishes to learn to program can learn to do so. It can be a challenging topic, but we all face challenges in our lives - challenge and difficult doesn't mean impossible. I see myself as a guide to help students build a foundation and learn how to learn and problem solve as they learn the nuances of programming. I am not here to gatekeep technology, but to be a resource.
3.6. Experience
See my LinkedIn to view my full work history or connect!
Teaching experience
- "Beginner's Guide to Game Programming" tutorials, 2009 (Link) and teaching others to code online, independently.
- Longview Community College Math Lab tutor, 2004 - 2006?
- Teaching assistant at UMKC, 2013
- Adjunct instructor at JCCC, 2016 - 2019
- Assistant professor at JCCC, 2020 - 2023
- Associate professor at JCCC, 2023 - current
See my LinkedIn for my professional software developer history!
Education
- Self-taught programming in C++ since 2002.
- Graduated from Longview Community College with a A.S. in Computer Science in 2006.
- Phi Theta Kappa
- Math Lab tutor
- Graduated from University of Missouri, Kansas City with a B.S. in Computer
Science in 2009.
- Upsilon Pi Epsilon
- Cum Laude
- In and out of grad school, 2013, 2017, 2018. :)
Additional volunteering
- KC Mutual Aid - participant and volunteer - 2025.
- Volunteer piano teacher - 2025.
- Girls Explore Tech - Helper - various years.
- KC for Refugees - Volunteer/tutor/mentor - Jan 2018 - Present.
- Boy Scouts of America - Merit Badge Counselor - 2013 - 2014.
- CCCKC 501c3 - Director of Web Design (2012 - 2013), President (2014).