Answers.Body: <p>I'd be very wary of any program with a course llike "CS Principle" or "CS Principles for Educators." First, it pushes the "you take it you can teach it" model which would imply that any kid that finishes a class has enough content knowledge to teach it and that just isn't so. It's also a red flag that it might follow the model of many math ed courses like "Calculus for math teachers" which purport to be about both the math and how to teach it but in practice are more frequently watered down math classes with formulaic content about instruction.</p>
  
  <p>I think the Iowa proposal submitted here is more on track. Content should be somewhat beyond the highest level a student might take so Algorithms / Data structures fits the bill. I personally don't agree with the networking / OS part but that's neither here nor there.</p>
  
  <p>On top of depth of knowledge you need breadth and on top of that pedagogy so you'd need some more courses there.</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2017-09-30T20:07:51.720Z
Answers.Text: I agree with you completely. However, too many teachers are assigned such courses when they are not ready at all. But if you are going to get training, get something that doesn't just help you keep a day ahead of the students.
Answers.UserDisplayName: Buffy
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2017-09-30T20:14:06.797Z
Answers.Text: The danger is that too many states are going for the quick win and stopping at the weekend PD model. The right way to do it is set an M year goal. You can start now with nothing, you must do ABC by year N and finish the whole shebang by year M.
Answers.UserDisplayName: Mike Zamansky
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2017-09-30T20:17:57.833Z
Answers.Text: Yes. Can you develop that into a complete answer here? Such a plan might require the backing of some organization behind it, i'd guess.
Answers.UserDisplayName: Buffy
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2017-09-30T19:51:01.777Z
Answers.LastActivityDate: 2017-09-30T20:08:10.850Z
Answers.LastEditDate: 2017-09-30T20:08:10.850Z
Answers.UserDisplayName: Mike Zamansky
Answers.Body: <p>As states in the US consider requirements to add a CS endorsement to a teaching certificate, the proposals vary widely. The changing landscape is described in the April 2017 EDC document <a href="https://www.edc.org/state-states-landscape-report-state-level-policies-supporting-equitable-k-12-computer-science" rel="nofollow noreferrer">State of the States Landscape Report: State-level Policies Supporting Equitable K-12 Computer Science Education</a>.</p>
  
  <p>Iowa SF274, passed June 2017, allocated \$250 thousand for CS professional development. This is dwarfed by \$500 million <a href="https://www.nytimes.com/2017/09/26/technology/computer-science-stem-education.html?_r=0" rel="nofollow noreferrer">announced this week</a> by the US Department of Ed and the tech sector, but like parallel initiatives in many US states, it led the state's Department of Ed to consider CS endorsement requirements. The Department of Ed drafted recommendations as a starting point for a working group to consider. Iowa DoEd is suggesting in that draft:</p>
  
  <ul>
  <li>12 semester hours of CS coursework to include 
  
  <ul>
  <li>Data structures</li>
  <li>Algorithms</li>
  <li>Operating Systems or Networking </li>
  </ul></li>
  <li>3 semester hours of a CS Teaching Methods course</li>
  <li>6 semester hours of coursework in Career and Technical Education</li>
  </ul>
  
  <p>I post this draft recommendation because the crowd-sourced opinion of this community would be informative to me as a member of the working group. The fact that the discussion here would be useful to someone like me as a CS educator in a time of fervent activity in legislative and executive realms is a reason not to close this question.</p>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2017-09-28T05:45:30.493Z
Answers.LastActivityDate: 2017-09-28T05:53:49.070Z
Answers.LastEditDate: 2017-09-28T05:53:49.070Z
Answers.UserDisplayName: Bennett Brown
Answers.Body: <p>The College of St. Scholastica in Minnesota has a <a href="http://www.css.edu/graduate/masters-doctoral-and-professional-programs/areas-of-study/master-of-education-(med)/certificate-in-computer-science-education.html" rel="nofollow noreferrer">Computer Science Education graduate certificate program</a>. It is a four-course sequence designed to add a CS endorsement to a high school teaching certificate, though no state-issued endorsement exists yet in Minnesota. The courses:</p>
  
  <ul>
  <li><em>Computational Thinking and Standards</em> for the K-12 Teacher</li>
  <li><em>CS Principles</em>, covering the AP CS Principles course description with additional material covering pedagogy and CS pedagogical content knowledge</li>
  <li><em>Programming and Teaching Java</em>, a Java-based course covering the AP CS A course description with additional material covering pedagogy and CS pedagogical content knowledge</li>
  <li><em>CS Methods and Capstone</em>, covering pedagogy and CS pedagogical content knowledge, CS education research, and development of a CS curriculum unit</li>
  </ul>
  
