Questions tagged [lesson-ideas]

Questions with this tag relate to planning lessons for a specific purpose, such as teaching some coding paradigm or skill. Planning lessons in Computer Science depends on the context and level of the students. If it is a lesson which introduces a new topic, the tag [introductory-lesson] may also be appropriate.

Filter by
Sorted by
Tagged with
2 votes
2 answers
194 views

Teaching a coding language in an interactive way for a school club

I am currently a senior in high school who runs a club centered around teaching C++ to interested people. However, my fellow board members and I have recognized that our style of teaching the ...
Selisine's user avatar
0 votes
1 answer
56 views

How would you define the word "render" in the vocabulary list, or define "render" for a text/exam, for a course on computer science?

In computer programming, the word render means to turn typed written code into a pretty picture for people to look at. Outside of computer science, the word render means somthing like "boil ...
Samuel Muldoon's user avatar
1 vote
6 answers
168 views

What Informal Description Might Help Beginning Students Understand Python's `str.strip()` method?

When teaching python to new students in middle school (or any age group), the students sometimes find the python documentation to be a bit overwhelming. What is a short, easy-to-understand description ...
Samuel Muldoon's user avatar
25 votes
10 answers
7k views

Non-native English speakers struggle to come up with decent variable names and function names

The students I teach at a middle school in Beijing normally have a limited vocabulary. They struggle to come up with decent variable names and function names. Most of the time they just name variables ...
Qiulang 邱朗's user avatar
2 votes
3 answers
167 views

Theory of Computing project topics

I am looking for project ideas in theory of computing that I can assign to my students in lieu of a final exam.
JKJ's user avatar
  • 121
6 votes
1 answer
182 views

How to design an assignment on applications of Formal Verification?

I'm teaching a course on Intro to Theoretical CS, which is a compulsory course for CS majors. A pre-requisite is Math for CS and a co-requisite is Design of Algorithms. In this course we also cover ...
whoisit's user avatar
  • 161
2 votes
4 answers
162 views

Teaching ideas for string algorithm?

When teaching algorithm (high school) I always go with some sorting & searching algorithms and believe that should be enough, or at least lay a good foundation for them. But I have come to realize ...
Qiulang 邱朗's user avatar
7 votes
4 answers
1k views

Do you include coding assignments in an intro to complexity and computation course?

In an introductory course on complexity and computing, I am thinking about including some programming tasks. I wonder what types of tasks I could give the students beyond "construct" a ...
0x90's user avatar
  • 171
1 vote
0 answers
128 views

Finding "Filler" projects for students

Short Summary of the situation: I live on the Dutch countryside, here there are several colleges/universities that offer IT degrees (post-secondary vocational education/ Bachelor Degree/Master Degree)....
A.bakker's user avatar
  • 336
1 vote
0 answers
67 views

Who is the best software engineering teacher you know? what makes them the best? [closed]

Looking to find some of the best teachers in software engineering; not the best computer scientists or software engineers per se. But those who train and develop software engineers that and build ...
Jorjani's user avatar
  • 111
3 votes
0 answers
677 views

Divide and conquer for subset sum problem

I want my students (equivalent first-year college students) to work on algorithmic paradigms during a 2 hours practical programming session in OCaml. I chose the subset sum problem since it can ...
Nathaniel's user avatar
  • 150
1 vote
2 answers
85 views

is there any good specific pedagogy research to teach spreadsheets?

There is a lot of good research on how to teach introductory programming. But maybe(?) more important to most students is the ability to use a spreadsheet. What is the best way to teach introductory ...
pluke's user avatar
  • 745
13 votes
17 answers
4k views

What are some fun projects for non-CS majors?

I'm teaching an undergrad Intro to Programming for Non-majors this semester (in Python) and I'm looking for some fun projects for my students that are engaging but not too difficult for them. This is ...
Levon's user avatar
  • 371
6 votes
2 answers
239 views

Common questions students may ask when they learn OOP?

Reading this question Do we really need OO languages to manage software complexity? on one of SE sites and my own experiences in teaching object-oriented concept, e.g. Some real practical example to ...
Qiulang 邱朗's user avatar
4 votes
4 answers
820 views

Some real practical example to teach object-oriented concepts and programming (in python)

I have taught my high school students to write some simple python scripts, taking some ideas from "Automate the Boring Stuff with Python", e.g. changing file names in a folder to a specific ...
Qiulang 邱朗's user avatar
7 votes
6 answers
673 views

What are good, practical labs and activities for loops?

