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
1 vote
6 answers
166 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 ...
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 ...
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 ...
2 votes
3 answers
109 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.
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)....
6 votes
5 answers
206 views

Quick and easy intro to computer science for kids for an Engineering Field Day

We have a large engineering day that hundreds of kids (ages 6-12) and their parents will attend. The setup is as follows: local engineering groups/societies will have stations and they will have ...
44 votes
22 answers
9k views

How to teach the value of the command line in high school?

Part of what I love about the particular adaptation I use for AP CS Principles — CS50 AP — is that my curriculum teaches students basic Linux shell commands in the Cloud9 IDE. Students learn things ...
6 votes
1 answer
180 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 ...
8 votes
2 answers
590 views

Mini-Projects that can be covered in an 1 hour Haskell tutorial

I am supposed to be holding a tutorial session in an Undergraduate Haskell Course, which is also supposed to be a first course in programming for a few of the students. Ideally, the tutorial should be ...
88 votes
26 answers
30k views

How to explain the concept of a variable to a 9-year old?

My 9 year old daughter is heavily interested in science, robots, computers, … She asked me if I could teach her how to program a computer. So, we started with Scratch, a programming language ...
5 votes
2 answers
568 views

Excel macro recorder exercises

On advanced Excel courses I teach attendees how to use the macro recorder. I also start VBA beginner trainings with the recorder and analysing the recorded code. I find the macro recorder a good entry ...
1 vote
4 answers
156 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 ...
7 votes
6 answers
602 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 ...
4 votes
2 answers
1k views

LINQ to SQL alternative C# Visual Studio 2017 MVC

I'm working as a teacher with college students, learning ASP.NET MVC with C#. One pedagogical problem I have in this environment is how to do CRUD (create, delete, update, select and inner join etc) ...
45 votes
21 answers
5k views

Real life examples of 0-indexing

It can be perplexing for students to begin counting at 0 when they enter a CS class. I made it a point over and over to talk about "Day 0" and "Week 0" in the opening days and weeks just to build ...
5 votes
6 answers
654 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 ...
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 ...
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 ...
4 votes
4 answers
742 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 ...
5 votes
3 answers
194 views

Is there any pedagogically motivated reason to teach quadratic probing?

I'm currently preparing a unit on the implementation of hash tables for a data structures and algorithms course (this is a university-level class if it matters). Specifically, I'm focusing on ...
6 votes
2 answers
220 views

Are userscripts a good teaching tool?

What is a User Script? Useful tasks like improving layout, fixing bugs, automating common tasks and adding new functions can all be done by userscripts. More complicated userscripts can create mash-...
1 vote
0 answers
63 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 ...
12 votes
7 answers
743 views

Lesson Idea: Arrays, Pointers, and Syntactic Sugar

One of the most challenging concepts to instill in new CS students is 0-indexing (indeed, the pedagogy of this fact probably merits its own discussion). Another difficult topic -- although a slightly ...
5 votes
3 answers
182 views

How do I construct a basic lesson on computational complexity and undecidability?

Essential Understanding 4.2 of the AP CS Principles curriculum is as follows: "Algorithms can solve many, but not all, computational problems." Among the topics I am expected to cover in the context ...
3 votes
0 answers
637 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 ...
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 ...
8 votes
5 answers
949 views

Simple Pointer Examples in C

Thanks to feedback in this thread, I'm beginning to plan how to integrate a basic introduction to pointers into my unit on arrays. Here's a sample program I just wrote up: ...
8 votes
2 answers
189 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/...
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 ...
5 votes
2 answers
231 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 ...
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 ...
2 votes
2 answers
63 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 ...
2 votes
4 answers
172 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 ...
4 votes
6 answers
179 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 ...
68 votes
21 answers
18k views

What are good examples that actually motivate the study of recursion?

One of the traps of imperative-first is how difficult it becomes to help students make sense of recursion when they finally encounter it. And if those kids are fairly competent iterative programmers, ...
13 votes
12 answers
3k views

What is a good analogy for pass by value vs by reference?

In general, there are two ways arguments can be passed to a function. Functions can either be passed a reference to an object, or the value of that object. This is something that my students often ...
17 votes
10 answers
7k views

How do I approach teaching Python to 12-year-olds as a first-time teacher?

I'm currently teaching Python, to three 12-year-olds. They have no experience at all, and my task is to introduce them to programming concepts, and to Python. I'm fairly experienced in programming, ...
17 votes
8 answers
4k views

Demonstrating the possible dangers of SQL injection

Students building websites in a high-school computer science major (using HTML, javascript, ...
2 votes
4 answers
143 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 ...
5 votes
1 answer
273 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 ...
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 ...
1 vote
3 answers
172 views

Make it easier, and quicker to get to the start

When teaching I often have pupils struggle in the first few minutes. When they are setting the computer up, ready to start work. They often have to follow lengthy instructions, that I print on paper, ...
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 ...
7 votes
3 answers
434 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 ...
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 ...
1 vote
1 answer
92 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 ...
10 votes
6 answers
1k views

How can I make database normalization more clear?

Database normalization is needlessly clouded by over-explanation. I reviewed a wide array of web articles and several textbooks before starting to teach it. After I became thoroughly familiar with the ...
2 votes
2 answers
104 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 "...
2 votes
1 answer
71 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 ...
8 votes
6 answers
410 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. ...