Answers.ContentLicense: CC BY-SA 3.0
Answers.CreationDate: 2017-09-28T05:27:20.680Z
Answers.LastActivityDate: 2017-09-28T05:27:20.680Z
Answers.UserDisplayName: Bennett Brown
Body: <p>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 most states in the U.S. do not have a computer science certification, new teachers are often left on their own to prepare. A number of one week summer courses exist, such as those provided by the college board, but this is grossly inadequate for a new computer science teacher.</p>
  
  <p>If we were to design an ideal course of studies to take a teacher with little to no programming experience and prepare them to teach a course like AP Computer Science, what should that program include? This question is not just theoretical since programs are currently being designed where none exist.</p>
  
  <p>Here I am looking for two types of answers:</p>
  
  <ul>
  <li>If you are familiar with an excellent program, what does it include?</li>
  <li>If you are teaching computer science, what courses do you wish you took before teaching CS and why?</li>
  </ul>
  
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2017-09-23T23:49:26.623Z
Comments.Text: This is probably a US only question. I think many other countries require more training for teachers. In the US the requirements differ radically by place and by type of school. But as the poster implies, there are few subject level requirements for CS teachers at this level. Worse, not every CS teacher actually desires to teach it, being required by circumstances.
Comments.UserDisplayName: Buffy
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2017-09-24T10:09:31.207Z
Comments.Text: Teacher requirement differ by State. Most States have no certification for CS at all, but some are changing that. Answers from faculty involved in teacher preparation (from any country) are welcome. Although my question is hypothetical–"what should a program include?"–I am interested in hearing about successful existing programs.
Comments.UserDisplayName: Thorn
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2017-09-25T08:49:16.383Z
Comments.Text: Are you asking because you want to create one? Is it just for one school? If you already exists, maybe for a different place, would you be interested in adopting it? Can you update question, not just reply to comments.
Comments.UserDisplayName: ctrl-alt-delor
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2017-09-25T13:00:50.450Z
Comments.Text: I'm voting to close this question as off-topic because I think, when it comes choosing faculty for an established education system, there are already systems in place. Set protocols which seems to be working okay. Unless you can give a new context, I believe this question is no serving any specific purpose.
Comments.UserDisplayName: Jay
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2017-09-25T16:23:57.377Z
Comments.Text: This question is getting at something interesting, but I think it needs to be more specific to be on-topic. Theoretical or "just wondering" questions are off-topic as per the help center. I'm voting to close for now, but I hope you edit your question to be more specific so we can reopen it.
Comments.UserDisplayName: Kevin Workman
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2017-10-01T02:46:04.733Z
Comments.Text: Currently NY does not have any certification requirements for CS. Discussions have started about creating a certification program and one of the State Universities of NY (Albany) has something for new CS teachers. This is all very preliminary, so I didn't want to give out any specifics. In planning to design propose such a program, a group of educators was asking each other precisely the question I posed here.
Comments.UserDisplayName: Thorn
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2017-10-01T02:52:47.683Z
Comments.Text: @Jay  In the U.S., much of the curriculum and teacher preparation is left up to individual states. While the Computer Science Teachers Association has created guidelines and a curriculum framework, few States have adopted this. We have a national push for more computer science education without a clear path in place to train teachers for the task. There are many teacher training workshops available, but no clear requirements in most states.
Comments.UserDisplayName: Thorn
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2017-10-01T04:31:45.013Z
Comments.Text: I see. Then, may be this question is relevant. I am withdrawing my close vote then.
Comments.UserDisplayName: Jay
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2017-10-02T11:00:42.393Z
Comments.Text: @Thorn You should edit your question to clarify. Don't expect people to read a discussion in the comments...
Comments.UserDisplayName: Sean Houlihane
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2017-10-06T18:33:21.273Z
Comments.Text: If you can't do, don't teach. The only people teaching something should be those who have done it professionally. This applies to CS, Math, Art, Driver's Ed, Woodshop... Everything. Only professionals should teach professions. No one wants to be taught by an amateur. (Amateur Radio being the only exception, as many of them are more proficient than people working in the field.)
Comments.UserDisplayName: user3244
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2017-10-06T18:36:36.980Z
Comments.Text: While what you say isn't false, it isn't enough. It requires more than proficiency to teach. Professionals often don't know why they do what they do, in fact. It just seems natural to them, perhaps since they have done it so long.
Comments.UserDisplayName: Buffy
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2017-10-06T18:44:19.083Z
Comments.Text: Not true. First, computer science is not a profession, it is an academic discipline. 
  
  Second, even if we equate CS with professional programming, the statement is still false. Do we think only professional chemists and biologists can teach biology? Only published authors and professional journalists can teach English? Only a professional translator can teach a foreign language? Many successful teachers have no professional experience in the discipline they teach. If we only allowed people with professional experience to teach, we would not have enough teachers in any subject.