I am teaching some high school students, also the first time programmers, some basic programming concepts and applications. When introducing loop I find that using it to check prime number (and find ...
Qiulang 邱朗's user avatar
2 votes
2 answers
64 views

Are there any conventions for writing logic statements for combinations of logic gate functions?

I am teaching logic gates. I would like to know if anyone knows if there are any conventions for writing combinations of logic gate functions. For example ...
Reagan Ochora's user avatar
0 votes
1 answer
97 views

How do I teach problem solving and logical thinking to students of age group 12-18yrs through online session

I am currently researching some good content/problems to teach my students. I am referring to Mensa's Book on Logical thinking, which has a good amount of puzzles for all age groups. Is there any ...
UnbreakableMystic's user avatar
4 votes
6 answers
180 views

Counter-Example for Computability

I am a retired college teacher, now trying to teach computing to middle school kids. One of the parts of the definition of "algorithm" is that it must be "effectively computable." I'm looking for an ...
Bob Brown's user avatar
  • 409
7 votes
3 answers
435 views

HS Lessons On Modeling Virus Spread

I'd like to try teaching an online lesson to high school CS students on modeling the spread of a virus. Ideally it would be something that could be coded in a spreadsheet, Code.Org's Game Lab or App ...
dlu's user avatar
  • 499
4 votes
2 answers
148 views

Physical Activity for Objects

I have a vague notion that I could create some sort of introductory activity for Objects. There would be worksheets ("programs") to get kids (high school, in this case) to physically go through the ...
Ben I.'s user avatar
  • 33.1k
1 vote
1 answer
94 views

How to make someone enjoy programming if they don't like the products they make? [duplicate]

Background I have a friend who loves applied math and physics, but hates programming. She is learning python right now because she thinks it's helpful in getting a math-related job, and her mom forces ...
Coco Liliace's user avatar
4 votes
3 answers
191 views

How do you teach when your students have wildly different backgrounds?

I'm going to do a course for my entire University, this means students that are in the last year and also in the first year. What can I do so what I teach isn't too hard to understand for the first ...
Vencovsky's user avatar
  • 141
2 votes
2 answers
105 views

Does it make sense to write tutorial when content of the tutorial can be already learned from internet without that tutorial?

For example, does it makes sense to write tutorial called Best Intellij shortcuts. You can already find so many shortcuts online in many places. If the answer is "...
Spasoje Petronijević's user avatar
3 votes
2 answers
89 views

How to construct non computer-based, Paper Parsons Problem

I was reading this article “Ten quick tips for teaching programming” by Neil C. C. Brown and Greg Wilson at https://www.ncbi.nlm.nih.gov/pmc/articles/PMC5886386/ It had many useful suggestions one of ...
Mallam Awal's user avatar
2 votes
4 answers
144 views

How might I structure an assignment with two "levels"?

I've been mulling this over for several hours, and have looked at a tangentially related question here. That question was about making a task more challenging for a "more confident" learner. I have ...
srattigan's user avatar
  • 744
5 votes
2 answers
158 views

Assignment repositories

Are there any assignment repositories that you use for assignment ideas? I am aware of the Nifty Assignments from Stanford and have used several. There are a lot of good fine grained problems on ...
Fritz Sieker's user avatar
  • 1,203
3 votes
2 answers
168 views

Recent Graduate becomes a teacher

In less than one month I'll be graduating from the equivalent of high school (I'm in Latvia). In my high school you also get a certificate based on which career you choose eg. a Chef or a Computer ...
Relinkvent's user avatar
-1 votes
2 answers
111 views

How To develop One's Interest in Programming [closed]

My younger brother is having a hard time learning programming. This seems strange because he's very good at other computer related subjects. He isn't choosing any other field, so how can he develop ...
Ahmed Raza Khan's user avatar
1 vote
2 answers
85 views

How to introduce problem solving to primary school pupils?

I'm interested into knowing your experiences about introducing problem solving to primary school pupils. I'm a PhD candidate in Operations Research and, together with my University or my public ...
Alice Raffaele's user avatar
3 votes
3 answers
88 views

Suggestions for teaching selection sort with candy

It's the end of the semester, so my students are pretty burnt out, and a bit of sugar might go a long way (plus, evaluations are around the corner ;-). I'm envisioning a tactile class where students ...
David White's user avatar
5 votes
1 answer
277 views

How do you teach Theory of Automata / Formal Language Theory / Computation Complexity?

i'm a new instructor & also new here. How do you teach Theory of Automata / Formal Language Theory / Computation Complexity? Is it theory only, or including programming? If theory only, how ...
kate's user avatar
  • 153
2 votes
4 answers
181 views

Turtle examples for loops and variables, or even something else

I'm going to teach using the well known drawing turtle, with one developed by me to fit my students, so in case it can also be modified. It features drawing movement, non-drawing movement and pen ...
user9137's user avatar
  • 478
