/r/CSEducation

Photograph via snooOG

A community for computer science educators and education researchers. Discussion and links of CS ed research, best practices, pedagogy, curriculum, policy, etc.

A subreddit for computer science educators and education researchers. Discussion and links of CS ed research, best practices, pedagogy, curriculum, policy, etc.

Related websites:

  • SIGCSE -- the largest professional organization of CS educators, a special interest group of the ACM
  • The Computing Portal -- resources and the like

The Reddit Education Network:

  • /r/Education: A place to discuss the news and politics of education.

  • /r/AdultEducation: A place for adult educators to discuss tips and tricks to engaging an adult audience.

  • /r/ArtEd: A place for art educators to discuss the importance of art education and to share and collaborate on resources.

  • /r/CSEducation: A place for computer science educators and education researchers.

  • /r/ECEProfessionals: A place for early childhood educators to learn, grow, and contribute as professionals.

  • /r/ELATeachers: A place for English teachers to share ideas and lessons and to brainstorm and collaborate on new curriculum.

  • /r/HigherEducation: A place to discuss and share articles related to higher education.

  • /r/HistoryTeachers: A place to discuss and share resources for history educators.

  • /r/ScienceTeachers: A place for science educators to collaborate on and contribute tips, ideas, labs, and curricula.

  • /r/SpecialEd: Where special education teachers can discuss and share resources related to the education of students with special needs.

  • /r/Teachers: A place to discuss the practice of teaching, receive support from fellow teachers, and gain insight into the teaching profession.

  • /r/TeachingResources: A great place to share and discover teaching resources, such as demos, blogs, simulations, and visual aids.


Recommended subreddits and websites:

  • /r/slp: Speech-Language Pathology


Other Related subreddits:

/r/CSEducation

25,238 Subscribers

1

Looking for advice!

Just started coding, and created a little To-Do List program as an executable file on my desktop. I was wondering is there a place I can post my program so they can download it and check it out? Thank you for your time.

2 Comments
2025/02/01
02:44 UTC

4

STEM/STEAM Teachers! What do you think would make an effective and engaging education tool? (Student Project)

Hi all! I'm a student studying Product Design at the University of Minnesota. As a part of a course focused on product innovation, we're partnering with the Engineering Ambassadors Network to develop a new STEM/STEAM education product to teach students about core scientific and engineering concepts! As a part of the project, I'm doing user research to get a better idea of the current needs, wants, and experiences of educators and students.

If you have a few minutes and would be willing to answer some questions through the link below, I would greatly appreciate any input you may have! Your responses will help us develop a final product that is engaging, educational, and meets the needs of educators and learners.

Thank you in advance for your feedback and let me know if you have any questions!

https://docs.google.com/forms/d/e/1FAIpQLSesfV_9HPKAlh-8STE1WCS5kUdfpvuZQXiTGDd5j2ACO6Lr3w/viewform?usp=sharing

0 Comments
2025/01/26
19:10 UTC

6

High school Computer science teacher

I'm new to teaching and could use some advice. I have a degree in Computer Science and experience in IT support and cybersecurity, and I was recently hired to teach high school kids cybersecurity and IT in general . Also help them prepare for IT certifications . Most of the kids have very little knowledge about IT, so I'm trying to figure out the best way to approach this.

Initially, I thought about introducing some simple lab exercises on TryHackMe but I’ve realized I should probably start with IT fundamentals first. For now, my goal is to teach the basics, keep them engaged, and gradually build their knowledge.

How do you typically start with students this age? What strategies do you use to keep them busy and interested? Are there any beginner friendly curriculum or resources you’d recommend?

I’ve already registered as an instructor on TestOut, but I haven’t heard back yet. Any advice or tips would be greatly appreciated. Thanks!

12 Comments
2025/01/23
18:36 UTC

1

p5.js / Processing is at base of Khan Academy coding, codeguppy.com and some code.org labs. Examples 👇

