Stack Exchange Network

Stack Exchange network consists of 175 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.

Visit Stack Exchange

Questions tagged [curriculum-design]

The curriculum of a Computer Science course is a sequence of planned subjects that the students will be taught in the course. This tag should be used for questions asking for guidance on designing parts of that sequence, the entire sequence or questions related to the preferred order in which to teach subjects. Question relating to a single lesson should NOT receive this tag.

2
votes
2answers
106 views

What intro CS coursework is most useful for life science students?

My college requires students earning a bachelor's of science (BS) degree to take a CS course. Currently, they take the same course as CS majors: a typical Java 1 course. What would be a more useful ...
9
votes
3answers
558 views

How to supplement Khan Academy

First: I'm a coder, not a teacher. That said, I led a 4-session "Coding for Teens" class at a local library this month using Khan Academy (KA). I'm contemplating scheduling another series maybe in ...
-3
votes
2answers
788 views

How do you teach EVERY student? [closed]

I take it as the Prime Directive that I must teach every student in every class session. You may disagree, but I'm not asking to debate that question, but to look for how it might be accomplished, ...
10
votes
5answers
768 views

Curriculum choice for AP Computer Science Principles

I will be student teaching an AP Computer Science Principles class next year and have run into an issue. All of the high schools around us are using the Code.org curriculum but from talking to ...
4
votes
3answers
159 views

How to teach a flipped course based on the AI MOOC?

I'd like to create a college-level AI course based on the famous AI MOOC created by Peter Norvig and Sebastian Thrun. My reasoning is that I wouldn't be able to create lectures as good as theirs, ...
4
votes
2answers
195 views

Curriculum Design for a Unit on Alan Turing and His Impact on CS

At the end of the year, there is a gap between the AP Exam for AP Computer Science A and the last class meeting. Since students don't have to take a final after the AP Exam, there's not a lot of ...
4
votes
4answers
114 views

Balance between teaching and projects in a club

I've been thinking of starting a programming club - I know some people who would be interested and I think it would be a fun thing to do. This club would probably meet once or twice a week for a ...
22
votes
10answers
7k views

How important is learning Binary for first-year college students?

I teach my freshmen Binary because I'm old school I guess. I do want them to know how data is stored and that means Binary to me. How do others feel? Is it a must learn early or a nice to have if ...
6
votes
7answers
363 views

How to overcome the TDD/BDD time fallacy

I've observed an unusual thing happen when teachers try to introduce Test-Driven Development (TDD) or Behavior-Driven Development (BDD) to their classes. Even though the teachers invariably encourage ...
6
votes
4answers
287 views

What statistics should be in a computer science degree?

My university has decided that it should give a core (that is compulsory) statistics class to its computer science undergraduates. This opens the interesting question of what should be in such a ...
8
votes
4answers
230 views

Should unit testing be taught in introductory programming classes?

I understand the advantages of test-driven development, but should unit testing be taught/used in CS1 (the introductory class) for computer science students learning? I am aware of researchers saying ...
7
votes
3answers
885 views

Introducing image processing - Should I teach the math

During the summer I am teaching a programming workshop for students in a high school computer science major. The purpose of the workshop is to introduce them to image processing, and to have them ...
6
votes
5answers
307 views

Benefits of explaining low-level architecture in a programming class

When teaching an intermediate or advanced highschool programming class that also touches on general CS concepts (algorithms, etc), what are the benefits of explaining low-level computer architecture? ...
7
votes
4answers
104 views

Opportunities for Interdepartmental Collaboration

At my current school site (high-school level, 14-18 year olds), I am the only full-time CS teacher. While I don't mind working on my own, there are occasions where I think that collaborating on ...
4
votes
2answers
225 views

Introducing the MVC pattern along with JavaFX

This year I am planning to shift from teaching Swing for graphics, to teaching JavaFX. As JavaFX ideally uses the MVC design pattern, I thought it would help students understand how to use JavaFX if ...
12
votes
9answers
1k views

How to teach students not to use jump statements

We all know goto is the spawn of satan. To learners though, it seems easy and quick. In simple, short program codes having a goto or two won't turn the code into unreadable spaghetti code. So students ...
3
votes
1answer
230 views

