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.

3
votes
0answers
48 views

Creating Interactive Gnu/Linux shell programming courses

I am looking to create interactive workbooks that teach the Gnu/Linux terminal to students. This would be presented in such a way that one half of the screen is an interactive terminal, running the ...
2
votes
2answers
47 views

Shallow, broad and general introduction to programming

I've planned a shallow and broad curriculum for a summer program (5 days a week for 2 weeks, 9:00 to 17:00) or sorts, and the flow of the subjects seems flawed. The students are gifted (not a ...
3
votes
2answers
60 views

What do A-level students, that have not done GCSE, struggle with?

I will be teaching key-stage-3 pupils, in a school with no key-stage 4 or 5 in the computing subjects. Some of these pupils may wish to do computing at key-stage-5 at another school. Does anyone ...
1
vote
0answers
25 views

How to make sequence diagram? [closed]

I want to make the sequence diagram of my project.. what should i do to make it easily? Anybody know any Site then give me the link. Thanks for any help.
12
votes
13answers
10k views

On studying Computer Science vs. Software Engineering to become a proficient coder

I’m mostly interested in the coding aspect of the CS and SE majors curricula. And I’m trying to decide between the two. Each major has its pros and cons, and they prepare you in very different ways ...
2
votes
2answers
39 views

Hand-on ideas on tutorial on setting up a cloud-based server

A long shot, but perhaps somebody here can help. I'm planning a workshop (=3 hours, mixed presentation bits + "hands-on" parts, ~30 people). It includes a (brief) section on setting up a simple ...
2
votes
4answers
161 views

Thoughts on language for Intro to Data Science?

Next term, I'm going to teach an introductory Data Science class for the first time. In the past, others have taught it in either R or Python. My first inclination was to teach it in R because the ...
3
votes
2answers
97 views

Teaching Revision (Change) Control Systems In High School CS Classes