Since Processing API is powering both Khan Academy coding platform and codeguppy.com, see below a few projects ported between these platforms:

https://preview.redd.it/m7zeyfeiasee1.png?width=1000&format=png&auto=webp&s=292b8e8c500200d29edf9a3aa2e44c069d373cbe

https://preview.redd.it/6s4riy0masee1.png?width=1000&format=png&auto=webp&s=94c8f722161e2a2bd7fe03096791b5796f7e6e12

https://preview.redd.it/eugw7cwnasee1.png?width=1000&format=png&auto=webp&s=908149df85863b093f93a2880f4424f6a49268c8

https://preview.redd.it/q5dcgwopasee1.png?width=1000&format=png&auto=webp&s=20e1acd5e5ef8f0f3183d9ba505858f6565f9c1f

https://preview.redd.it/s0z5k4drasee1.png?width=1000&format=png&auto=webp&s=b199132e5e97eea236abc6b2b5b6fd770f2c6967

https://preview.redd.it/lhs3l5hsasee1.png?width=1000&format=png&auto=webp&s=58197fce0bdb6b1a34d6c272a4a3adcf7b441dce

https://preview.redd.it/kphzahptasee1.png?width=1000&format=png&auto=webp&s=9909a0268ee01f2fd7cccc8a6a61fb61fa418a57

https://preview.redd.it/0q4lkoquasee1.png?width=1000&format=png&auto=webp&s=eabf440cf7bc26117d83278ed4048ba158c61349

https://preview.redd.it/bb1s9uwvasee1.png?width=1000&format=png&auto=webp&s=3eb7ced3d3c63a0014308a7832803d44639acc70

https://preview.redd.it/be030zexasee1.png?width=1000&format=png&auto=webp&s=9ed157c32db4e4bfe49558837c286e7bd875aa16

https://preview.redd.it/8qpq2p4zasee1.png?width=1000&format=png&auto=webp&s=e8c11287f9e3b3249adceda7bb7547b17a70c503

https://preview.redd.it/l4v4sjd0bsee1.png?width=1000&format=png&auto=webp&s=cb0aa20844b09f842e48369a24a0bcd0729d765d

https://preview.redd.it/duhid8q1bsee1.png?width=1000&format=png&auto=webp&s=30e1d1c8312ac95f4c894ab0b55c7deca8c22c10

https://preview.redd.it/ioamtrf3bsee1.png?width=1000&format=png&auto=webp&s=5cd06653e0cbc1238d20d018c542758abcdb0fbc

https://preview.redd.it/lldyr5y4bsee1.png?width=1000&format=png&auto=webp&s=77bc2e8fac52fe3af5459323dbc24fdf7b425ecb

https://preview.redd.it/t412r9j6bsee1.png?width=1000&format=png&auto=webp&s=c947fa7d3c7e286e7e2553dcd0717d6f9a19cae5

I hope you had fun exploring these programs.

Happy coding!

0 Comments
2025/01/23
18:13 UTC

2

Teaching programming to students with poor logic skills.

I have a bunch of students in my classes , with relatively low target grades, but do well enough in (GCSE Computer Science) theory paper 1 topics, who , when put into isolation, can understand the individual parts of syntax correctly and will normally be able to point out what any line of code means, they will really struggle with anything they have to craft themselves, even basic stuff like calculating a discount in item. Has anyone got any strategies that are effective at developing those skills?

2 Comments
2025/01/23
14:38 UTC

1

JavaScript with begin ... end

Hello community,

I run a small free JavaScript coding site for code newbies, CS teachers, schools, etc: codeguppy.com

What I've noticed is that most beginners have a hard time to properly open and close the { ... } for functions, code blocks, etc.

I was playing with the idea of introducing a simpler "javascript" to codeguppy.com -- where basically the symbols { } are replaced with begin ... end.

A simple pre-processor will replace begin ... end with the proper { ... } before sending the code to execution to the JavaScript engine.

