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. No one teaches PROGRAMMING any more

No one teaches PROGRAMMING any more

Scheduled Pinned Locked Moved The Lounge
155 Posts 78 Posters 129 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.
  • R Ray Cassick

    They all teach application development, but not programming. When I started out you could not get anywhere near a computer until you could count in binary, octal and hex and knew enough to run a small program on paper. Ah, where are those days again....


    FFRF[^]


    R Offline
    R Offline
    Ravi Bhavnani
    wrote on last edited by
    #8

    Ray Cassick wrote:

    Ah, where are those days again....

    I hear you, Ray. I'm surprised at the number of developers who hold a CS degree who've never written a compiler, never programmed in assembler and haven't had more than an introductory course in operating systems. :sigh: /ravi

    My new year resolution: 2048 x 1536 Home | Articles | My .NET bits | Freeware ravib(at)ravib(dot)com

    C A 2 Replies Last reply
    0
    • C Christian Graus

      Someone the other day posted their VB assignment ( in university ). It was 'name your 10 favourite properties of VB.NET controls and why you like them. The OP was asking 'what's a property' and 'what's a control property'. I think CS is dead, I am considering changing careers.

      Christian Graus Please read this if you don't understand the answer I've given you "also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )

      C Offline
      C Offline
      Chris Austin
      wrote on last edited by
      #9

      Christian Graus wrote:

      I think CS is dead

      I don't think it's dead, just endangered. Good lord, I hate interviewing people these days. I had one guy get incredulous with me when I asked him how he'd implement a simple b-tree. I think we have lowered to bar way too much.

      A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects. - -Lazarus Long

      L T D 3 Replies Last reply
      0
      • R Ravi Bhavnani

        Ray Cassick wrote:

        Ah, where are those days again....

        I hear you, Ray. I'm surprised at the number of developers who hold a CS degree who've never written a compiler, never programmed in assembler and haven't had more than an introductory course in operating systems. :sigh: /ravi

        My new year resolution: 2048 x 1536 Home | Articles | My .NET bits | Freeware ravib(at)ravib(dot)com

        C Offline
        C Offline
        Chris Austin
        wrote on last edited by
        #10

        Yep, educational institutions are now pandering to "enterprise" business. So, all that these poor students are getting exposed to are high level frameworks. God forbid they know how a computer works.

        A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects. - -Lazarus Long

        R 1 Reply Last reply
        0
        • R Ray Cassick

          They all teach application development, but not programming. When I started out you could not get anywhere near a computer until you could count in binary, octal and hex and knew enough to run a small program on paper. Ah, where are those days again....


          FFRF[^]


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

          Ray Cassick wrote:

          Ah, where are those days again....

          Thankfully lost in a haze of tedium.

          1 Reply Last reply
          0
          • C Chris Austin

            Yep, educational institutions are now pandering to "enterprise" business. So, all that these poor students are getting exposed to are high level frameworks. God forbid they know how a computer works.

            A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects. - -Lazarus Long

            R Offline
            R Offline
            Ravi Bhavnani
            wrote on last edited by
            #12

            Chris Austin wrote:

            Yep, educational institutions are now pandering to "enterprise" business.

            ROFL! That's why I love MIT's brief but effective differentiator[^]. :) /ravi

            My new year resolution: 2048 x 1536 Home | Articles | My .NET bits | Freeware ravib(at)ravib(dot)com

            P 1 Reply Last reply
            0
            • R Ravi Bhavnani

              Chris Austin wrote:

              Yep, educational institutions are now pandering to "enterprise" business.

              ROFL! That's why I love MIT's brief but effective differentiator[^]. :) /ravi

              My new year resolution: 2048 x 1536 Home | Articles | My .NET bits | Freeware ravib(at)ravib(dot)com

              P Offline
              P Offline
              Patrick Etc
              wrote on last edited by
              #13

              Ravi Bhavnani wrote:

              ROFL! That's why love MIT's brief but effective differentiator[^].

              Funny. For a second, I thought I was reading the synopsis of the CS department where I went to school - their approach was pretty much exactly the same. Little or no emphasis on languages; little or no emphasis on application development for its own sake. Lots of emphasis on algorithms and data structures; lots of emphasis on math. Incidentally, my degree was in Engineering, but there's alot of overlap and I took alot of CS classes.


              It has become appallingly obvious that our technology has exceeded our humanity. - Albert Einstein

              T R 2 Replies Last reply
              0
              • C Chris Austin

                Christian Graus wrote:

                I think CS is dead

                I don't think it's dead, just endangered. Good lord, I hate interviewing people these days. I had one guy get incredulous with me when I asked him how he'd implement a simple b-tree. I think we have lowered to bar way too much.

                A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects. - -Lazarus Long

                L Offline
                L Offline
                Leslie Sanford
                wrote on last edited by
                #14

                Chris Austin wrote:

                I had one guy get incredulous with me when I asked him how he'd implement a simple b-tree. I think we have lowered to bar way too much.

                Hmm, I'm not sure I could answer that one off the top of my head. B-trees[^] are rather non-trivial, aren't they? Or maybe I just haven't studied them closely.

                T C C 3 Replies Last reply
                0
                • C Chris Austin

                  Christian Graus wrote:

                  I think CS is dead

                  I don't think it's dead, just endangered. Good lord, I hate interviewing people these days. I had one guy get incredulous with me when I asked him how he'd implement a simple b-tree. I think we have lowered to bar way too much.

                  A human being should be able to change a diaper, plan an invasion, butcher a hog, conn a ship, design a building, write a sonnet, balance accounts, build a wall, set a bone, comfort the dying, take orders, give orders, cooperate, act alone, solve equations, analyze a new problem, pitch manure, program a computer, cook a tasty meal, fight efficiently, die gallantly. Specialization is for insects. - -Lazarus Long

                  T Offline
                  T Offline
                  T Mac Oz
                  wrote on last edited by
                  #15

                  Chris Austin wrote:

                  I had one guy get incredulous with me when I asked him how he'd implement a simple b-tree.

                  I'd be incredulous if he didn't just say, "I wouldn't, I'd grab one of the myriad tried & true, publicly available b-tree implementations that are already out there". Requesting simple example code is a good way to weed out those who can't code from those who can but isn't code re-use supposed to be one of those things a GOOD programmer strives for?

                  T-Mac-Oz

                  C 1 Reply Last reply
                  0
                  • R Ray Cassick

                    They all teach application development, but not programming. When I started out you could not get anywhere near a computer until you could count in binary, octal and hex and knew enough to run a small program on paper. Ah, where are those days again....


                    FFRF[^]


                    S Offline
                    S Offline
                    socobo
                    wrote on last edited by
                    #16

                    The worst is in the gaming degrees - particularly the ones started by schools to seem "hip" (that's what the kids say right?). They pay thousands of dollars to learn how to point and click. If this is supposed to be the new competition I've got some awesome job security. We have kids coming out to interview that might have some concepts like state management and render queues in their pocket but if you asked them to implement it their brains will explode. And not in the good way. Actually there really isn't a good way is there?

                    1 Reply Last reply
                    0
                    • L Leslie Sanford

                      Chris Austin wrote:

                      I had one guy get incredulous with me when I asked him how he'd implement a simple b-tree. I think we have lowered to bar way too much.

                      Hmm, I'm not sure I could answer that one off the top of my head. B-trees[^] are rather non-trivial, aren't they? Or maybe I just haven't studied them closely.

                      T Offline
                      T Offline
                      T Mac Oz
                      wrote on last edited by
                      #17

                      Leslie Sanford wrote:

                      B-trees[^] are rather non-trivial, aren't they?

                      Depends on the requirements:

                      Leslie Sanford wrote:

                      a simple b-tree

                      is little more than a linked list (though with two "next" - left & right - nodes instead of one). A self balancing b-tree (actually useful as more than just an academic exercise) does take a bit more work.

                      T-Mac-Oz

                      E A J 3 Replies Last reply
                      0
                      • A Anton Afanasyev

                        As funny as it sounds, it really is a sad state that CS is in right now. I, personally, blame outsourcing.

                        "impossible" is just an opinion.

                        C Offline
                        C Offline
                        cpp samurai
                        wrote on last edited by
                        #18

                        Hello Folks, I am from the outsourcing capital of the world. Alright, don't shoot, I am one of guys who can program. I am in product development, mostly telephony related. I wrote my first program in 'C' back in 1989, and switched to 8086 assembly for a year and finally into C++ in 1991, I am still with it. I first heard about STL from BS himself when he presented it in 1994 at C++ 11th birthday event at AT&T Holmdel (NJ). So I have been around. ;-) I guess you are all talking about situation in US, but India is in no better shape. Despite having so many programming vacancies, hardly anybody knows programming anymore. Therefore, blaming the situation on lack of jobs (out-sourcing) can't be right. IMHO, programming can be taught only by programmers, and in India no programmer would take up a teaching job. The difference in pay for an University teacher and a corporate programmer is too much. Even a programmer with a passion for teaching (like me) can't imagine switching to a teaching career. I first considered teaching pro bono at the local university, then I gave up. The C++ syllabus they had is cast in stone, new and delete is considered advance programing and templates are not even menttioned. Besides, if I ignore the lousy syllabus and teach those kids some real C++, they will flunk the exam since the programs will float way above the examiners understanding of C++. The only way to learn real programming is via books and Internet, that is if the person is interested enough to do it. But the onslaught of easy languages like C#/Java/VB don't make it easy.

                        E G R 3 Replies Last reply
                        0
                        • C Christian Graus

                          Someone the other day posted their VB assignment ( in university ). It was 'name your 10 favourite properties of VB.NET controls and why you like them. The OP was asking 'what's a property' and 'what's a control property'. I think CS is dead, I am considering changing careers.

                          Christian Graus Please read this if you don't understand the answer I've given you "also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )

                          T Offline
                          T Offline
                          T Mac Oz
                          wrote on last edited by
                          #19

                          Christian Graus wrote:

                          I think CS is dead

                          I think you've confirmed your own suspicions in the same message:

                          Christian Graus wrote:

                          VB assignment ( in university )

                          T-Mac-Oz

                          1 Reply Last reply
                          0
                          • R Ray Cassick

                            They all teach application development, but not programming. When I started out you could not get anywhere near a computer until you could count in binary, octal and hex and knew enough to run a small program on paper. Ah, where are those days again....


                            FFRF[^]


                            M Offline
                            M Offline
                            Member 96
                            wrote on last edited by
                            #20

                            There hasn't been anything fundamentally new in computing since 1973 all we've seen since then is ever more trivial refinement, what do you expect? This is the age of the "architect" not the "developer". I completely agree that anything called "computer science" should be reserved for nuts and bolts stuff and the 1 or 2 people per semester that are still interested in that can take it, the rest can be in "application development" etc. It's kinda like they don't teach carpenters how to make carpentry tools anymore and at some point in history some guys were sitting around with mugs of ale and deploring the loss of the good old days. :)


                            "The pursuit of excellence is less profitable than the pursuit of bigness, but it can be more satisfying." - David Ogilvy

                            U 1 Reply Last reply
                            0
                            • R Ray Cassick

                              They all teach application development, but not programming. When I started out you could not get anywhere near a computer until you could count in binary, octal and hex and knew enough to run a small program on paper. Ah, where are those days again....


                              FFRF[^]


                              G Offline
                              G Offline
                              Gennady Oster
                              wrote on last edited by
                              #21

                              I'm very optimistic - you never could TEACH programming, like you can never TEACH absolute pitch - only try to learn how to exploit it in the best manner. If it exists... Regards, Gennady

                              A 1 Reply Last reply
                              0
                              • C Christian Graus

                                Someone the other day posted their VB assignment ( in university ). It was 'name your 10 favourite properties of VB.NET controls and why you like them. The OP was asking 'what's a property' and 'what's a control property'. I think CS is dead, I am considering changing careers.

                                Christian Graus Please read this if you don't understand the answer I've given you "also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )

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

                                We've been employing nothing but grads for at least the last year. On the whole they are at or just below what I would consider average but there are some really top notch candidates coming out of our uni's at the moment if your willing to put the effort into finding them.

                                1 Reply Last reply
                                0
                                • C cpp samurai

                                  Hello Folks, I am from the outsourcing capital of the world. Alright, don't shoot, I am one of guys who can program. I am in product development, mostly telephony related. I wrote my first program in 'C' back in 1989, and switched to 8086 assembly for a year and finally into C++ in 1991, I am still with it. I first heard about STL from BS himself when he presented it in 1994 at C++ 11th birthday event at AT&T Holmdel (NJ). So I have been around. ;-) I guess you are all talking about situation in US, but India is in no better shape. Despite having so many programming vacancies, hardly anybody knows programming anymore. Therefore, blaming the situation on lack of jobs (out-sourcing) can't be right. IMHO, programming can be taught only by programmers, and in India no programmer would take up a teaching job. The difference in pay for an University teacher and a corporate programmer is too much. Even a programmer with a passion for teaching (like me) can't imagine switching to a teaching career. I first considered teaching pro bono at the local university, then I gave up. The C++ syllabus they had is cast in stone, new and delete is considered advance programing and templates are not even menttioned. Besides, if I ignore the lousy syllabus and teach those kids some real C++, they will flunk the exam since the programs will float way above the examiners understanding of C++. The only way to learn real programming is via books and Internet, that is if the person is interested enough to do it. But the onslaught of easy languages like C#/Java/VB don't make it easy.

                                  E Offline
                                  E Offline
                                  El Corazon
                                  wrote on last edited by
                                  #23

                                  cpp.samurai wrote:

                                  Therefore, blaming the situation on lack of jobs (out-sourcing) can't be right.

                                  Outsourcing is not a function of lack of jobs, but rather a function of wanting to pay less for a given job. The concept of paying less for the same thing is not a new one, what has changed in the recent decade is more or less a lack of oversight, or lack of checks and balances, or how ever you want to view it... the result is less quality for less money. It hurts the real programmers in India, and in the USA and everywhere. There are more than enough jobs, and more than enough people to fill them. A given IT job usually gets on the order of 100 to 300 applications. Even here with all our restrictions we get 100 applications for any one job. But those jobs are going elsewhere because no one wants to pay us the money, or even you the money, they want to pay someone less than either of us makes, and not bothering to find out if they can do the job before giving it to them. The result is encouraging failure, and living with 2nd rate products, and in many cases 3rd rate products or vaporware because no product is ever produced for the money.

                                  C W 2 Replies Last reply
                                  0
                                  • A Anton Afanasyev

                                    As funny as it sounds, it really is a sad state that CS is in right now. I, personally, blame outsourcing.

                                    "impossible" is just an opinion.

                                    Steve EcholsS Offline
                                    Steve EcholsS Offline
                                    Steve Echols
                                    wrote on last edited by
                                    #24

                                    I blame .net, intellisense and languages that make it easy for people to think they know what they're doing. I've seen a lot of drag n drop kiddies in the U.S. as well. :) But, yeah, outsourcing hasn't helped the situation out much.


                                    - S 50 cups of coffee and you know it's on!

                                    • S
                                      50 cups of coffee and you know it's on!
                                      Code, follow, or get out of the way.
                                    W J D A V 6 Replies Last reply
                                    0
                                    • T T Mac Oz

                                      Leslie Sanford wrote:

                                      B-trees[^] are rather non-trivial, aren't they?

                                      Depends on the requirements:

                                      Leslie Sanford wrote:

                                      a simple b-tree

                                      is little more than a linked list (though with two "next" - left & right - nodes instead of one). A self balancing b-tree (actually useful as more than just an academic exercise) does take a bit more work.

                                      T-Mac-Oz

                                      E Offline
                                      E Offline
                                      El Corazon
                                      wrote on last edited by
                                      #25

                                      T-Mac-Oz wrote:

                                      A self balancing b-tree (actually useful as more than just an academic exercise) does take a bit more work.

                                      I prefer optimal imbalanced trees myself (splay tree). :) I am the only person at my work who understands data structure storage, btrees, n-ary-trees, skip lists, splay-trees, meshes, etc. Oh sure, anyone on the team could use a hash-table, or an STL list/vector, etc. But no one could write their own. One of the team said he wrote a hash routine, I asked what his hash function was... he looked at me dumbfounded, then answered, well, its a hash table so it just has one. uh huh.... overlap-hit, distribution, turns out it was multiple and mod.... When you take data structures in my school, you learned to make your own data structures, today you learn to use existing data structures. eh? what learning is that? that is just training, just rote, no conceptual analysis, no thought, no design, no fitting of requirements to result.

                                      1 Reply Last reply
                                      0
                                      • R Ray Cassick

                                        They all teach application development, but not programming. When I started out you could not get anywhere near a computer until you could count in binary, octal and hex and knew enough to run a small program on paper. Ah, where are those days again....


                                        FFRF[^]


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

                                        Aye! And when I were a lad, we lived in shoebox in middle of t'road.

                                        .\\axxx

                                        J 1 Reply Last reply
                                        0
                                        • P Patrick Etc

                                          Ravi Bhavnani wrote:

                                          ROFL! That's why love MIT's brief but effective differentiator[^].

                                          Funny. For a second, I thought I was reading the synopsis of the CS department where I went to school - their approach was pretty much exactly the same. Little or no emphasis on languages; little or no emphasis on application development for its own sake. Lots of emphasis on algorithms and data structures; lots of emphasis on math. Incidentally, my degree was in Engineering, but there's alot of overlap and I took alot of CS classes.


                                          It has become appallingly obvious that our technology has exceeded our humanity. - Albert Einstein

                                          T Offline
                                          T Offline
                                          T Mac Oz
                                          wrote on last edited by
                                          #27

                                          Patrick S wrote:

                                          Little or no emphasis on languages; little or no emphasis on application development for its own sake. Lots of emphasis on algorithms and data structures; lots of emphasis on math.

                                          With the exception of the math, that's the way I gather most CS faculties were oriented through at least the 80's & early 90's (if not the whole 90's). Lots of stuff (who remembers the name of that notation/language used for proving the logic of an algorithm?) that most graduates will never even think of again unless they land in some highly specialised area like NASA, DOD or purely academic CS. Most CS graduates were useless for the first couple of years while they learned how to actually apply the useful stuff they were taught & forget the arcane. I do wonder if it's gone too far the other way now though, too much reliance on pre-existing frameworks is bound to stifle innovation in some areas but with the ever increasing complexity of computing environments it is a practical option. Personally I'd like to see more emphasis on problem-solving & design, which has historically been (in my experience, first as a student, later as an employer) a bit light-on in CS faculties. As an employer, I'd rather hire someone who can conceptualise a solution, then find the best tool(s) for the job as opposed to someone who can make a specific RAD environment do backflips but I think I might be in the minority on that one. Also schooled in Engineering (though combined with CS so I saw both sides :) ), I might be a bit biased :) .

                                          T-Mac-Oz

                                          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