I teach AP Computer Science A and game design classes at the high school level in Washington state (where "revision control systems" are a grade level expectation (GLE) for 11th and 12th grade - all ...
3
votes
2answers
71 views

About the ACM and IEEE-CS Computing Curricula

I've been searching for a detailed definition about what computer science is about for years, when one day I came across these two documents: Computing curricula 2005 report and Computer Science ...
51
votes
11answers
29k views

How bad is a Computer Science course that doesn't teach Design Patterns?

I'm at final year of my graduation in Computer Science in Brazil. The university that I study is one of the best in the country and my passion is for Software Engineering. It disappoints me, in ...
6
votes
1answer
132 views

How can I set up and deliver a Computer Hardware Course for the first time?

I'm in need of major help at my current job. I'm a HS teacher and I teach a private school - I just started in August, two days before school started and five days before the previous teacher left for ...
11
votes
1answer
1k views

What belongs in a low-math undergraduate AI elective besides ML?

The primarily undergraduate institution at which I teach does not have an Artificial Intelligence course. We do have classes on Data Analysis and Machine Learning: DATA 150: Introduction to Data ...
7
votes
1answer
393 views

How Can I Apply Spaced Repetition To Teaching CS?

Lately I've been seeing quite a bit on the importance of spaced repetition in retention of skills. My job is to level up a group of C# developers and I'm trying to figure out how to apply the idea of ...
9
votes
6answers
904 views

Why isn't Functional Programming Taught First?

We've recently gone through the process of selecting an intern from a local university to join our team for the summer. We are using F# and almost exclusively using functional programming techniques ...
3
votes
1answer
88 views

Constructing a curriculum from multiple resources for complex subjects

I was recently asked to teach someone OOP and C++, to a relatively advanced level in the former and an intermediate level in the latter. After one half of a private lesson, it became clear that the ...
3
votes
2answers
87 views

Should we merge technology departments with the science departments?

At our high school, our tech department has made many strides in the past decade. The courses and technology we offer are a matter of pride when showcasing our school. However, our department is small ...
3
votes
2answers
114 views

Process Scheduling is not “Process” Scheduling - Should I disclose it to students?

I have been teaching Operating Systems basics in a class and after Processes, Child Processes and Threads, we have managed to move to "Process Scheduling" Now, ironically, as we know that it is not ...
48
votes
9answers
7k views

What are healthy, productive ways to encourage students to progress to more advanced constructs as opposed to staying with the familiar?

In my experience, there are always students who are resistant to moving to more advanced constructs. They want to stay with what they already know. For example, when they are taught arrays, they ...
6
votes
12answers
632 views

For a beginner, is it better to start with C or a higher level language?

Some friends of mine, over the years, asked me suggestions on what to study for learning how to code. Most of them had no real final purpose, just wanted to be able to understand programming and be ...
18
votes
6answers
6k 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 ...
6
votes
6answers
261 views

Should I Provide Answers To Exercises?

I'm preparing some exercises to introduce software developers who have no experience with Scheme to the language. Part of the exercises are simple things like: ...
1
vote
2answers
172 views

The Starting Gun vs Freedom of Choice [closed]

According to research, if people are to develop abstract reasoning capabilities (Formal Operations and Post-Formal) they need the proper exposure at age 7 to 12 - generally speaking. Adults that were ...
6
votes
1answer
225 views

Is there evidence of differences in the outcomes of objects-early vs objects-late?

Here is the essential parts of a (HS) Junior level question from one of our (Canadian) national computing challenges. (http://www.cemc.uwaterloo.ca/contests/computing/2017/stage%201/juniorEF.pdf) ...
5
votes
3answers
282 views

Teaching C++ to students that know Java

I am now teaching an OOP course to 2nd year undergrads. This is actually a course in advanced programming in Java. In the next semester, I am going to teach the same students, a C++ course. From what ...
4
votes
4answers
154 views

Where, sequentially, do Interfaces sit in an introduction to Objects?

I've been teaching Objects for years now as part of AP Computer Science A (which means that I am teaching OOP in Java), and I have experimented with putting Interfaces in at different locations. In ...
12
votes
11answers
3k views

What should be included in a best practices C course?

At our University, we have in the first semester a very difficult C Introductory Course, that consists of presenting a shortened version of the language specification: What are for/while loops, if ...
8
votes
3answers
371 views

Agile / SCRUM Course Structure: Downsides? Resources?

I am planning to teach an undergraduate-level course on mobile application development. I have been thinking about the best way to structure such a course, and am starting to believe that an agile ...
2
votes
3answers
158 views

Teaching Critical Thinking

In answers to a previous question, a few people suggested intro programming with true novices might not be the best place to introduce critical thinking/planning skills for programs. To me, intro ...
3
votes
2answers
229 views

Is there independent evidence that physical computing improves engagement

The micro:bit foundation present some research findings which look quite encouraging when it comes to using physical computing as an introduction to Computer Science here: 90% of students said ...
8
votes
3answers
218 views

What does a certification program for CS high school teachers need to include?

If a high school math or science teacher was going to begin teaching computer science, what do they need to know? I know of many teachers given this responsibility without any training for it. Since ...
8
votes
2answers
360 views

Teaching information security to students without basic IT knowledge

Context I've been mandated by the university of Tokyo to teach Information security courses during my working hours (initiation level). We are 3 teachers, 2 security researchers employed by the ...
6
votes
5answers
258 views

Show students the consequences of their design decisions

In my experience, university students spend years writing throw away code. They develop assignments, get them auto-marked, then move on. On the other hand, professional developers are plagued by the ...
21
votes
11answers
5k views

What could be the possible advantages of teaching Scheme as first programming language?

When I started my Computer Science studies, Scheme was the first thing we learned in our first programming course. Almost 8 years later, I ask a friend of mine, and it seems that they are still ...
4
votes
3answers
346 views

Teaching C#, Java, etc. to students who are bad at OOP

Last semester, I was assigned two classes of C# and assuming them to be well-versed in Programming Fundamentals (PF) and Object Oriented Programming (OOP), I started the course at normal pace. After a ...
15
votes
7answers
409 views

Teaching a blind high school student

I am teaching a blind high school student in my APCSA class. All students are using a combination of CodeHS and Project Lead the Way curriculum. Neither of these are very friendly to my blind ...
6
votes
2answers
74 views

Workshops on Cloud (Azure)

About a month ago (before they took off for their vacation) some of my technology club members asked me if I could conduct some workshops on cloud. Being a lifelong Microsoft man, and something of an ...
9
votes
4answers
264 views

How to effectively teach strings and string literal constants?

I am teaching a general introductory CS course to 18-19 year olds, with Python3 as a support language, and I am not satisfied with how some students respond to strings and string literals. That is ...
5
votes
2answers
104 views

Intensive basic VBA course - which variables to teach?

Which variable types are the bare minimum to teach non-programmers who want to be able to create and modify simple VBA (MS Office) macros? I start by showing them the concept of variables through ...
50
votes
8answers
16k views

Students can solve programming exercises but not explain their solutions. What to do?

I've seen too many cases when a student has completed a programming exercise (without cheating) but can't say, for example, what type of values a variable contains during program runtime (in case of ...
2
votes
2answers
115 views

What part does formal Ethics training play in your curriculum?

What is your current practice of teaching ethics to students, both institutionally and individually? Note that the teaching of ethical standards (not just lists of rules) has at least two elements: ...
6
votes
2answers
172 views

What is a good design for a Capstone Course in CS?

Some Computer Science programs in the US have a course that is informally referred to at a Capstone Course that attempts to bring together most of what the student has learned. The course may be ...
2
votes
3answers
145 views

Books to use for iOS App Development

I'm exploring iOS App Development as an elective for students, and in perusing Apple's iBooks on the subject, I see two similar books: App Development with Swift and Intro to App Development with ...
19
votes
10answers
4k views

What ethical practices do students (as potential software engineers) need to be trained in?

The kinds of things that people with technical training can do have societal impacts, both for good and evil. Programmers are building the future. One future nightmare is Skynet. Many problems in ...
9
votes
2answers
163 views

Does/should a CS education include information about responsible use of human subjects in research

We had a question over at academia.se about what responsibility a PhD supervisor has for teaching students about the use of human subjects in research. In some fields it is obvious that a research ...
8
votes
3answers
197 views

How to teach algorithms: implementation or application?

One unit of CS50 AP's curriculum focuses on three main sorting algorithms: bubble sort, selection sort, and insertion sort. There is also discussion of something more efficient like merge sort. One ...
7
votes
3answers
181 views

Teaching syntactic sugar

When I show my code to students I tutor, they ask about "all those things in my code", which refers (quite vaguely) to things such as shortened ifs, post\...
7
votes
5answers
381 views

Teaching high-level versus low-level concepts

In creating a general introductory course on computers or computing (programming and/or CS), does one mostly present high level concepts (recursion, computational complexity, concurrency, etc.), ...
5
votes
4answers
166 views

Why would mutation be considered by some as a difficult concept to grasp?

Why do some instructors delay teaching mutation due to considering it to be a more difficult concept? (than functional or recursive concepts, etc.) It is very likely that, back in the 8-bit PC days, ...
17
votes
6answers
2k views

Order to Teach Topics in an Intro Programming Class

This is a question for those of you who have an intro class before AP Computer Science (or maybe even just an intro class). What order do you teach the topics in your intro class? I start with if ...
7
votes
2answers
181 views

Placement of App Inventor in high school CS curriculum

Over the past couple days I've had my first opportunity to dive into App Inventor. It has quite frankly blown my mind. I had always (mistakenly) grouped it with Scratch, Snap!, etc. as "just another ...