Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. RFC on Introduction to Computer Programming Syllabus

RFC on Introduction to Computer Programming Syllabus

Scheduled Pinned Locked Moved The Lounge
csharptutoriallearning
35 Posts 16 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • B B Clay Shannon

    I have created a syllabus for an "Intro to Programming" course. I am open to suggestions on how to tweak it*. You can see it here: http://jsfiddle.net/clayshannon/LnWAp/[^] * If you have a "better idea" for a syllabus, simply create a "fork" of that and provide the link.

    D Offline
    D Offline
    dan sh
    wrote on last edited by
    #7

    Beginning itself is wrong. Who says everyone should learn to code?

    My CP workspace: Incredibly trivial and probably useless code samples[^]

    B 1 Reply Last reply
    0
    • D dan sh

      Beginning itself is wrong. Who says everyone should learn to code?

      My CP workspace: Incredibly trivial and probably useless code samples[^]

      B Offline
      B Offline
      B Clay Shannon
      wrote on last edited by
      #8

      You must not have read it, because it doesn't say that. The title itself ("Can Just Anybody/Should Everybody Learn to Code?") should make that clear.

      D 1 Reply Last reply
      0
      • B B Clay Shannon

        You must not have read it, because it doesn't say that. The title itself ("Can Just Anybody/Should Everybody Learn to Code?") should make that clear.

        D Offline
        D Offline
        dan sh
        wrote on last edited by
        #9

        I did. To me, it seems like an programming obsessed person shouting something. Your statement: "you doubtless agree that at least many people should learn to code." My response: no. Your statement: "My opinion is that even people who have no desire to program for a living should learn the basics, just so that they understand the world around them better and expand their mental horizons" My response: That is your opinion. No one cares. And who told you programming can lead to expansion of mental horizon? Don't loose this one: " I have created an outline, or syllabus, for a programming course targeting those without any previous experience in or specific knowledge of programming. I have in mind a one-year course, presented to either grade school or high school students, but this course could actually be adapted for people in general, not necessarily just those in school." Not true at all. Your "syllabus" is ridiculous. It tells about real World aspects after you have learnt technical aspect. Also, there are so many technologies in this World that one just cannot come up with Unified theory(yes, pun intended). I do not disagree with few things there but I certainly do not agree to it in its entirety.

        My CP workspace: Incredibly trivial and probably useless code samples[^]

        B 1 Reply Last reply
        0
        • D dan sh

          I did. To me, it seems like an programming obsessed person shouting something. Your statement: "you doubtless agree that at least many people should learn to code." My response: no. Your statement: "My opinion is that even people who have no desire to program for a living should learn the basics, just so that they understand the world around them better and expand their mental horizons" My response: That is your opinion. No one cares. And who told you programming can lead to expansion of mental horizon? Don't loose this one: " I have created an outline, or syllabus, for a programming course targeting those without any previous experience in or specific knowledge of programming. I have in mind a one-year course, presented to either grade school or high school students, but this course could actually be adapted for people in general, not necessarily just those in school." Not true at all. Your "syllabus" is ridiculous. It tells about real World aspects after you have learnt technical aspect. Also, there are so many technologies in this World that one just cannot come up with Unified theory(yes, pun intended). I do not disagree with few things there but I certainly do not agree to it in its entirety.

          My CP workspace: Incredibly trivial and probably useless code samples[^]

          B Offline
          B Offline
          B Clay Shannon
          wrote on last edited by
          #10

          My counter-responses: I am not obsessed with programming. Perhaps your definition of the word "many" differs from mine. As to programming expanding your mental horizons, it's commonly accepted. Do some research. I think you meant "lose" (the opposite of gain, or win) not "loose" which is the opposite of "tight." A major point of the syllabus is that there are myriad ever-changing technologies, but that there are certain basics/constants that are necessary.

          D 1 Reply Last reply
          0
          • B B Clay Shannon

            My counter-responses: I am not obsessed with programming. Perhaps your definition of the word "many" differs from mine. As to programming expanding your mental horizons, it's commonly accepted. Do some research. I think you meant "lose" (the opposite of gain, or win) not "loose" which is the opposite of "tight." A major point of the syllabus is that there are myriad ever-changing technologies, but that there are certain basics/constants that are necessary.

            D Offline
            D Offline
            dan sh
            wrote on last edited by
            #11

            B. Clay Shannon wrote:

            Perhaps your definition of the word "many" differs from mine.

            Any article that uses the word many to describe proportion of acceptance or rejection of certain notion is of course doomed. Never use many if you are trying to impose a presumably generalized opinion.

            B. Clay Shannon wrote:

            As to programming expanding your mental horizons, it's commonly accepted. Do some research.

            No it does not. Define mental horizon.

            B. Clay Shannon wrote:

            I think you meant "lose" (the opposite of gain, or win) not "loose" which is the opposite of "tight."

            Are you gonna talk about or grammar and language or content? (Hey loo, gonna is not even a word and this thing which I typed is wrong)

            B. Clay Shannon wrote:

            A major point of the syllabus is that there are myriad ever-changing technologies, but that there are certain basics/constants that are necessary.

            No. Nothing is necessary. Nothing is mandatory. The whole presumption is wrong. If you were to talk about extreme basics of programming regardless of technology, only thing you are left with is Maths. Yes one can debate a lot on this but everything in the end would lead to Maths.

            My CP workspace: Incredibly trivial and probably useless code samples[^]

            C 1 Reply Last reply
            0
            • B B Clay Shannon

              I have created a syllabus for an "Intro to Programming" course. I am open to suggestions on how to tweak it*. You can see it here: http://jsfiddle.net/clayshannon/LnWAp/[^] * If you have a "better idea" for a syllabus, simply create a "fork" of that and provide the link.

              M Offline
              M Offline
              Marco Bertschi
              wrote on last edited by
              #12

              I admit that I did not run through the whole thing (doesn't look bad, at least from the points I read), but here is a statement of mine what I think of teaching programming to everyone: Whoever is interested in learning to program shall have the opportunity of doing so. It is most commonly know that you need logical understanding to get into programming. People who don't have this understanding (talking of it as a resource which might be there, or can be learnt / sharpened) and are not interested in programming at all probably won't benefit from these courses. Looking at todays youth (even people from my generation, and I'm only 20 years old - let's include anyone from 20 to 25 in that statement) I'd prefer courses which teach them responsibility, Google searches and general computer awarness.

              I will never again mention that Dalek Dave was the poster of the One Millionth Lounge Post, nor that it was complete drivel.

              How to ask a question

              1 Reply Last reply
              0
              • B B Clay Shannon

                I have created a syllabus for an "Intro to Programming" course. I am open to suggestions on how to tweak it*. You can see it here: http://jsfiddle.net/clayshannon/LnWAp/[^] * If you have a "better idea" for a syllabus, simply create a "fork" of that and provide the link.

                M Offline
                M Offline
                Marc Clifton
                wrote on last edited by
                #13

                Well, all I can say is, thank you for putting it on jsFiddle so I could change the horrid color scheme. :) Marc

                B 1 Reply Last reply
                0
                • M Marc Clifton

                  Well, all I can say is, thank you for putting it on jsFiddle so I could change the horrid color scheme. :) Marc

                  B Offline
                  B Offline
                  B Clay Shannon
                  wrote on last edited by
                  #14

                  That's serendipitous, because I was just experimenting with that - what did you change it to?

                  M 1 Reply Last reply
                  0
                  • B B Clay Shannon

                    That's serendipitous, because I was just experimenting with that - what did you change it to?

                    M Offline
                    M Offline
                    Marc Clifton
                    wrote on last edited by
                    #15

                    I'm a traditionalist. White background, black headers. Marc

                    B 1 Reply Last reply
                    0
                    • M Marc Clifton

                      I'm a traditionalist. White background, black headers. Marc

                      B Offline
                      B Offline
                      B Clay Shannon
                      wrote on last edited by
                      #16

                      I can't bring myself to go that "plain vanilla," but I did compromise with this iteration: http://jsfiddle.net/clayshannon/LnWAp/4/[^] BTW, say "hey" to your brother Chad for me. I'm a Packers fan from way back. Hopefully he hasn't gone over to the Titans.

                      M 1 Reply Last reply
                      0
                      • B B Clay Shannon

                        I have created a syllabus for an "Intro to Programming" course. I am open to suggestions on how to tweak it*. You can see it here: http://jsfiddle.net/clayshannon/LnWAp/[^] * If you have a "better idea" for a syllabus, simply create a "fork" of that and provide the link.

                        E Offline
                        E Offline
                        englebart
                        wrote on last edited by
                        #17

                        Compare and align against the work that ACM has done. http://www.acm.org/education/curricula-recommendations[^] http://www.acm.org/education/CS2013-final-report.pdf[^]

                        B 1 Reply Last reply
                        0
                        • Richard Andrew x64R Richard Andrew x64

                          Did you also include the section that teaches people how to always ask for "example code" when posting a question on Code Project?

                          The difficult we do right away... ...the impossible takes slightly longer.

                          F Offline
                          F Offline
                          Fabio Franco
                          wrote on last edited by
                          #18

                          Richard Andrew x64 wrote:

                          Did you also include the section that teaches people how to always ask for "example codegive me codezz asap" when posting a question on Code Project?

                          FTFY

                          To alcohol! The cause of, and solution to, all of life's problems - Homer Simpson ---- Our heads are round so our thoughts can change direction - Francis Picabia

                          1 Reply Last reply
                          0
                          • B B Clay Shannon

                            I have created a syllabus for an "Intro to Programming" course. I am open to suggestions on how to tweak it*. You can see it here: http://jsfiddle.net/clayshannon/LnWAp/[^] * If you have a "better idea" for a syllabus, simply create a "fork" of that and provide the link.

                            K Offline
                            K Offline
                            Kirk 10389821
                            wrote on last edited by
                            #19

                            Clay, I like where it is going... One Headline missing (imo), is Analysis... How seeing a problem, and solving it logically, leads to programming projects. I guess in your terms: Why Does Programming Exist? Because we have inexpensive computer systems that CAN be programmed, and help solve problems. What are Programs and who can Create them? Solutions to specific problems. Anyone who can code. They are born of need/desire for things to be different than they are. For example, wouldn't it be nice if your cell phone would go Silent when you walk into a movie theatre, and then goes back to normal when you leave. Programming is about making that happen. The analysis that goes in first. Which leads to design decisions (which make or break apps)... And the ultimate requirements (GeoFencing vs. BlueTooth "silence" signal). Anyways, just some thoughts. As a software developer, my first position was Programmer/Analyst, and the Analyst portion was the coveted part... So I could be biased. HTH

                            B 1 Reply Last reply
                            0
                            • B B Clay Shannon

                              I can't bring myself to go that "plain vanilla," but I did compromise with this iteration: http://jsfiddle.net/clayshannon/LnWAp/4/[^] BTW, say "hey" to your brother Chad for me. I'm a Packers fan from way back. Hopefully he hasn't gone over to the Titans.

                              M Offline
                              M Offline
                              Marc Clifton
                              wrote on last edited by
                              #20

                              B. Clay Shannon wrote:

                              BTW, say "hey" to your brother Chad for me.

                              I'm an only child. :) Marc

                              1 Reply Last reply
                              0
                              • D dan sh

                                B. Clay Shannon wrote:

                                Perhaps your definition of the word "many" differs from mine.

                                Any article that uses the word many to describe proportion of acceptance or rejection of certain notion is of course doomed. Never use many if you are trying to impose a presumably generalized opinion.

                                B. Clay Shannon wrote:

                                As to programming expanding your mental horizons, it's commonly accepted. Do some research.

                                No it does not. Define mental horizon.

                                B. Clay Shannon wrote:

                                I think you meant "lose" (the opposite of gain, or win) not "loose" which is the opposite of "tight."

                                Are you gonna talk about or grammar and language or content? (Hey loo, gonna is not even a word and this thing which I typed is wrong)

                                B. Clay Shannon wrote:

                                A major point of the syllabus is that there are myriad ever-changing technologies, but that there are certain basics/constants that are necessary.

                                No. Nothing is necessary. Nothing is mandatory. The whole presumption is wrong. If you were to talk about extreme basics of programming regardless of technology, only thing you are left with is Maths. Yes one can debate a lot on this but everything in the end would lead to Maths.

                                My CP workspace: Incredibly trivial and probably useless code samples[^]

                                C Offline
                                C Offline
                                C Grant Anderson
                                wrote on last edited by
                                #21

                                I think that you're having a bad day and being argumentative. We all have bad days. Sometimes they go on for quite some time. But do we have to share the badness with others? But the originator of the post has a valid objective - Introducing computer programming to people who know nothing about it. With the presumption that they do. And he's stated his target audience is school kids. He should refine his target audience more but it's a well thought draft and he's asking for constructive input. I think he's doing a good job with what he's got. And with his intentions. We should honor that. - Grant

                                D 1 Reply Last reply
                                0
                                • E englebart

                                  Compare and align against the work that ACM has done. http://www.acm.org/education/curricula-recommendations[^] http://www.acm.org/education/CS2013-final-report.pdf[^]

                                  B Offline
                                  B Offline
                                  B Clay Shannon
                                  wrote on last edited by
                                  #22

                                  Thanks; aisle czech those out.

                                  1 Reply Last reply
                                  0
                                  • K Kirk 10389821

                                    Clay, I like where it is going... One Headline missing (imo), is Analysis... How seeing a problem, and solving it logically, leads to programming projects. I guess in your terms: Why Does Programming Exist? Because we have inexpensive computer systems that CAN be programmed, and help solve problems. What are Programs and who can Create them? Solutions to specific problems. Anyone who can code. They are born of need/desire for things to be different than they are. For example, wouldn't it be nice if your cell phone would go Silent when you walk into a movie theatre, and then goes back to normal when you leave. Programming is about making that happen. The analysis that goes in first. Which leads to design decisions (which make or break apps)... And the ultimate requirements (GeoFencing vs. BlueTooth "silence" signal). Anyways, just some thoughts. As a software developer, my first position was Programmer/Analyst, and the Analyst portion was the coveted part... So I could be biased. HTH

                                    B Offline
                                    B Offline
                                    B Clay Shannon
                                    wrote on last edited by
                                    #23

                                    Thanks; I have updated it, and changed the appearance a bit (somebody else's suggestion), and will look at another couple of links; I will post the result (link) when finished.

                                    1 Reply Last reply
                                    0
                                    • B B Clay Shannon

                                      I have created a syllabus for an "Intro to Programming" course. I am open to suggestions on how to tweak it*. You can see it here: http://jsfiddle.net/clayshannon/LnWAp/[^] * If you have a "better idea" for a syllabus, simply create a "fork" of that and provide the link.

                                      B Offline
                                      B Offline
                                      B Clay Shannon
                                      wrote on last edited by
                                      #24

                                      Latest iteration is http://jsfiddle.net/clayshannon/LnWAp/11/[^]

                                      1 Reply Last reply
                                      0
                                      • B B Clay Shannon

                                        I have created a syllabus for an "Intro to Programming" course. I am open to suggestions on how to tweak it*. You can see it here: http://jsfiddle.net/clayshannon/LnWAp/[^] * If you have a "better idea" for a syllabus, simply create a "fork" of that and provide the link.

                                        P Offline
                                        P Offline
                                        patbob
                                        wrote on last edited by
                                        #25

                                        I think I'd include a section on the differences between software, firmware, FPGAs, etc. The lines between these different types of programming are blurring, so knowledge about one gives some insight into the others. Many items are controlled by firmware these days, from refrigerators to cars. To me, this is the crux of why everybody should have some programming education, not because they should all become programmers, but because it helps people to feel in control of their world rather than at the mercy of it. For example, new cars consist of multiple modules of firmware, all interoperating. An understanding of software in general provides a lot of understanding of why they work they way they do (never needing a tuneup, check-engine light, OBD2 readers, learning adaptive shifting, etc.).

                                        We can program with only 1's, but if all you've got are zeros, you've got nothing.

                                        B 1 Reply Last reply
                                        0
                                        • P patbob

                                          I think I'd include a section on the differences between software, firmware, FPGAs, etc. The lines between these different types of programming are blurring, so knowledge about one gives some insight into the others. Many items are controlled by firmware these days, from refrigerators to cars. To me, this is the crux of why everybody should have some programming education, not because they should all become programmers, but because it helps people to feel in control of their world rather than at the mercy of it. For example, new cars consist of multiple modules of firmware, all interoperating. An understanding of software in general provides a lot of understanding of why they work they way they do (never needing a tuneup, check-engine light, OBD2 readers, learning adaptive shifting, etc.).

                                          We can program with only 1's, but if all you've got are zeros, you've got nothing.

                                          B Offline
                                          B Offline
                                          B Clay Shannon
                                          wrote on last edited by
                                          #26

                                          Thanks, but I think that's "beyond the scope" of this introductory course. It is intended for people as young as middle school and to just "scratch the surface" of the programming world in a "sampler"/"overview" fashion. I appreciate your thoughts on why all should learn *about* programming - to feel more in control of "their world."

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups