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. To introduce students on programming? Which language is more appropriate now?

To introduce students on programming? Which language is more appropriate now?

Scheduled Pinned Locked Moved The Lounge
c++csharphelpquestion
65 Posts 12 Posters 5 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.
  • N Nithin Sundar

    This might be a bit tricky but my suggestion is to teach them C++ and then have them learn to use C functions inside(Like how these days some people still prefer using the C I/O library inside C++). That way you can get both C and C++ covered at the same time. C# is a great option as well and once you learn one language, the others are only different in terms of syntax. Of course there might be a few differences here and there, but it won't be that hard later on. The real task here is to finish teaching them one language properly. If you are planning to get them involved in writing win32 applications alone then C/C++ would be the way to go. C# is indeed a good choice for Windows Applications as well but according to me, it's better used for web applications. These are just my opinions and I may be wrong. Feel free to correct me. :) EDIT: If you are instead looking at getting them comfortable with programming than serious in it then you might want to try this too: http://msdn.microsoft.com/en-us/beginner/ff384126.aspx[^] Smallbasic is nice. :)

    My Blog What you do, when you don't know what to do is what you do when you don't want to do what you do.

    A Offline
    A Offline
    AspDotNetDev
    wrote on last edited by
    #5

    Smallbasic is a good suggestion. Probably much more suited to teaching kids these days than QuickBasic would be.

    [WikiLeaks Cablegate Cables]

    N 1 Reply Last reply
    0
    • A AspDotNetDev

      Smallbasic is a good suggestion. Probably much more suited to teaching kids these days than QuickBasic would be.

      [WikiLeaks Cablegate Cables]

      N Offline
      N Offline
      Nithin Sundar
      wrote on last edited by
      #6

      10 REM 20 PRINT "THANK YOU!" 30 END

      My Blog What you do, when you don't know what to do is what you do when you don't want to do what you do.

      A M L 3 Replies Last reply
      0
      • N Nithin Sundar

        10 REM 20 PRINT "THANK YOU!" 30 END

        My Blog What you do, when you don't know what to do is what you do when you don't want to do what you do.

        A Offline
        A Offline
        AspDotNetDev
        wrote on last edited by
        #7

        That just gave me a flashback and a chill down my spine.

        [WikiLeaks Cablegate Cables]

        N L 2 Replies Last reply
        0
        • A AspDotNetDev

          That just gave me a flashback and a chill down my spine.

          [WikiLeaks Cablegate Cables]

          N Offline
          N Offline
          Nithin Sundar
          wrote on last edited by
          #8

          :laugh:

          My Blog What you do, when you don't know what to do is what you do when you don't want to do what you do.

          1 Reply Last reply
          0
          • L Lost User

            I think it depends a little on why you are teaching them (or, more accurately, why they are learning) Is it with a view to working in the future in software development, or just for fun? I think at that age, having them be able to produce something quickly that they can see, and play with, is more important. Learning OO, I think, is sensible in this day and age - but I'd personally steer clear of C++. C# is OK but sometimes all the curly braces scare new kids off. VB is OK - especially if you can have them do some 'pretty' stuff where they have at least some time to play with the GUI as well as writing code. I taught a group VB .Net a while ago - they wrote a simple Poker Machine (one-armed bandit, fruit machine) with LOTS of help and hints from me.

            Weiye Chen wrote:

            Perhaps children are now more intelligent and would not have much problem starting from C++ or C#?

            I doubt any increase in intelligence! I Also don't think it takes any greater intelligence to learn C++ or C# or C or VB or some other language (Lego Mindstorms is a goodie especially if you want to involve them in a project)

            ___________________________________________ .\\axxx (That's an 'M')

            W Offline
            W Offline
            Weiye Chen
            wrote on last edited by
            #9

            _Maxxx_ wrote:

            I think it depends a little on why you are teaching them (or, more accurately, why they are learning) Is it with a view to working in the future in software development, or just for fun?

            It is mainly for a competition (AIO[^]) where they would need to read some values off a text file and output the results in another text file, based on a given problem scenario. They gave us the flexibility to do the coding in either C, C++, C#, PASCAL, Java, PHP, Pyton and VB. These students have shown interest to learn programming and thus selected to learn. I am thinking of using C as a brief introduction to the basics like data types, loops, functions and later on move to C++ or C#. I prefer the latter as i am worried the students might have difficulty understanding and managing pointers.

            Weiye Chen A hermit trying to learn hibernation...

            M 1 Reply Last reply
            0
            • A AspDotNetDev

              That just gave me a flashback and a chill down my spine.

              [WikiLeaks Cablegate Cables]

              L Offline
              L Offline
              Lost User
              wrote on last edited by
              #10

              :laugh: :laugh:

              Regards, Koushik. Most people never run far enough on their first wind to find out if they've got a second. Give your dreams all you've got and you'll be amazed at the energy that comes out of you.

              1 Reply Last reply
              0
              • N Nithin Sundar

                10 REM 20 PRINT "THANK YOU!" 30 END

                My Blog What you do, when you don't know what to do is what you do when you don't want to do what you do.

                M Offline
                M Offline
                Mark_Wallace
                wrote on last edited by
                #11

                Nithin Sundar wrote:

                10 REM 20 PRINT "THANK YOU!" 30 END

                You are receiving this e-mail because the following bug has been assigned to you. Bug 38265: Insufficient documentation in code.

                I wanna be a eunuchs developer! Pass me a bread knife!

                N 1 Reply Last reply
                0
                • W Weiye Chen

                  _Maxxx_ wrote:

                  I think it depends a little on why you are teaching them (or, more accurately, why they are learning) Is it with a view to working in the future in software development, or just for fun?

                  It is mainly for a competition (AIO[^]) where they would need to read some values off a text file and output the results in another text file, based on a given problem scenario. They gave us the flexibility to do the coding in either C, C++, C#, PASCAL, Java, PHP, Pyton and VB. These students have shown interest to learn programming and thus selected to learn. I am thinking of using C as a brief introduction to the basics like data types, loops, functions and later on move to C++ or C#. I prefer the latter as i am worried the students might have difficulty understanding and managing pointers.

                  Weiye Chen A hermit trying to learn hibernation...

                  M Offline
                  M Offline
                  Mark_Wallace
                  wrote on last edited by
                  #12

                  I'd try it in C, first. A little understanding of memory allocation goes a long way.

                  I wanna be a eunuchs developer! Pass me a bread knife!

                  1 Reply Last reply
                  0
                  • W Weiye Chen

                    If you were to teach some school students say aged 15-16 (who have no programming experience) the basics of software programming, which language would you begin with? I was taught C->C++->Win32->MFC but i am wondering nowadays if there is still a need to start from C. Perhaps children are now more intelligent and would not have much problem starting from C++ or C#?

                    Weiye Chen A hermit trying to learn hibernation...

                    L Offline
                    L Offline
                    Lost User
                    wrote on last edited by
                    #13

                    That depends on what kind of students you have. If they are learning a their job and are going to keep on programming in the future, then I would go with C++. This way they can pick up some basic things which managed languages (per definition) don't have. In the long run they will need some experience with pointers and managing memory, otherwise they will keep on producing new material for the Code Horrors section. If it's about a general introduction to programming, then C# and the .Net framework are a good choice. Some stumblestones (like pointers and memory management) are out of the way and you quickly can get the students to work on all kinds of things.

                    "I have what could be described as the most wide-open sense of humor on the site, and if I don't think something is funny, then it really isn't." - JSOC, 2011 -----
                    "Friar Modest never was a prior" - Italian proverb

                    1 Reply Last reply
                    0
                    • W Weiye Chen

                      If you were to teach some school students say aged 15-16 (who have no programming experience) the basics of software programming, which language would you begin with? I was taught C->C++->Win32->MFC but i am wondering nowadays if there is still a need to start from C. Perhaps children are now more intelligent and would not have much problem starting from C++ or C#?

                      Weiye Chen A hermit trying to learn hibernation...

                      J Offline
                      J Offline
                      Johnny J
                      wrote on last edited by
                      #14

                      Cobol ;P

                      1f y0u c4n r34d 7h15 y0u r3411y n33d 70 g37 14!d Gotta run; I've got people to do and things to see... Don't tell my folks I'm a computer programmer - They think I'm a piano player in a cat house... Da mihi sis crustum Etruscum cum omnibus in eo!

                      1 Reply Last reply
                      0
                      • N Nithin Sundar

                        10 REM 20 PRINT "THANK YOU!" 30 END

                        My Blog What you do, when you don't know what to do is what you do when you don't want to do what you do.

                        L Offline
                        L Offline
                        Lost User
                        wrote on last edited by
                        #15

                        Ok, sir, please explain where you got the code from my first program which I wrote when I stumbled over a TRS-80 (model I) back in 1978?

                        "I have what could be described as the most wide-open sense of humor on the site, and if I don't think something is funny, then it really isn't." - JSOC, 2011 -----
                        "Friar Modest never was a prior" - Italian proverb

                        N 1 Reply Last reply
                        0
                        • N Nithin Sundar

                          This might be a bit tricky but my suggestion is to teach them C++ and then have them learn to use C functions inside(Like how these days some people still prefer using the C I/O library inside C++). That way you can get both C and C++ covered at the same time. C# is a great option as well and once you learn one language, the others are only different in terms of syntax. Of course there might be a few differences here and there, but it won't be that hard later on. The real task here is to finish teaching them one language properly. If you are planning to get them involved in writing win32 applications alone then C/C++ would be the way to go. C# is indeed a good choice for Windows Applications as well but according to me, it's better used for web applications. These are just my opinions and I may be wrong. Feel free to correct me. :) EDIT: If you are instead looking at getting them comfortable with programming than serious in it then you might want to try this too: http://msdn.microsoft.com/en-us/beginner/ff384126.aspx[^] Smallbasic is nice. :)

                          My Blog What you do, when you don't know what to do is what you do when you don't want to do what you do.

                          B Offline
                          B Offline
                          Brady Kelly
                          wrote on last edited by
                          #16

                          I agree. Students need an unforgiving language, so no subtleties get overlooked. Us old timers sometimes just get annoyed by the subtleties and prefer a more forgiving language. :laugh:

                          1 Reply Last reply
                          0
                          • W Weiye Chen

                            If you were to teach some school students say aged 15-16 (who have no programming experience) the basics of software programming, which language would you begin with? I was taught C->C++->Win32->MFC but i am wondering nowadays if there is still a need to start from C. Perhaps children are now more intelligent and would not have much problem starting from C++ or C#?

                            Weiye Chen A hermit trying to learn hibernation...

                            C Offline
                            C Offline
                            Christian Graus
                            wrote on last edited by
                            #17

                            Starting from C has been stupid for at least 10 years. Starting from C++ has been stupid for at least 4.

                            Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.

                            L M 2 Replies Last reply
                            0
                            • M Mark_Wallace

                              Nithin Sundar wrote:

                              10 REM 20 PRINT "THANK YOU!" 30 END

                              You are receiving this e-mail because the following bug has been assigned to you. Bug 38265: Insufficient documentation in code.

                              I wanna be a eunuchs developer! Pass me a bread knife!

                              N Offline
                              N Offline
                              Nithin Sundar
                              wrote on last edited by
                              #18

                              It wasn't me! The developer went that way! *points*

                              My Blog What you do, when you don't know what to do is what you do when you don't want to do what you do.

                              1 Reply Last reply
                              0
                              • W Weiye Chen

                                If you were to teach some school students say aged 15-16 (who have no programming experience) the basics of software programming, which language would you begin with? I was taught C->C++->Win32->MFC but i am wondering nowadays if there is still a need to start from C. Perhaps children are now more intelligent and would not have much problem starting from C++ or C#?

                                Weiye Chen A hermit trying to learn hibernation...

                                L Offline
                                L Offline
                                Lost User
                                wrote on last edited by
                                #19

                                Weiye Chen wrote:

                                Perhaps children are now more intelligent

                                Not in my experience. They are more stupid if you ask me. (Since the exams are so banaal lthese days anyone can egt to university). So, what do you want to teach? Computer programming as engineering or how to make money as a programmer? If its 1 then its Assembler, stacks, heaps, registers leading on to C, then C++ (as part of OO) and then the managed/easy languages, Java, C#, VB. If its 2 then C#.

                                "It is a remarkable fact that despite the worldwide expenditure of perhaps US$50 billion since 1990, and the efforts of tens of thousands of scientists worldwide, no human climate signal has yet been detected that is distinct from natural variation." Bob Carter, Research Professor of Geology, James Cook University, Townsville

                                C 1 Reply Last reply
                                0
                                • L Lost User

                                  Ok, sir, please explain where you got the code from my first program which I wrote when I stumbled over a TRS-80 (model I) back in 1978?

                                  "I have what could be described as the most wide-open sense of humor on the site, and if I don't think something is funny, then it really isn't." - JSOC, 2011 -----
                                  "Friar Modest never was a prior" - Italian proverb

                                  N Offline
                                  N Offline
                                  Nithin Sundar
                                  wrote on last edited by
                                  #20

                                  :~

                                  My Blog What you do, when you don't know what to do is what you do when you don't want to do what you do.

                                  1 Reply Last reply
                                  0
                                  • C Christian Graus

                                    Starting from C has been stupid for at least 10 years. Starting from C++ has been stupid for at least 4.

                                    Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.

                                    L Offline
                                    L Offline
                                    Lost User
                                    wrote on last edited by
                                    #21

                                    Of course you do realise that all your high level languages use compilers written in C and run on platforms written in C and talk to devices programmed in C?

                                    "It is a remarkable fact that despite the worldwide expenditure of perhaps US$50 billion since 1990, and the efforts of tens of thousands of scientists worldwide, no human climate signal has yet been detected that is distinct from natural variation." Bob Carter, Research Professor of Geology, James Cook University, Townsville

                                    C 1 Reply Last reply
                                    0
                                    • L Lost User

                                      Of course you do realise that all your high level languages use compilers written in C and run on platforms written in C and talk to devices programmed in C?

                                      "It is a remarkable fact that despite the worldwide expenditure of perhaps US$50 billion since 1990, and the efforts of tens of thousands of scientists worldwide, no human climate signal has yet been detected that is distinct from natural variation." Bob Carter, Research Professor of Geology, James Cook University, Townsville

                                      C Offline
                                      C Offline
                                      Christian Graus
                                      wrote on last edited by
                                      #22

                                      Yes. I also know that it takes people with a whole lot of resources and skills to build my car. That doesn't mean I need to know how to build one, in order to drive it. It certainly doesn't mean that I need to know how to build one BEFORE I learn to drive it, any more than I needed to know how to make Bearnaise sauce before I learned to boil a kettle.

                                      Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.

                                      L 1 Reply Last reply
                                      0
                                      • L Lost User

                                        Weiye Chen wrote:

                                        Perhaps children are now more intelligent

                                        Not in my experience. They are more stupid if you ask me. (Since the exams are so banaal lthese days anyone can egt to university). So, what do you want to teach? Computer programming as engineering or how to make money as a programmer? If its 1 then its Assembler, stacks, heaps, registers leading on to C, then C++ (as part of OO) and then the managed/easy languages, Java, C#, VB. If its 2 then C#.

                                        "It is a remarkable fact that despite the worldwide expenditure of perhaps US$50 billion since 1990, and the efforts of tens of thousands of scientists worldwide, no human climate signal has yet been detected that is distinct from natural variation." Bob Carter, Research Professor of Geology, James Cook University, Townsville

                                        C Offline
                                        C Offline
                                        Christian Graus
                                        wrote on last edited by
                                        #23

                                        fat_boy wrote:

                                        If its 1 then its Assembler, stacks, heaps, registers leading on to C, then C++ (as part of OO) and then the managed/easy languages, Java, C#, VB.

                                        Learning assembler first is a great idea, if your goal is for most of your class to fail and never consider learning to program again.

                                        Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.

                                        L 1 Reply Last reply
                                        0
                                        • C Christian Graus

                                          Yes. I also know that it takes people with a whole lot of resources and skills to build my car. That doesn't mean I need to know how to build one, in order to drive it. It certainly doesn't mean that I need to know how to build one BEFORE I learn to drive it, any more than I needed to know how to make Bearnaise sauce before I learned to boil a kettle.

                                          Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.

                                          L Offline
                                          L Offline
                                          Lost User
                                          wrote on last edited by
                                          #24

                                          You are comparing apples and oranges. Using a computer is entirely different to programming one.

                                          "It is a remarkable fact that despite the worldwide expenditure of perhaps US$50 billion since 1990, and the efforts of tens of thousands of scientists worldwide, no human climate signal has yet been detected that is distinct from natural variation." Bob Carter, Research Professor of Geology, James Cook University, Townsville

                                          C 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