http://qs321.pair.com?node_id=48641


in reply to Re: Re: Re (tilly) 2: Are debuggers good?
in thread How to debug unknown dynamic code?

Had to throw my .02 out when I read:
perhaps "programming" isn't something that can be taught.

IMHO its the term programming that keeps people from learning it.

Programming is merely a stereotyped word that detracts the average person from more actively interfacing with thier computer; Therefore, programming is not a skill to be learned, but rather must be a personal goal to be attained.

coreolyn

  • Comment on Re: (davorg): Re (tilly) 2: Are debuggers good?

Replies are listed 'Best First'.
On being a programmer
by merlyn (Sage) on Dec 28, 2000 at 22:12 UTC
    Nope. I don't want someone writing a Perl module who is merely experienced at "more actively interfacing" with their computer, which to me just sounds like a "power user".

    I want a "programmer". Someone who can imagine what all the variables are doing simultaneously, and can think logical steps, and play out "what ifs". And can write robustly, knowing that people will misinterpret the interface specs. And can write good unit tests, and understand version creep and flag days and why those are bad. And why "objects" is not the cure all.

    That's a programmer, and I'm happy that the word scares off some people. Because it should. I don't want someone to "step up" from writing an Excel macro to writing control software for the plane I'm riding in. It's not a simple step. It's not even on the same scale.

    Feel free to "more actively interface" with the computer in the privacy of your own cube, but don't make me ever have to run your code or maintain it. Because, by goodness, I'd probably rather throw it away.

    Good programming is an art. Parts of it, you can get from learning. Parts of it come from experience. But parts of it seem to be just being wired the right way. And yes, most of the population is not wired the right way. I truly see that over and over again.

    -- Randal L. Schwartz, Perl hacker

      Well were definately into a matter of perspectives here. I can easily see how you can say,

      And yes, most of the population is not wired the right way

      However, from my humble point of view it seems to me that if indeed they aren't wired the right way there's a problem with the interface not the people.

      To think otherwise simply builds cathedral's. Then again Maybe I spend too much time looking down the road rather than dealing with the present.

      coreolyn

        Then again Maybe I spend too much time looking down the road rather than dealing with the present

        I would say the proper design so that a debugger is not needed is a long term view. I've had to use debuggers on other's peoples code because I had to get something out quick. I then turn around and recommend rewrites in most cases. Of course the long term view of getting it right the first time saves the most time over a long enough period. The first to market push that drives many companies screws this up.

        However, from my humble point of view it seems to me that if indeed they aren't wired the right way there's a problem with the interface not the people.
        Nope. Some people just don't get abstraction or clear sequential logic, or many of the other things necessary to write maintainable, practical code.

        Ever ask someone for directions to a place you're unfamiliar with, and end up totally lost? Probably because that person couldn't give clear directions, ever. Some people just can't do that.

        And some people just can't program. It's not the interface. It's the person.

        There's no moral statement here. It's just an attribute. I can't draw a picture worth beans. Am I less smart because of that? No. I just stick to programming, and hire the people who can draw and can't program. {grin}

        -- Randal L. Schwartz, Perl hacker