Learning about the Blockchain

Since this is a very hot topic, I would love to offer an elective in Blockchain technology next year (and possibly in cryptocurrencies as well). I know that my students are already very enthusiastic ...
5
votes
3answers
220 views

What are good/bad topics for a non-major CS0 course?

I'm teaching CS0 again this fall. This is an introductory course, entirely separate from CS1. It is for non-majors. It doesn't lead to additional coursework or prepare students for CS1 (it's not a ...
8
votes
5answers
199 views

How can I incorporate agile development into CS1/CS2 courses?

I would like my students to get the most out of the course by experiencing an agile development structure in their projects. Currently I give 5 assignments, each building on the previous one and ...
7
votes
5answers
154 views

Instructional Methods for In-class Code Demos

When demoing code in class, I have tried at least three different methods of instruction: Write code live and have students type along Write code live and have students follow my logic while only I ...
6
votes
1answer
171 views

Scope and Sequence for Raspberry Pi Course

I am in the process of developing a new course focused entirely on Raspberry Pi. The goal is to make it a summer-school elective equivalent to one semester (i.e. one class meeting over the summer == ...
23
votes
15answers
1k views

What program follows “hello, world”?

You've just demoed your first bit of code in whatever language you're teaching. The requisite "hello, world" has been said. The program has been compiled (or interpreted) and run. Now what? There has ...
5
votes
3answers
116 views

Assignments for Introductory Level Processing

I am designing an introductory level programming class to be taught using Processing this summer. I have only four weeks and 90 minutes a day with students. Given my student demographic (middle ...
6
votes
3answers
88 views

Supplementing Curriculum with Online Resources

One of the blessing and curses of teaching CS is the plethora of materials freely available online. MOOCs on edX and Coursera. Tutorials on Khan Academy and Codecademy. Certifications through ...
6
votes
2answers
139 views

Self guided learning about audio processing

I have student who is attempting an independent study next year in audio processing. Her goals involve detecting the meter of a song. Thus could be done through machine learning, or through other ...
10
votes
6answers
321 views

Encourage students to be independent

As is often the case, there is usually more than one way to approach a problem or task. Currently, my students use what they were taught in the lessons (which is expected). When they stumble upon a ...
4
votes
2answers
79 views

Ruby backend framework choice: Ruby on Rails vs Sinatra

In Ruby, the vast majority of usage is in web backends, 99% of the time with a framework called Ruby on Rails. My problem with rails is that it is full of "magic," wherein you type a command, and ...
12
votes
6answers
387 views

Is it more effective to teach low level languages before high level ones or vice versa?

When structuring a Computer Science curriculum, which prepares students most effectively for a career in technology today? Consider the following scenarios over a student's college career: Starting ...
11
votes
6answers
449 views

Programming curriculum for elderly students

I have created a basic computer education project for an audience of elderly students (over 50 years old). The course is very basic, with lessons from "How to turn on/off your home computer" to "...
9
votes
2answers
589 views

Should I teach modern web development in an introductory programming course? How?

I'm currently teaching a introductory programming class in a technological university course (FYI, this is a type of university course that is not a BS). The recommended language to use for this ...
18
votes
2answers
329 views

How does one create a balanced AI curriculum in light of the popularity of Deep Learning?

During the past decade, interest in machine learning has exploded, especially due to the many and growing successes of deep learning approaches using convolutional and other neural networks. To those ...
6
votes
10answers
379 views

When teaching Web Development, should server or client side come first?

I teach full stack web development because the purpose of the course is to give an overview of how a complete website is created, from SQL for database management to HTML/CSS/JS for front-end to ruby ...
19
votes
11answers
627 views

Should assembly language be taught in an introductory course (or soon after)?

Should ye ole' fashioned assembly language be taught to help students develop a sense of how actual underlying computational hardware supports/allows running their higher-level or more abstract ...
6
votes
6answers
337 views

Using Processing as an entry point in an Introductory Course

We have two entry points for programming students here: one is web-oriented and features HTML5/CSS3/ECMA6, and the other is in a robotics environment using LabView. Both classes address the "big 5": ...