Looking forward to your feedback on this. Do you think this will make coding more approachable to beginners or will create confusion later on when they will have to remove the "training wheels"?

Please see below how a function will look like (converted from the Breakout project on the codeguppy.com site):

function createBricks()
begin
    let noBricks = Math.floor((width - brickSpace) / ( brickWidth + brickSpace ));
    let arBricks = [];

    for(let row = 0; row < 3; row++)
    begin    
        for(let col = 0; col < noBricks; col++ )
        begin
            let x = col * ( brickWidth + brickSpace ) + brickSpace;
            let y = row * (brickHeight + rowSpace) + rowSpace;
            
            let brick = { x : x, y : y };
            arBricks.push(brick);
        end
    end

    return arBricks;
end
1 Comment
2025/01/22
03:29 UTC

4

First year IT teacher seeking teaching advice.

Hi everyone!

I'm in my first semester of my second year teaching (so still very new!) and I'm teaching Principles of IT, Computer Maintenance, and a Technician Practicum. My background is in the IT field, not education, so I'm looking for some guidance from experienced teachers, especially those who have taught similar subjects. I'm trying to figure out the best approach for delivering the material. I'm considering a few options, and I'd love to hear your thoughts: Online Curriculum/Platforms: Are there any recommended online resources, platforms, or curriculum that you've found effective for these subjects? Lectures vs. Hands-on Activities: What's the best balance between traditional lectures and hands-on activities? I'm working with limited resources (budget and equipment), so I'm trying to be creative. Project-Based Learning: Has anyone had success with project-based learning in these areas? If so, what kinds of projects have worked well?

Any advice, resources, or personal experiences you can share would be incredibly helpful! Thanks in advance!

3 Comments
2025/01/22
01:18 UTC

1

Introduce students to Machine Language and low-level programming by building an emulator for an educational CPU in JavaScript (the easy way)

This series of numbers represents a real program that calculates the Fibonacci numbers.
The program is written in a machine language for an educational CPU:

11,0,10,42,6,255,30,0,11,0,0,11,1,1,11,3,1,60,1,10,2,0,20,
2,1,60,2,10,0,1,10,1,2,11,2,1,20,3,2,31,2,30,2,41,3,2,19,31,0,50

By implementing this educational CPU in JavaScript, you'll get the chance to teach students about CPU architecture, machine languages and other low-level concepts.

Further reading:

➡️ Article
https://codeguppy.com/blog/fantasy-cpu-emulator/

➡️ Interactive playground
https://codeguppy.com/code.html?t=simple_vm&list=math

0 Comments
2025/01/21
16:43 UTC

20

Guide Your Students Through Code with Code Playbacks

I created a tool to guide students through code examples. It combines the best aspects of books, online tutorials, and videos. I call them ‘code playbacks’, and they allow an instructor to guide learners through a complete coding session, step by step, with explanations.

Here’s how it works:

- It’s an open source VS Code extension called ‘storyteller’ (repo here: https://github.com/markm208/storyteller, more info here https://markm208.github.io).

- Write code with VS Code, run it, refine it, and then go back and tell your story about it. Add whiteboard style drawings, screenshots, videos, and self-graded multiple choice questions.

- The playbacks created by the tool are just static web pages that you can share anywhere.

Example Code Playback

I have built most of my programming-focused courses around code playbacks. I don’t assign textbooks anymore. I present the playbacks during my lectures in class too. My students really like them.

Previously, I hosted all of my playbacks on a GitHub Pages site (this is a good option for most people). I wanted to add some more features to know who was viewing them and to add an AI assistant so I created a dedicated site to share my code playbacks, Playback Press (https://playbackpress.com/books).

I’ve written about a dozen ‘books’ of code playbacks that are available for free (C/C++, Python, Clojure, Elixir, SQL, Web Dev, and more). Each playback on PP has a built-in AI assistant to answer student questions about the material and to generate multiple choice questions. Feel free to use these in your classes.

There is a login required to get full access to all of the playbacks and to use the AI assistant. I do have to pay for hosting and AI API access so I limit some features to logged in users. It may look like I am trying to sell something here, but I am not. It’s all free to use.

I’ve been thinking about exploring something new. With the rise of students using AI tools when learning, I think having students create their own playbacks to explain their work with an AI assistant could be a valuable part of the learning process.

If this sounds interesting, or if you’d just like to try using playbacks in your classes, I’d love to connect. I’m happy to discuss potential collaborations.

4 Comments
2025/01/19
22:56 UTC

2

CT Intro Class

I am a high school math/SPED teacher and I am looking to develop a curriculum for a half year intro course on Computational Thinking. My goal is to create engaging activities to understand decomposition, algorithmic thinking, abstraction, and pattern recognition. I do not want to delve into programming much, and want to primarily focus on how computational thinking and math are related (the course is a math credit). Looking for ideas for lessons, projects, programs, curricula, books/articles, etc.

1 Comment
2025/01/17
16:28 UTC

2

Front-End Engineer Seeking Internship - [Ludhiana, Khanna, Remote]

Hi everyone, I'm a passionate and highly motivated Front-End Engineer with experience in building and maintaining engaging web applications. I'm currently seeking an internship opportunity to gain practical experience and contribute to a dynamic team.

My Skillset:

  • Frontend: React, Redux, JavaScript (ES6+),Next.js
  • Backend: Node.js,Express.js
  • Tools: Git, GitHub
  • Other: GSAP, eager to learn Three.js, Flutter, Cloud computing.

Projects:

  • Pet-us, 1Management, Passwords, websites, etc.

Looking For:

  • An internship opportunity at a company that values innovation and provides a challenging and supportive learning environment.
  • The chance to work on real-world projects and contribute to the team's success.
  • Mentorship and guidance from experienced engineers.

I'm eager to learn and grow, and I believe I have the skills and dedication to make a valuable contribution to your team. Please feel free to reach out if you have any questions or would like to discuss further.

Thank you for your time and consideration

0 Comments
2025/01/16
08:55 UTC

10

What tools are you using to teach computer science in your classroom

Hi teachers! I’m curious to know what tools or platforms you’re using in your schools to teach computer science to students. Are you using tools like CodeHS, Scratch, or something else? I’m particularly interested in tools that are effective for engaging students and making coding fun and accessible. Any recommendations or insights would be greatly appreciated!

14 Comments
2025/01/11
06:35 UTC

1

Career

Computer science

I'm looking forward to go back to school and start a new career as computer engineering is my goal. I'm starting to look schools for computer science and start from there. I work Monday to Friday 7a to 3pm and a lot of the time 7a to 7p. I'm located in Connecticut US. My question is what accreditation I need to start? What school is best nearby and if it's possible to do it online ? I ve seen that some classes are available and degrees online but I don't want to make a mistake that is not going to help me achieve what I want. What do you recommend? Thanks

9 Comments
2025/01/09
15:45 UTC

3

SWE doing master's in UX

I am a computer engineering major, worked for 2 years as a SWE contractor for Microsoft (don't be fooled because my employer company had zero ownership over the dummy work we used to do for Microsoft). Then, I quit to do master's in interaction design which focuses mainly on product and UX design. I thought that'd be my best bet given the current market status and my shitty job that was only wasting my time and harming my experience. Now, I am having a bit of an identity crisis. I have to work on my design portfolio and at the same time I feel the pressure to stay prepared for SWE interviews. Is it doable to job hunt for both kinds of roles?

3 Comments
2025/01/04
10:06 UTC

14

What makes a college CS program good

Researching colleges but i don't want to just take people's word of what colleges are good for CS. What qualities should I be seeking out?

7 Comments
2025/01/03
03:53 UTC

7

Cloud Development Environments for Students in Highered

Hi, all. I am a computer science professor at UCCS. I have been building a platform for my advanced software engineering course that orchestrates container deployments for my students. We used Cloud9 as a free platform a few years ago, but Amazon purchased it and paywalled it. Since then, I've tried having students use VirtualBox to run VMs for my classes. That was problematic because the school gave out Chromebooks; for some students, that is all they had. I tried to self-host VMs for students, but that took a lot of time to configure and scale for > 100 students, and I was tired of providing technical support to 10+ students a week on their laptops. Over the last two years, I've been developing my platform, and I wanted to share that with you. As an educator, you can create an account, create a course, and assign development environments to the course. For example, I use Django in my class, so I create a Django environment where I can specify the version of Python and Django each student gets. Each course has an enrollment link that students can use to enroll in your class. They can see the pre-defined environments you've made and create containers using that environment. Students access the containers using their web browser, where they can access VSCode with a built-in terminal. From here, they can install any additional requirements using the package manager. It's been working well for UCCS, and I want to grow my offering. The app is free for teachers, and students can purchase credits through the app. We also work with bookstores for bulk orders where they can purchase licenses like they would a book. If this interests you or you want to learn more DM me or checkout https://www.devedu.io. I've attached a video below of a brief demo between a teacher and a student.

For students not interested in purchasing a license for the platform, we offer all of our docker images as open-source software so they can host the environments locally on their laptops.

DevEdu Demo

0 Comments
2024/12/29
20:15 UTC

14

What are your personal favorite CS curriculums? Java or otherwise

Hi all,

I'm working on creating educational resources for modern (i.e. no public static void main(String[] args) required, no "objects first" bs) Java.

As part of that I want to create some more full curriculums as well. In your experience: what works in a curriculum? What are you looking for?

Trying to get a wide range of input + any resources I should be looking at.

(If you want a preview of the general shape I am going for, this book has the rough topic order I am aiming for https://javabook.mccue.dev)

2 Comments
2024/12/24
06:24 UTC

6

Reminders of Creativity through Office Decorations

Teaching large scale university level courses can often lead to a minimization of student creativity in favor of quick objective grading and feedback including automatic grading. With that in mind, I updated my office decorations to try to help encourage and remind students that creativity is part of computer science, and that they should continue to seek inspiration and grow their creativity while pursuing their academic journeys in Computer Science.

3 Comments
2024/12/23
18:49 UTC

0

Wanna work on an advanced data exchange platform?

Hi there, This is the founder of Mega Mind Co. , this is my second venture and we have just started this new startup in November. Currently we are working on a project titled: Smart Mobility Data Exchange that is gonna be a B2G project. Where we are gonna implement various techniques to track and use Mobility Data like vehicles and other relevant data in solving various problems ranging from traffic optimization to improving the whole transport stack.

If anyone is interested in working on this project, please let me know. Currently we are only having 10 vacancies, we are also gonna provide you with training as well.

Interested candidates please apply at https://megamindco.com/smdx/

For any queries feel free to reach out to me either on discord or write to me at i@hardiktiwari.com

2 Comments
2024/12/23
18:20 UTC

4

Are you incorporating game design to teach coding? If so, how effective do you find this platform for teaching JavaScript and game design? I’d appreciate any feedback you have to share. (see below some game examples)

3 Comments
2024/12/20
15:43 UTC

7

What could I buy for my computer science and cybersecurity classes that is not technology or software?

19 Comments
2024/12/12
00:39 UTC

36

I'm already sick of AI

I'm new to this sub so I apologize if I'm beating the dead horse here. I'm just finishing up teaching hs intro to programming for the first time (I've only taught math before this year), and I really enjoyed it! I taught the course in Python and developed a lot of my own materials in the process of teaching. I want to keep teaching the course, but I am already feeling a bit defeated by AI.

I made it explicitly clear at the start of the year that if I catch anyone using AI to generate code, zeroes and detention will be given. The problem is that it's very hard to catch. It's not like writing an English paper where it's obvious in the writing style. Functional code is functional code. There are times I've suspected it, but students deny using AI and then there's not much I can really do.

I've tried having them write about their code functionality. I've tried giving paper quizzes. I still genuinely think a lot of them are using it for major projects and then taking the hit on quizzes. I'm trying to figure out what I'm going to do differently next semester to avoid this same situation...

25 Comments
2024/12/11
00:30 UTC

5

9 weeks to teach game design

I'm piloting an honors level "survey" of programming course at my high school and I want to spend the 3rd quarter on game design because it's been a much requested topic.

This is an honors level class and many of them came in with some level of programming knowledge, so I was thinking about C#/Unity. I was a software engineer in my pre-teaching career, but game design is not my area of expertise.

Any thoughts of where to start? There seems to be some fairly decent amount of stuff on the "Teach Unity" website, but it's a lot to filter through. I want to focus on actual game design in addition to writing code.

8 Comments
2024/12/10
17:00 UTC

5

Looking for Teachers to Test Our GitHub Classroom Alternative

Hi educators,

Our CS department has spent the past three years creating an alternative to GitHub Classroom. While it shares features like creating repos from templates, our platform focuses on:

Feedback Over Scores: Use GitHub emojis (🎉, 👍, etc.) as grades and provide meaningful feedback.

Granular Grading: Assignments are broken into issues, each graded individually, with grades averaged for the final score.

Flexibility for Teams or Individuals: Create repos for either team or individual assignments.

We’ve iterated from a terminal app to a polished web platform and it has been used during 2 terms in a university CS course and we’re excited to share it.

Check Out the Demo Video Below

What We’re Looking For:

• Teachers to try it in their classes.

• Feedback on what would make it more useful.

If you are using Github as part of your workflow and you’re interested, please comment or DM me! Your insights could help shape the future of this tool.

Quick demo

3 Comments
2024/12/09
00:14 UTC

7

Teaching a short middle school class over the summer in Python. Help!

I just taught my first high school intro course over the fall semester in Python, and for my first time I thought it went great! There were a few things I could improve, which I'll focus on in the spring semester.

The opportunity has arisen to teach a short middle school programming course over the summer. I have full control of # of weeks, how many days per week, and the curriculum. Kids can sign up on their own accord, meaning the students I have will be interested in the subject (in theory). I think it would be silly for me to pass this up, but I'm a bit intimidated by the idea of teaching middle school students code. I would like to keep it in Python, because it's the language I know best and I feel it's the easiest to learn as a first language.

What I'm looking for:

  1. Any tips on how I should teach this stuff at the middle school level. I treated the format of my high school class like a college intro course, where I would alternate between lecture days & lab days and have a few major projects throughout the semester. I'm not sure 50% of the time being lecture is great for middle school students who want to code.

  2. This is a shot in the dark, but if anyone has curriculum they are willing to share, I would be more than thrilled to take a look.

Thank you!

10 Comments
2024/12/07
19:32 UTC

3

Innovative Tools for Learning Programming? Looking for Study Participants!

Hi everyone,

I’m looking for people to participate in this study for my Master’s project!

What’s it about? In my study, I’m exploring how we can use innovative technologies to improve the way we learn programming. I aim to investigate various factors among students and understand their perspectives. This is a super relevant and timely topic, and we urgently need more empirical research. By participating, you can make a valuable contribution to current research and help shape the future of programming education!

Who can participate? Students (18+ years old) who are currently learning programming as part of a university or higher education course. (If that doesn't include you, please feel free to share the study with friends of yours, or if you are a CS educator, with your students!)

What’s involved? The study is entirely online and takes about 20–30 minutes to complete.

More info & participation herehttps://edu.survey.uni-graz.at/index.php/422596?lang=en

This study is conducted as part of the Computational Social Systems program at the University of Graz and Graz University of Technology in Austria.

Thank you so much in advance!

0 Comments
2024/12/06
13:28 UTC

Back To Top