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 51 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[^]


    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
                • 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[^]


                  U Offline
                  U Offline
                  User 4551756
                  wrote on last edited by
                  #28

                  The issue is that over the last 30 years, the world has transitioned into a business driven slop fest. Businesses feel that they can create a crappy product and fix it if it's successful. The only problem is that once it's successful, there isn't time to redevelop the product because there's functional improvements to be made. Through legal decisions, the business people that drive the corporations have set the tone for our work environments, which is largely based on the design McDonald's invented of creating systems to control people who act like hosts for the activities that make the few at the top all the money. Haven't we all bought into that we should make all the jobs replacable so that we can easily move around and others can blend in efficiently without having to be inventive? What's great is that they got us to build the system to make us obsolete or braindead, it was too complicated for them to figure out so they figured out how to sell us to do it. In any case, because the underlying quality of a product in undervalued vs the ability to create a shiny object to be consumed by the public or other unweary purchasers, IT departments are not properly supported by the company to create quality platforms unless the workers are willing to sacrifice the majority of their time to the project. And then, after all is said and done, there isn't equal compensation with the people who are driving the business side of things, so after time, the profession has suffered. The veterans that preach good practices of taking 2 days to write this correctly are overturned with 'take the 2 hour hack solution'. So why should anyone be expected learn to program beyond the extent that the corporations that run our society make it worth doing? -Foster "Welcome to McDonald's, can I take your order?" FosterAF@IntotheBlur.org

                  modified on Tuesday, May 13, 2008 8:05 AM

                  1 Reply Last reply
                  0
                  • G Gennady Oster

                    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 Offline
                    A Offline
                    aj esler
                    wrote on last edited by
                    #29

                    Speaking as someone doing a computer science degree, I would have to disagree. I am only a second year, but many of my papers are math papers, with not so much emphasis on writing programs using any particular language, more on algorithm construction, abstraction, good design practices, and now optimisation. I also do an architecture papers where we are currently learning assembler, using the 8051 processor. Next year I hope to get into the good stuff, like artifical intelligence, networking, etc. Hope I have convinced you not all is lost :-D PS: We did binary trees in first year, as well as having an assignment this year where we had to implement binary search trees with a few extras - there was a bit about balancing them in there too :)

                    G 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.

                      G Offline
                      G Offline
                      GDMFSOB
                      wrote on last edited by
                      #30

                      Well I cant call me self a real programmer, more of a script hijacker, but I have been writing full time in VB now for about 6 years, and the lack of courses in this country for real programming is shocking (South Africa), I have been hooked since I was sixteen and got my first IBM DX1 66Mhz Desktop with dos 6.2 on it, lol, those were the days, I cant count 3 programmers I have actually met in this country face to face and as for real programmers none, not even one... ever, everything I know I have had to beg borow or steal to get the information and tools I need, the joke is I still dont fully understand the way the compilers i use work or how to build a friken signed assembly, if someone was to start a school that only taught real programming and programming related things, like binary and why we need a math processor on a main bourd I would quit my job and go back to school for another 5 years. I have never been with out a job for longer then 4 weeks in this business and if the bloody schools caught on and actualy taught some real world uses I would know a lot more programmers and then maybe would be able to learn something from a super smart programmer out there. if any body, can help me with explaining how to build a signed assembly reply to this thread lol

                      P 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[^]


                        A Offline
                        A Offline
                        Avron Polakow
                        wrote on last edited by
                        #31

                        Luckily I began programming in assembly in the early 70's (Yeah, I might be the world's oldest web developer). In javascript I love using bit manipulation, interrupt routine simulation for event handling, index register simulations, moded addressing techniques, stacks, hexadecimal, binary reads, and whatnot (javascript and C# have it all) as well as oop, inheritance, direct database access from the client, and all the other lately fashionable paraphernalia.

                        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[^]


                          B Offline
                          B Offline
                          backSlashZero
                          wrote on last edited by
                          #32

                          Well they are still teaching, I did my graduation in Feb. 2007, from Virtual University of Pakistan, and I hadn’t seen even the GUI of Visual studio till my final project came up, we worked on C/C++ (all courses focused on Programming we were free to use any language), and a couple of courses on Java, then we explored the Visual Studio on our own, and it was like a breeze, Regards,

                          cout << "\0"; // its backSlashZero

                          1 Reply Last reply
                          0
                          • E El Corazon

                            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 Offline
                            C Offline
                            cpp samurai
                            wrote on last edited by
                            #33

                            El Corazon wrote:

                            Outsourcing is not a function of lack of jobs, but rather a function of wanting to pay less for a given job.... the result is less quality for less money. It hurts the real programmers in India, and in the USA and everywhere.

                            Again, in India that statement doesn't hold good. Here people are thoroughly overpaid for the work they do. Too much demand for programmers due to masive outsourcing has led to a situation where even a third rate programmer can get a highly paid job. Worse part is, they think they deserve it. One has to interview 100s of candidates to find a real programmer, they are an endangered species. We normally hire smart fresh graduates and teach them programming, there is no other choice. Pardon my rant, since I am part of senior management despite being a programmer, I see all these very closely during the recruitment process. Running a small product company in such an environment is no joke.

                            B 1 Reply Last reply
                            0
                            • L Lost User

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

                              .\\axxx

                              J Offline
                              J Offline
                              Johann Gerell
                              wrote on last edited by
                              #34

                              - Right. I had to get up in the morning at ten o'clock at night, half an hour before I went to bed, eat a lump of cold poison, work twenty-nine hours a day down mill, and pay mill owner for permission to come to work, and when we got home, our Dad would kill us, and dance about on our graves singing "Hallelujah." - But you try and tell the young people today that... and they won't believe ya'. :laugh:

                              -- Time you enjoy wasting is not wasted time - Bertrand Russel

                              O 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[^]


                                A Offline
                                A Offline
                                Anthony Mushrow
                                wrote on last edited by
                                #35

                                Ray Cassick wrote:

                                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.

                                I got taught that, as well as using boolean operators to control a little led display and make it count from 0-9. See the information is still being passed on in some places, all hope is not lost!

                                My current favourite word is: Bacon!

                                -SK Genius

                                Game Programming articles start -here[^]-

                                M 1 Reply Last reply
                                0
                                • A aj esler

                                  Speaking as someone doing a computer science degree, I would have to disagree. I am only a second year, but many of my papers are math papers, with not so much emphasis on writing programs using any particular language, more on algorithm construction, abstraction, good design practices, and now optimisation. I also do an architecture papers where we are currently learning assembler, using the 8051 processor. Next year I hope to get into the good stuff, like artifical intelligence, networking, etc. Hope I have convinced you not all is lost :-D PS: We did binary trees in first year, as well as having an assignment this year where we had to implement binary search trees with a few extras - there was a bit about balancing them in there too :)

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

                                  May be I failed to express myself because of poor English ? Sure nothing is lost because there was nothing. You couldn't teach programming in the past, you cannot do it nowadays too. All your activity you're talking about is not programming per se. If you have no the special kind of talant, that is not exactly related to the mathematical qualities - nothing will help you. In early 70th, when my computer carrier started, you coudn't get this profession in the university. Only self-instruction. And because of demand there were a lot of people coming to CS from very different, sometimes very exotic, areas. And meteorologists or librarians became sometimes the better programmers than mathematicians. That is what I ment. If you cannot debug your program - it is a weak consolation that it is excellently designed. Sure, it is only IMHO. Regards, Gennady

                                  1 Reply 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

                                    A Offline
                                    A Offline
                                    Autodev
                                    wrote on last edited by
                                    #37

                                    What is programming? Is it to deliver the customers requirements, on budget, on time? If this involves the use of 'Swahili' then I will use it. Methodology, Extreme Programming was throw out as an option after my early recruitment campaign, Paris Hilton did not reply( Nor that Monica woman)

                                    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
                                      Mustafa Ismail Mustafa
                                      wrote on last edited by
                                      #38

                                      That is a universal phenomena and is one of the reasons I'm working on getting my PhD is so I can come back and teach development to university students. I'm just appalled at their complete lack of knowledge on the subject and what is even more appalling is the attitudes some of them have. I'll never forget a fresh grad that wanted to work as a consultant and bill by the hour.

                                      "Every time Lotus Notes starts up, somewhere a puppy, a kitten, a lamb, and a baby seal are killed. Lotus Notes is a conspiracy by the forces of Satan to drive us over the brink into madness. The CRC-32 for each file in the installation includes the numbers 666." Gary Wheeler "You're an idiot." John Simmons, THE Outlaw programmer "I realised that all of my best anecdotes started with "So there we were, pissed". Pete O'Hanlon

                                      1 Reply Last reply
                                      0
                                      • J Johann Gerell

                                        - Right. I had to get up in the morning at ten o'clock at night, half an hour before I went to bed, eat a lump of cold poison, work twenty-nine hours a day down mill, and pay mill owner for permission to come to work, and when we got home, our Dad would kill us, and dance about on our graves singing "Hallelujah." - But you try and tell the young people today that... and they won't believe ya'. :laugh:

                                        -- Time you enjoy wasting is not wasted time - Bertrand Russel

                                        O Offline
                                        O Offline
                                        Oakman
                                        wrote on last edited by
                                        #39

                                        You forgot to mention that the trip to the mill was all uphill - both ways.

                                        Jon Smith & Wesson: The original point and click interface

                                        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[^]


                                          N Offline
                                          N Offline
                                          Nelviticus
                                          wrote on last edited by
                                          #40

                                          Well, no-one taught programming in the first place really. There are probably just as many programmers (and places that teach programming) as there were 'back in the day', but there are a lot more application developers. If someone can get a working ASP.Net web app out the door in two weeks, so what if they can't convert their own salary into hex without a scientific calculator?

                                          Regards Nelviticus

                                          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