Comments.UserDisplayName: Thorn
Comments.ContentLicense: CC BY-SA 3.0
Comments.CreationDate: 2017-10-08T17:01:42.667Z
Comments.Text: @user3244 While it is certainly true that you should have deep content knowledge, such knowledge is only gently correlated with professional experience. By this standard, most college professors (regardless of field!) should not be, and most of the greatest coaches in NFL history shouldn't have been allowed on the field.
Comments.UserDisplayName: Ben I.
Tags: <curriculum-design><adult-education><ap-computer-science-a>
Title: What does a certification program for CS high school teachers need to include?
ThreadText: # What does a certification program for CS high school teachers need to include?
  
  (Asked by: username_0 on 2017-09-23)
  
  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 most states in the U.S. do not have a computer science certification, new teachers are often left on their own to prepare. A number of one week summer courses exist, such as those provided by the college board, but this is grossly inadequate for a new computer science teacher.
  
  If we were to design an ideal course of studies to take a teacher with little to no programming experience and prepare them to teach a course like AP Computer Science, what should that program include? This question is not just theoretical since programs are currently being designed where none exist.
  
  Here I am looking for two types of answers:
  
  * If you are familiar with an excellent program, what does it include?
  * If you are teaching computer science, what courses do you wish you took before teaching CS and why?
  
  **Tags:** curriculum-design, adult-education, ap-computer-science-a
  
  > **Comments:**
  > **username_1**: This is probably a US only question. I think many other countries require more training for teachers. In the US the requirements differ radically by place and by type of school. But as the poster implies, there are few subject level requirements for CS teachers at this level. Worse, not every CS teacher actually desires to teach it, being required by circumstances.  
  > **username_0**: Teacher requirement differ by State. Most States have no certification for CS at all, but some are changing that. Answers from faculty involved in teacher preparation (from any country) are welcome. Although my question is hypothetical–"what should a program include?"–I am interested in hearing about successful existing programs.  
  > **username_2**: Are you asking because you want to create one? Is it just for one school? If you already exists, maybe for a different place, would you be interested in adopting it? Can you update question, not just reply to comments.  
  > **username_3**: I'm voting to close this question as off-topic because I think, when it comes choosing faculty for an established education system, there are already systems in place. Set protocols which seems to be working okay. Unless you can give a new context, I believe this question is no serving any specific purpose.  
  > **username_4**: This question is getting at something interesting, but I think it needs to be more specific to be on-topic. Theoretical or "just wondering" questions are off-topic as per the help center. I'm voting to close for now, but I hope you edit your question to be more specific so we can reopen it.  
  > **username_0**: Currently NY does not have any certification requirements for CS. Discussions have started about creating a certification program and one of the State Universities of NY (Albany) has something for new CS teachers. This is all very preliminary, so I didn't want to give out any specifics. In planning to design propose such a program, a group of educators was asking each other precisely the question I posed here.  
  > **username_0**: @username_3  In the U.S., much of the curriculum and teacher preparation is left up to individual states. While the Computer Science Teachers Association has created guidelines and a curriculum framework, few States have adopted this. We have a national push for more computer science education without a clear path in place to train teachers for the task. There are many teacher training workshops available, but no clear requirements in most states.  
  > **username_3**: I see. Then, may be this question is relevant. I am withdrawing my close vote then.  
  > **username_5**: @username_0 You should edit your question to clarify. Don't expect people to read a discussion in the comments...  
  > **username_6**: If you can't do, don't teach. The only people teaching something should be those who have done it professionally. This applies to CS, Math, Art, Driver's Ed, Woodshop... Everything. Only professionals should teach professions. No one wants to be taught by an amateur. (Amateur Radio being the only exception, as many of them are more proficient than people working in the field.)  
  > **username_1**: While what you say isn't false, it isn't enough. It requires more than proficiency to teach. Professionals often don't know why they do what they do, in fact. It just seems natural to them, perhaps since they have done it so long.  
  > **username_0**: Not true. First, computer science is not a profession, it is an academic discipline.   Second, even if we equate CS with professional programming, the statement is still false. Do we think only professional chemists and biologists can teach biology? Only published authors and professional journalists can teach English? Only a professional translator can teach a foreign language? Many successful teachers have no professional experience in the discipline they teach. If we only allowed people with professional experience to teach, we would not have enough teachers in any subject.  
  > **username_7**: @username_6 While it is certainly true that you should have deep content knowledge, such knowledge is only gently correlated with professional experience. By this standard, most college professors (regardless of field!) should not be, and most of the greatest coaches in NFL history shouldn't have been allowed on the field.  
  
  ---
  
  ## 3 answers
  
  ### Answer by username_9 on 2017-09-28. Score: 4 | Accepted answer
  
  As states in the US consider requirements to add a CS endorsement to a teaching certificate, the proposals vary widely. The changing landscape is described in the April 2017 EDC document [State of the States Landscape Report: State-level Policies Supporting Equitable K-12 Computer Science Education](https://www.edc.org/state-states-landscape-report-state-level-policies-supporting-equitable-k-12-computer-science).
  
  Iowa SF274, passed June 2017, allocated \$250 thousand for CS professional development. This is dwarfed by \$500 million [announced this week](https://www.nytimes.com/2017/09/26/technology/computer-science-stem-education.html?_r=0) by the US Department of Ed and the tech sector, but like parallel initiatives in many US states, it led the state's Department of Ed to consider CS endorsement requirements. The Department of Ed drafted recommendations as a starting point for a working group to consider. Iowa DoEd is suggesting in that draft:
  
  * 12 semester hours of CS coursework to include
    + Data structures
    + Algorithms
    + Operating Systems or Networking
  * 3 semester hours of a CS Teaching Methods course
  * 6 semester hours of coursework in Career and Technical Education
  
  I post this draft recommendation because the crowd-sourced opinion of this community would be informative to me as a member of the working group. The fact that the discussion here would be useful to someone like me as a CS educator in a time of fervent activity in legislative and executive realms is a reason not to close this question.
  
  
  ---
  
  ### Answer by username_9 on 2017-09-28. Score: 4
  
  The College of St. Scholastica in Minnesota has a [Computer Science Education graduate certificate program](http://www.css.edu/graduate/masters-doctoral-and-professional-programs/areas-of-study/master-of-education-(med)/certificate-in-computer-science-education.html). It is a four-course sequence designed to add a CS endorsement to a high school teaching certificate, though no state-issued endorsement exists yet in Minnesota. The courses:
  
  * *Computational Thinking and Standards* for the K-12 Teacher
  * *CS Principles*, covering the AP CS Principles course description with additional material covering pedagogy and CS pedagogical content knowledge
  * *Programming and Teaching Java*, a Java-based course covering the AP CS A course description with additional material covering pedagogy and CS pedagogical content knowledge
  * *CS Methods and Capstone*, covering pedagogy and CS pedagogical content knowledge, CS education research, and development of a CS curriculum unit
  
  
  ---
  
  ### Answer by username_8 on 2017-09-30. Score: 0
  
  I'd be very wary of any program with a course llike "CS Principle" or "CS Principles for Educators." First, it pushes the "you take it you can teach it" model which would imply that any kid that finishes a class has enough content knowledge to teach it and that just isn't so. It's also a red flag that it might follow the model of many math ed courses like "Calculus for math teachers" which purport to be about both the math and how to teach it but in practice are more frequently watered down math classes with formulaic content about instruction.
  
  I think the Iowa proposal submitted here is more on track. Content should be somewhat beyond the highest level a student might take so Algorithms / Data structures fits the bill. I personally don't agree with the networking / OS part but that's neither here nor there.
  
  On top of depth of knowledge you need breadth and on top of that pedagogy so you'd need some more courses there.
  
  > **Comments:**
  > **username_1**: I agree with you completely. However, too many teachers are assigned such courses when they are not ready at all. But if you are going to get training, get something that doesn't just help you keep a day ahead of the students.  
  > **username_8**: The danger is that too many states are going for the quick win and stopping at the weekend PD model. The right way to do it is set an M year goal. You can start now with nothing, you must do ABC by year N and finish the whole shebang by year M.  
  > **username_1**: Yes. Can you develop that into a complete answer here? Such a plan might require the backing of some organization behind it, i'd guess.  
  
  ---
  
  