5 votes
6 answers
657 views

Examples of innocent looking faulty code for shock effect

I'm becoming more and more convinced that starting with an imperative attitude is not doing a favor to the students, especially if it's all about scheduling and repeating some ...
user9137's user avatar
  • 478
6 votes
5 answers
900 views

What is a good teaching example/application for jagged arrays (2d arrays with irregular row lengths)?

We are teaching an AP CS class and the topic of 2d-arrays is coming up. There are plenty of cool and approachable sample applications for standard rectanglular arrays - matrix math, MIDI music, sudoku,...
Matthew W.'s user avatar
3 votes
2 answers
82 views

Advise on a class project

Me and my friend are both in high school taking a “PLTW” Engineering class, where our goal is to design a solution to any problem and work on that solution over the course of the year. We’re reaching ...
Derrick Lwanjo's user avatar
8 votes
6 answers
414 views

How would you explain what is a race condition to a five years old

TL;DR: How would you explain what is a race condition to a five years old. Which analogy to concepts he is familiar with would you use? Long version: I am not a teacher but a software engineer. ...
Renaud M.'s user avatar
  • 183
7 votes
4 answers
493 views

Python function has access to global variables, and doesn't need passed arguments

When teaching functions in Python I get a little annoyed that the code below actually prints out the greeting. I know the preferred way would be to pass in the name, but, for students, if it works ...
tazboy's user avatar
  • 171
4 votes
2 answers
94 views

Lab ideas for set theory

The title of the question actually says almost everything there is to say. I cannot think of any programming labs whatsoever that would naturally flow from set theory. My students will be coding in ...
Ben I.'s user avatar
  • 33.1k
2 votes
1 answer
114 views

How to give students practice with streaming computation?

I'm teaching a theory-focused randomized algorithms course at the undergraduate level, and have included a section on streaming algorithms. It would be great to get students to implement these ...
David White's user avatar
5 votes
0 answers
152 views

Small to medium scale exercises about Haskell's higher abstractions

Short version: Where can I find highly varying, small or medium-sized exercises and examples on the use, identification and instance declaration of Haskell's abstractions such as applicatives, monads, ...
jhu's user avatar
  • 171
5 votes
3 answers
242 views

Short foundational lessons for 7-8 year olds

I have an opportunity to run four classes of about half an hour, with 7 to 8 year olds (my sons age). This is part of a program called STEM professionals in schools. All I am there to do really is ...
Atcrank's user avatar
  • 153
2 votes
1 answer
161 views

How to structure a Predictive Keyboard project similar to GBoard

Many are now familiar with GBoard, the Google / Android predictive Keyboard. I don't actually know how it works. Obviously it must gather usage data on the device where it is being used, but it ...
Scott Rowe's user avatar
8 votes
2 answers
192 views

How to teach sums and asymptotics to students who don’t know limits

I am to teach sums and asymptotics to first year CS undergraduates who have only high school math. I thought it would be attractive to follow chapter 14 of https://courses.csail.mit.edu/6.042/...
Simd's user avatar
  • 233
52 votes
14 answers
10k views

Interesting Programming Exercises to Teach Inheritance?

I originally asked this over on Stack Overflow, but they suggested I look here instead: I'm currently teaching my students about the concept of inheritance (we're using Python 3) but am unable to ...
Patch's user avatar
  • 631
6 votes
3 answers
164 views

"Computer sciency" and "practical" exercices involving dictionaries

I am teaching a course in data structures to a 2o semester. We hear often that the dictionary is a very versatile data structure, and solves quite so many problems. I'd like to illustrate that, but, ...
josinalvo's user avatar
  • 331
18 votes
6 answers
7k views

How do you teach Big O to high schoolers with varying degrees of math exposure?

My second semester programming curriculum includes a searching and sorting unit and mentions Big O notation, giving the notation for each search and sort we implement. It does not show the ...
Java Jive's user avatar
  • 2,359
5 votes
4 answers
126 views

Use of jshell in AP CS A

I recently installed jshell in my IDE for use in demoing concepts in AP CS A. It came at just the right time as it was a powerful way to teach ArrayLists and its ...
Peter's user avatar
  • 9,102
5 votes
3 answers
196 views

Is stressing too much on formalism acceptable?

Most of the students like the analogy way of teaching things. But I am biased towards the formal way along with a little bit of analogy. For example, (to make simple) in order to teach about a set to ...
user74255's user avatar
  • 151
2 votes
3 answers
210 views

Boolean Logic: How to Explain + as OR?

In a previous question, I asked about the appropriate notation when teaching Boolean logic to students ages about 11–14. I selected the notation of engineering and computer science in part because I ...
Bob Brown's user avatar
  • 409