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. Would you choose C#...

Would you choose C#...

Scheduled Pinned Locked Moved The Lounge
csharpquestion
63 Posts 35 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.
  • D Daniel Pfeffer

    Kornfeld Eliyahu Peter wrote:

    Do we live in the same country?

    Geographically - yes. :)

    Kornfeld Eliyahu Peter wrote:

    (I used to be like her - it wasn't easy on me, so I decided to try and lead her on different paths...)

    At age 58, I am like her. As you say, it's not easy, but all I need out of life is to support my family and enjoy my hobbies. World-conquering can wait. :) My biggest problem is managers who see my age and experience, and want to "promote" me from specification, design, and coding to a managerial or a "people-facing" position. :omg:

    Freedom is the freedom to say that two plus two make four. If that is granted, all else follows. -- 6079 Smith W.

    S Offline
    S Offline
    sasadler
    wrote on last edited by
    #48

    I'm retired now but I love the tech so much that I avoided managerial positions like the plague. I have been a tech lead but that's as close as I went.

    1 Reply Last reply
    0
    • Kornfeld Eliyahu PeterK Kornfeld Eliyahu Peter

      ...as the language for teaching newcomers? That what they did at my daughter's school... She asked me if it is a good one - I told it is, to not to confuse her, but to be honest I'm not sure of it entirely...

      “Real stupidity beats artificial intelligence every time.” ― Terry Pratchett, Hogfather

      P Offline
      P Offline
      PIEBALDconsult
      wrote on last edited by
      #49

      I wouldn't. In my opinion a beginner needs to start with a simple language and learn more complex languages as he gains experience. With the result that he then knows several languages and can compare and contrast their features and syntax and make decisions about what he likes and doesn't like. Like many, I first learned BASIC, then Pascal, then a little COBOL and ForTran and assembly, then C, dabbled in C++, and finally C# for the past twenty years. Any object-oriented language is going to be too complex, with too much boiler-plate code the beginner doesn't need to know about (yet). Even C is too complex, requiring the developer to know about including libraries and linking them. A modern version of BASIC (not VB) should still be a good option for a beginner to get a feel for how to think about giving a computer instructions. Python (which I'm not about to learn) is pretty easy and can implant good indenting and formatting habits early. My kid had a couple of classes in Java. Well not really. Really just how to modify an existing MineCraft object, build it, and use it. He learned nothing.

      Kornfeld Eliyahu PeterK 1 Reply Last reply
      0
      • Kornfeld Eliyahu PeterK Kornfeld Eliyahu Peter

        ...as the language for teaching newcomers? That what they did at my daughter's school... She asked me if it is a good one - I told it is, to not to confuse her, but to be honest I'm not sure of it entirely...

        “Real stupidity beats artificial intelligence every time.” ― Terry Pratchett, Hogfather

        Z Offline
        Z Offline
        zezba9000
        wrote on last edited by
        #50

        Yes C# would be the best lang to teach IMO. C# supports tons of things you can branch to later. Unsafe code, Unity3D, etc. Its reach goes a lot further in the areas that people learning might care about.

        1 Reply Last reply
        0
        • R Rage

          Scratch[^] remains my choice for so many reasons, mainly because learning about sw engineering is not about learning a programming language, but learning about programming theory. Then C# is a good high level language to start with. As would by Python. I started with assembler, and this taught me far more than programming : a lot of computer architecture knowledge, which I still find useful today.

          Do not escape reality : improve reality !

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

          Hmmm, Never heard of Scratch. What exactly is it? Is it a visual learning tool?

          R 1 Reply Last reply
          0
          • Kornfeld Eliyahu PeterK Kornfeld Eliyahu Peter

            ...as the language for teaching newcomers? That what they did at my daughter's school... She asked me if it is a good one - I told it is, to not to confuse her, but to be honest I'm not sure of it entirely...

            “Real stupidity beats artificial intelligence every time.” ― Terry Pratchett, Hogfather

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

            Learning Programming is NOT about the language. It's about the concepts, the building blocks, the approaches. Back in the day, we had paper terminals and "edlin on steroids called TECO" (ex$$) Nowadays, the software development ENVIRONMENT takes students HOURS to wrap their brains around. I remember teaching Java, using NetBEANS, and the CLASSPATH problem all the kids ran into, despite being in the handouts. LOL. It boils down to: - Inputs - Outputs - Variables/Data Structures - Computation (Conditionals, Loops, Algorithms) - What's Written for the "compiler" - What's Written for the NEXT Developer! I liked focusing on how do you decide between FOR/WHILE (and graded down if you got it backwards/wrong). It's a skill. You have to actually open up the software, and key something in, know how to run it. With some of the modern IDEs... That's not trivial your first time!

            Kornfeld Eliyahu PeterK 1 Reply Last reply
            0
            • M Matt Bond

              I got an entire degree in Computer Science and there wasn't a word about the debugger...

              Bond Keep all things as simple as possible, but no simpler. -said someone, somewhere

              Kornfeld Eliyahu PeterK Offline
              Kornfeld Eliyahu PeterK Offline
              Kornfeld Eliyahu Peter
              wrote on last edited by
              #53

              We hadn't had a debugger too - but we did learned about the ideas and how to implement and use them (in code) to debug the behavior of our app...

              “Real stupidity beats artificial intelligence every time.” ― Terry Pratchett, Hogfather

              "It never ceases to amaze me that a spacecraft launched in 1977 can be fixed remotely from Earth." ― Brian Cox

              1 Reply Last reply
              0
              • P PIEBALDconsult

                I wouldn't. In my opinion a beginner needs to start with a simple language and learn more complex languages as he gains experience. With the result that he then knows several languages and can compare and contrast their features and syntax and make decisions about what he likes and doesn't like. Like many, I first learned BASIC, then Pascal, then a little COBOL and ForTran and assembly, then C, dabbled in C++, and finally C# for the past twenty years. Any object-oriented language is going to be too complex, with too much boiler-plate code the beginner doesn't need to know about (yet). Even C is too complex, requiring the developer to know about including libraries and linking them. A modern version of BASIC (not VB) should still be a good option for a beginner to get a feel for how to think about giving a computer instructions. Python (which I'm not about to learn) is pretty easy and can implant good indenting and formatting habits early. My kid had a couple of classes in Java. Well not really. Really just how to modify an existing MineCraft object, build it, and use it. He learned nothing.

                Kornfeld Eliyahu PeterK Offline
                Kornfeld Eliyahu PeterK Offline
                Kornfeld Eliyahu Peter
                wrote on last edited by
                #54

                When my youngest kid (9) asked me to teach him programming a brought out C64 with BASIC...

                “Real stupidity beats artificial intelligence every time.” ― Terry Pratchett, Hogfather

                "It never ceases to amaze me that a spacecraft launched in 1977 can be fixed remotely from Earth." ― Brian Cox

                D 1 Reply Last reply
                0
                • K Kirk 10389821

                  Learning Programming is NOT about the language. It's about the concepts, the building blocks, the approaches. Back in the day, we had paper terminals and "edlin on steroids called TECO" (ex$$) Nowadays, the software development ENVIRONMENT takes students HOURS to wrap their brains around. I remember teaching Java, using NetBEANS, and the CLASSPATH problem all the kids ran into, despite being in the handouts. LOL. It boils down to: - Inputs - Outputs - Variables/Data Structures - Computation (Conditionals, Loops, Algorithms) - What's Written for the "compiler" - What's Written for the NEXT Developer! I liked focusing on how do you decide between FOR/WHILE (and graded down if you got it backwards/wrong). It's a skill. You have to actually open up the software, and key something in, know how to run it. With some of the modern IDEs... That's not trivial your first time!

                  Kornfeld Eliyahu PeterK Offline
                  Kornfeld Eliyahu PeterK Offline
                  Kornfeld Eliyahu Peter
                  wrote on last edited by
                  #55

                  Kirk 10389821 wrote:

                  Learning Programming is NOT about the language. It's about the concepts, the building blocks, the approaches.

                  Agreed! That's the reason I fear C# will stand in the way to understand those things by hiding a lot of them...

                  “Real stupidity beats artificial intelligence every time.” ― Terry Pratchett, Hogfather

                  "It never ceases to amaze me that a spacecraft launched in 1977 can be fixed remotely from Earth." ― Brian Cox

                  1 Reply Last reply
                  0
                  • Kornfeld Eliyahu PeterK Kornfeld Eliyahu Peter

                    When my youngest kid (9) asked me to teach him programming a brought out C64 with BASIC...

                    “Real stupidity beats artificial intelligence every time.” ― Terry Pratchett, Hogfather

                    D Offline
                    D Offline
                    Daniel Pfeffer
                    wrote on last edited by
                    #56

                    Kornfeld Eliyahu Peter wrote:

                    C64 with BASIC...

                    Edsger Dijkstra:

                    It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.

                    Freedom is the freedom to say that two plus two make four. If that is granted, all else follows. -- 6079 Smith W.

                    Kornfeld Eliyahu PeterK P 2 Replies Last reply
                    0
                    • D Daniel Pfeffer

                      Kornfeld Eliyahu Peter wrote:

                      C64 with BASIC...

                      Edsger Dijkstra:

                      It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.

                      Freedom is the freedom to say that two plus two make four. If that is granted, all else follows. -- 6079 Smith W.

                      Kornfeld Eliyahu PeterK Offline
                      Kornfeld Eliyahu PeterK Offline
                      Kornfeld Eliyahu Peter
                      wrote on last edited by
                      #57

                      Which is obviously not true... Most of in my age-range started with some kind of 8 bit, home computer with BASIC on it...

                      “Real stupidity beats artificial intelligence every time.” ― Terry Pratchett, Hogfather

                      "It never ceases to amaze me that a spacecraft launched in 1977 can be fixed remotely from Earth." ― Brian Cox

                      D 1 Reply Last reply
                      0
                      • Kornfeld Eliyahu PeterK Kornfeld Eliyahu Peter

                        Which is obviously not true... Most of in my age-range started with some kind of 8 bit, home computer with BASIC on it...

                        “Real stupidity beats artificial intelligence every time.” ― Terry Pratchett, Hogfather

                        D Offline
                        D Offline
                        Daniel Pfeffer
                        wrote on last edited by
                        #58

                        It definitely is true. Just because code compiles as C or C++ or whatever doesn't mean that it uses the mechanisms available in the language. I've seen people write BASIC in many different languages. X| I suspect that many mediocre programmers program in the usages of the first language that they learnt; better programmers will learn the proper usages of each language. It's like learning to speak a foreign language - poor speakers will still use the idioms of their native language, but better speakers will use the idioms of the foreign language.

                        Freedom is the freedom to say that two plus two make four. If that is granted, all else follows. -- 6079 Smith W.

                        Kornfeld Eliyahu PeterK 1 Reply Last reply
                        0
                        • D Daniel Pfeffer

                          It definitely is true. Just because code compiles as C or C++ or whatever doesn't mean that it uses the mechanisms available in the language. I've seen people write BASIC in many different languages. X| I suspect that many mediocre programmers program in the usages of the first language that they learnt; better programmers will learn the proper usages of each language. It's like learning to speak a foreign language - poor speakers will still use the idioms of their native language, but better speakers will use the idioms of the foreign language.

                          Freedom is the freedom to say that two plus two make four. If that is granted, all else follows. -- 6079 Smith W.

                          Kornfeld Eliyahu PeterK Offline
                          Kornfeld Eliyahu PeterK Offline
                          Kornfeld Eliyahu Peter
                          wrote on last edited by
                          #59

                          I've seen code in C# that screams COBOL all over... That's true... But Edsger Dijkstra states that the moment you had your fair share of BASIC you are lost for good - that's just not true! As you stated:

                          Daniel Pfeffer wrote:

                          better programmers will learn the proper usages of each language

                          “Real stupidity beats artificial intelligence every time.” ― Terry Pratchett, Hogfather

                          "It never ceases to amaze me that a spacecraft launched in 1977 can be fixed remotely from Earth." ― Brian Cox

                          1 Reply Last reply
                          0
                          • L Lost User

                            Hmmm, Never heard of Scratch. What exactly is it? Is it a visual learning tool?

                            R Offline
                            R Offline
                            Rage
                            wrote on last edited by
                            #60

                            Yes, it is a visual learning tool - you can pseudo-code using blocks, it is quite good to grasp basics of software development. Take my link above and give it a try if you have a couple of minutes, it is quite straight forward.

                            Do not escape reality : improve reality !

                            1 Reply Last reply
                            0
                            • Kornfeld Eliyahu PeterK Kornfeld Eliyahu Peter

                              ...as the language for teaching newcomers? That what they did at my daughter's school... She asked me if it is a good one - I told it is, to not to confuse her, but to be honest I'm not sure of it entirely...

                              “Real stupidity beats artificial intelligence every time.” ― Terry Pratchett, Hogfather

                              M Offline
                              M Offline
                              MikeCO10
                              wrote on last edited by
                              #61

                              I'll be the controversial curmudgeon here and say, Yes, I would. Using the VS IDE. Why? I think the goal of an intro course needs to be wrapped around the concept of software development and engineering instead of coding. You can build a really quick and complete app while you learn the basic constructs of a programming language. I'd make it interesting with my first assignment being to come up with a list of a few apps you want to build, reach a consensus with the class and dive in. You can explore GUI concepts as well as a ton of other aspects that are handled by the IDE but also exposed through it for further teaching moments. Working from a project-based level, you can touch on so many key programming aspects. Critical thinking pieces that go beyond just coding syntax. I think too many teaching strands create "cubicle-coders", without looking at overall design concepts. Over the years, I've worked with some great programmers. Some of them could build an amazing app given a fairly extensively documented pseudo-script. But tell them "I need a screen to get this information, do this to it, create this result, and do something with it" would be torturous. That said, it's an intro class. The goal isn't to create a C# wizard that could create a monster app but to teach the basic concepts. It's a pretty easy jump to learn syntax of a given language when you get the underlying concepts. Whether a dog is a dog, chien, perro, or hund isn't hard to relate if you know it is a dog.

                              1 Reply Last reply
                              0
                              • D Daniel Pfeffer

                                Kornfeld Eliyahu Peter wrote:

                                C64 with BASIC...

                                Edsger Dijkstra:

                                It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration.

                                Freedom is the freedom to say that two plus two make four. If that is granted, all else follows. -- 6079 Smith W.

                                P Offline
                                P Offline
                                PIEBALDconsult
                                wrote on last edited by
                                #62

                                Daniel Pfeffer wrote:

                                beyond hope of regeneration

                                Definitely untrue. Just hyperbole and rhetoric, which is fine. A counter argument is that we developers who began with BASIC and did "regenerate" are the better for it. I do wonder which form of BASIC he was commenting on, the earliest form (1964) which requires line numbers and has few features, or a modern version (but still not VB). I have seen significant programs written in VAX BASIC -- though I still have nightmares.

                                1 Reply Last reply
                                0
                                • D Daniel Pfeffer

                                  Kornfeld Eliyahu Peter wrote:

                                  Do we live in the same country?

                                  Geographically - yes. :)

                                  Kornfeld Eliyahu Peter wrote:

                                  (I used to be like her - it wasn't easy on me, so I decided to try and lead her on different paths...)

                                  At age 58, I am like her. As you say, it's not easy, but all I need out of life is to support my family and enjoy my hobbies. World-conquering can wait. :) My biggest problem is managers who see my age and experience, and want to "promote" me from specification, design, and coding to a managerial or a "people-facing" position. :omg:

                                  Freedom is the freedom to say that two plus two make four. If that is granted, all else follows. -- 6079 Smith W.

                                  R Offline
                                  R Offline
                                  Roger House
                                  wrote on last edited by
                                  #63

                                  I've worked hard to stay at the bottom of the corporate ladder.

                                  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