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 102 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.
  • O Oakman

    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 Offline
    R Offline
    Ray Cassick
    wrote on last edited by
    #124

    In the snow with no shoes :)


    FFRF[^]


    O R 2 Replies Last reply
    0
    • C ClockMeister

      Steve Echols wrote:

      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.

      Imagine the power of Intellisense and such tools to those of us who DO know what we are doing, eh? -CB ;)

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

      Yeah, we have some pretty sweet tools. I don't mind the intellisense when I'm exploring new classes or trying to use classes I don't use that often, but for the most part they get in my way, so I turn it off and use Ctrl+Space, Ctrl+Shift+Space. Is it me, or is C#'s intellisense way better than VBs? Just imagine how fast we could code if we had all the classes/functions/parameters memorized and didn't have to stop to read! ;)


      - 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.
      C 1 Reply Last reply
      0
      • Steve EcholsS Steve Echols

        Yeah, we have some pretty sweet tools. I don't mind the intellisense when I'm exploring new classes or trying to use classes I don't use that often, but for the most part they get in my way, so I turn it off and use Ctrl+Space, Ctrl+Shift+Space. Is it me, or is C#'s intellisense way better than VBs? Just imagine how fast we could code if we had all the classes/functions/parameters memorized and didn't have to stop to read! ;)


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

        C Offline
        C Offline
        ClockMeister
        wrote on last edited by
        #126

        Hey Steve,

        Steve Echols wrote:

        Yeah, we have some pretty sweet tools. I don't mind the intellisense when I'm exploring new classes or trying to use classes I don't use that often, but for the most part they get in my way, so I turn it off and use Ctrl+Space, Ctrl+Shift+Space. Is it me, or is C#'s intellisense way better than VBs?

        Hmm ... very interesting. I personally find VB's Intellisense better - it generally appears earlier. I also prefer the incremental compiler in VB - it really makes finding errors much quicker. In C# you generally have to compile everything before you find most of the errors. They're both fine - but I prefer VB.

        Steve Echols wrote:

        Just imagine how fast we could code if we had all the classes/functions/parameters memorized and didn't have to stop to read!

        Heh ... yeah, but OTOH, I'm to the point where I've done this for so long I'm glad I don't HAVE to memorize things any more. Just knowing where to look for 'em suits me fine! -CB ;)

        1 Reply Last reply
        0
        • J JasonCordes

          T-Mac-Oz wrote:

          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.

          I'm thinking an array for faster access time. And binary trees are actually quite trivial if you've actually built one before. An experience I highly recommend, by the way.

          A Offline
          A Offline
          azonenberg
          wrote on last edited by
          #127

          There's a difference between a b-tree and a binary tree. Look 'em up: B-tree (Not to be confused with Binary Tree)

          J 1 Reply Last reply
          0
          • A azonenberg

            There's a difference between a b-tree and a binary tree. Look 'em up: B-tree (Not to be confused with Binary Tree)

            J Offline
            J Offline
            JasonCordes
            wrote on last edited by
            #128

            azonenberg wrote:

            There's a difference between a b-tree and a binary tree. Look 'em up: B-tree (Not to be confused with Binary Tree)

            how odd, I have never heard of them before. It is kind of like a tree of priority queues, weird. Looks like I have a coding project for the weekend now :)

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

              A Offline
              A Offline
              azonenberg
              wrote on last edited by
              #129

              Well I guess I'm in the minority then. I'm 17 years old and will be entering a CS program at a major university this fall. I wrote my first C program in 1999 and was learning C++ before my tenth birthday. I've written a bytecode compiler and interpreter for an object-oriented language based on C++. I not only wrote a complete Windows GUI application (albeit a simple one) in x86 assembly, I actually enjoyed doing it. I've never had a formal course in operating systems, but that will be coming soon...

              R 1 Reply Last reply
              0
              • S stephen hazel

                i agree. i think it's because when WE cut our teeth on the stuff, computers were something you could understand more easily. back then it was assembler, turbo pascal and ms/dos. maybe c64 and basic. maybe Amiga and C. You could figure it all out yourself and the OS was not a huge monstrosity like windows or unix that we have now. Well, ok, the Amiga os was starting to get monstrous, but ms/dos? Easy. The languages were simpler, the OS was way simpler. What's simpler than load"*",8,1 ?? That was the whole c64 os right there :) Ok ok, well, screen memory for text, graphics mode for pixels, nice simple sound chip. Not too bad. I'd say, to teach programming now adayz, your best bet is with slackware linux and straight c. You don't program by plopping in a prebuilt class into a java dev environment. For cryin out loud, you should know SOME assembler coming out of college.

                A Offline
                A Offline
                azonenberg
                wrote on last edited by
                #130

                You should know assembler coming OUT of college? I'm 17 and will be a college freshman (CS major, obviously) this fall. I wrote the code snippet below off the top of my head, using no references but an ASCII table (to look up the value of '0'. It doesn't do anything complicated - just outputs the numbers 0 to 9 inclusive - but it proves my point.main: xor eax, eax ; initialize loop loop: mov ebx, eax ; convert to ascii for output add ebx, 30h push ebx ; print it call putc add esp, 4 ; unwind the stack inc eax ; bump loop counter cmp eax, 9 ; time to stop? jle loop ; no, keep going done: ret putc: ; implementation not shown - print character at top of stack to screen ; using __cdecl calling convention

                modified on Tuesday, May 13, 2008 7:28 PM

                S 1 Reply Last reply
                0
                • U UD

                  I have to agree. But, you have to consider this much: the software developer that KNOWS the underlying hardware (as well as the business stuff too) is going to be the one who comes out smelling like a rose. That is, if outsourcing doesnt choke us all first. While it may be true that they dont teach carpenters how to make tools anymore, those who know how the tools are made and the history of the tools themselves, are at an advantage... Some of the best carpenters were able to devise their own tools because they knew tool-making as well as carpentry.

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

                  I don't really agree. It would be comforting to think so being a person that learned from assembly on up, I could say "I am better" but in the trenches it's a minor advantage in rare cases at best. Hardware is dirt cheap, it's far cheaper to simply spec higher level hardware than to pay developers to spend a month optimizing something and the majority of software is written for a virtual machine these days anyway. Your tool analogy might be applicable to craftsmen that are hand making furniture, but a run of the mill carpenter not so much. Society has made it's choice: faster and cheaper. Few care about quality these days, just "is it good enough". That's one reason why I have my own company, I couldn't work in a cubicle all day on something I know is simply "good enough" day after day.


                  "The great pleasure in life is doing what people say you cannot do." - Walter Bagehot

                  1 Reply Last reply
                  0
                  • A azonenberg

                    You should know assembler coming OUT of college? I'm 17 and will be a college freshman (CS major, obviously) this fall. I wrote the code snippet below off the top of my head, using no references but an ASCII table (to look up the value of '0'. It doesn't do anything complicated - just outputs the numbers 0 to 9 inclusive - but it proves my point.main: xor eax, eax ; initialize loop loop: mov ebx, eax ; convert to ascii for output add ebx, 30h push ebx ; print it call putc add esp, 4 ; unwind the stack inc eax ; bump loop counter cmp eax, 9 ; time to stop? jle loop ; no, keep going done: ret putc: ; implementation not shown - print character at top of stack to screen ; using __cdecl calling convention

                    modified on Tuesday, May 13, 2008 7:28 PM

                    S Offline
                    S Offline
                    stephen hazel
                    wrote on last edited by
                    #132

                    azonenberg wrote:

                    You should know assembler coming OUT of college?

                    well, i think i said "at least know..." or something to that effect... Not sure why you're trying to prove to me you know asm... Looks kinda like an answer to a short quiz... Not code i'd likely have written. your labels are a little lamely named. your comments should say "printing out the string 0123456789 instead of "bump loop counter" and won't it print a character beyond 9 due to your cmp?

                    1 Reply Last reply
                    0
                    • W W Balboos GHB

                      El Corazon wrote:

                      There are more than enough jobs, and more than enough people to fill them.

                      Can you explain to me exactly what this means? Aren't these mutually exclusive states?

                      "The difference between genius and stupidity is that genius has its limits." - Albert Einstein
                      "How do you find out if you're unwanted if everyone you try to ask tells you to go away?" - Balboos HaGadol

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

                      Balboos wrote:

                      Aren't these mutually exclusive states?

                      Not really. If there is no intention of hiring someone local, then you simply leave the job open, turn away all 300+ applicants, and then outsource the job to India. Or you simply never offer the job locally, and determine behind the scenes that you need to hire n number of people from India, and then never check their qualifications. You get them cheap, so what does it really matter right?

                      ------------------ John Andrew Holmes "It is well to remember that the entire universe, with one trifling exception, is composed of others."

                      1 Reply Last reply
                      0
                      • R Ray Cassick

                        In the snow with no shoes :)


                        FFRF[^]


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

                        Ray Cassick wrote:

                        In the snow with no shoes

                        I didn't need shoes, I didn't have any feet!

                        Jon Smith & Wesson: The original point and click interface

                        1 Reply Last reply
                        0
                        • A azonenberg

                          Well I guess I'm in the minority then. I'm 17 years old and will be entering a CS program at a major university this fall. I wrote my first C program in 1999 and was learning C++ before my tenth birthday. I've written a bytecode compiler and interpreter for an object-oriented language based on C++. I not only wrote a complete Windows GUI application (albeit a simple one) in x86 assembly, I actually enjoyed doing it. I've never had a formal course in operating systems, but that will be coming soon...

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

                          Very cool! :cool: /ravi

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

                          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

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

                            Patrick S wrote:

                            my degree was in Engineering, but there's alot of overlap

                            For sure. At MIT, the EE and CS curricula blend into each other. /ravi

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

                            1 Reply Last reply
                            0
                            • R Ray Cassick

                              In the snow with no shoes :)


                              FFRF[^]


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

                              Walking backwards. :) /ravi

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

                              1 Reply Last reply
                              0
                              • R Rahul Ravindran

                                Being from India as well and undergoing my college course (1st year), I completely understand and agree with cpp.samurai. I think you are overestimating C++ in India. Forget "new" and "delete", my teacher barely understands what pointers are which naturally spills over to the students as well. In my opinion, I find programmers in US, UK, etc are vastly superior. Obviously, I am judging by the people *I* meet which happen to be teenagers. I just don't find that kind of spirit here. Out of the 60 students in my class for my course ("Computer Science and Engineering"), the rest 59 can barely do a "Hello World". The problem lies in the root. Ask anyone in my class, they chose Computer Science simply because thats where the demand is not because they actually like the subject. I doubt outsourcing has any effect on programming worldwide. Its more of customer support, etc thats being outsourced, monotonous work. I don't think you can apply the same sort of teaching pattern for other subjects to programming. Ironic actually, you spent more time writing code in your book than a computer. I do agree, a certain amount of theory is required for programming as well but the usual grinding and mugging up can never be applied to coding. Sadly, it happens. Most of the students in my class can write basic programs but when it comes to pointers and stuff, they actually byheart the code and the examinations don't ask any questions beyond your textbook. I just don't get it, how can anyone just memorize a program. "There is no teaching, only learning." Programming is the best example for the quote :)

                                G Offline
                                G Offline
                                gole1983
                                wrote on last edited by
                                #138

                                :) Could you tall me how to learning? I am a freshman about Programming

                                1 Reply Last reply
                                0
                                • C cpkilekofp

                                  UD wrote:

                                  25 years of development and, not only head-down/hands-on development, but business experience (across hospitality, accounting, financial, utilities, medical and machinery to name a few). I can read and understand a balance sheet and speak business as well as developer talk in one breath. I would consider myself a true hybrid. Yet, most dont care and the ones that do are waning quickly.

                                  If you're located in the Midatlantic States of the US, you need a few good recruiters to help (check out Indeed.com as well, it will explain itself nicely). Right now they're asking me to slash my rates or else they go to India, China, Vietnam even Lithuania!! And by slash rates I mean from $100/hr to less than $30, some even less than $20. After I take out healthcare, mortgage, car(gas), food and simple business expenses (software, internet, etc), there is nothing left from $25/hr. Nothing. Its crazy. Um, this was a subtle but important point of what I said: they want you IN HOUSE. $100/hour consulting work is dying rapidly as a result (one of the jobs I recently interviewed for was to sepcifically avoid retaining a consultant any longer than I needed to jumpstart my own project). They'll pay part or all of your benefits, but they want you as theirs, not shared, and right now salaries in this area are running $60-85k with benefits. This won't support your current lifestyle, I'm guessing, but it beats the heck out of $12000/year or "may I take your order, please?". However, you're not going to get rich doing it.

                                  P Offline
                                  P Offline
                                  Pierre Leclercq
                                  wrote on last edited by
                                  #139

                                  You sure are right. Some ways of doing the business are changing, but the need for talented software developers is not going away.

                                  1 Reply Last reply
                                  0
                                  • C ClockMeister

                                    Pete Appleton wrote:

                                    RTFM. That's how we learnt.

                                    I "learnt" before there was any manuals to read. ;) Back in the late 70's working for Quadram I had to write device-drivers for PC's running DOS 1.1 before there WERE any "how-to" books on the subject! You had to take the Microsoft (or IBM) documentation and provided source-code examples and learn the difference between the types of drivers and how to code them. Before that it was writing FORTRAN IV on a PDP-11 and CDC Cyber-74. RTFM? No M to RTF! mov ax, 4C00h int 21h -CB :)

                                    P Offline
                                    P Offline
                                    Pete Appleton
                                    wrote on last edited by
                                    #140

                                    The documentation you're talking about was the FM I was referring to ... previously came in the form of large, ring-bound dead trees much of which just said "This page left intentionally blank" but now comes in various electronic formats that decay faster. IE - the FM, not one of the zillion "If you can't be bothered to RTFM, this explains it" books there are now. Yup, I learnt back at that time, too! Part of my learning actually came from reverse engineering CP/M :-D .loop ld bc,0003h ld hl,[2600h] int 21h djnz .loop

                                    -- What's a signature?

                                    C 1 Reply Last reply
                                    0
                                    • U UD

                                      Why is that? Because some developer in India told ME to stop whining the other day. This is how he put it: "An average developer in India earns the equivalent of $1000 USD a month, gross pay. If you want to match or beat that then I would be willing to bet you'd get the contracts in America. Otherwise, you simply wont". So....... thats what we're being reduced to people. We're being reduced to $12,000 a year employees. People in WALMART make about that. Mc Donalds. Borders. And they dont have 1/10th of the pressure. So, yea, I too am looking for a new career. This one has been pulled from under my feet.

                                      P Offline
                                      P Offline
                                      Pierre Leclercq
                                      wrote on last edited by
                                      #141

                                      Well you should not. There are a lot of good positions for someone with CS skills. No matter what, there is a limit to what can be sent abroad, and the shortage of trained people in the us is and will remain acute. So I think your views are quite exagerated. Do a little research, and you'll find companies who need in-house people with decent skills.

                                      1 Reply Last reply
                                      0
                                      • N Name Deleted

                                        Bottom line, those of us who know not only how to code, but to write elegant code will always be in high demand. There are plenty of jobs in companies that use proper interviewing and weeding to find the diamonds in that mountain of sand that apply. I've never had a problem when I wanted to make a move.

                                        D Offline
                                        D Offline
                                        Darragh_H
                                        wrote on last edited by
                                        #142

                                        Interesting..... Reading this has made me realise how much Google has destroyed my ability to really write code that I understand (in the sense that I wrote it from scratch after researching a book). I started with USCD Pascal on an Apple ][e, then to VAXes in univ. and thens to PCs (C, and now degenerated to VB.NET...), so I've been doing it long enough to remember gopher.... It's been a long time since I looked at a book to figure out the way to code something as against Googling to see if somebody else has done it already. D. -------- The Good Old Days - Fast FTP to a site with a huge collection of GIFs.... hold on....

                                        1 Reply Last reply
                                        0
                                        • P Pete Appleton

                                          The documentation you're talking about was the FM I was referring to ... previously came in the form of large, ring-bound dead trees much of which just said "This page left intentionally blank" but now comes in various electronic formats that decay faster. IE - the FM, not one of the zillion "If you can't be bothered to RTFM, this explains it" books there are now. Yup, I learnt back at that time, too! Part of my learning actually came from reverse engineering CP/M :-D .loop ld bc,0003h ld hl,[2600h] int 21h djnz .loop

                                          -- What's a signature?

                                          C Offline
                                          C Offline
                                          ClockMeister
                                          wrote on last edited by
                                          #143

                                          Pete Appleton wrote:

                                          The documentation you're talking about was the FM I was referring to ... previously came in the form of large, ring-bound dead trees much of which just said "This page left intentionally blank" but now comes in various electronic formats that decay faster. IE - the FM, not one of the zillion "If you can't be bothered to RTFM, this explains it" books there are now. Yup, I learnt back at that time, too! Part of my learning actually came from reverse engineering CP/M

                                          Programming sure was fun back then, wasn't it? It's still OK - but back then it was more of an adventure. Later! -CB :)

                                          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