Slashdot Mirror


Ask Slashdot: Do Kids Still Take Interest In Programming For Its Own Sake?

nirgle writes "I have been wondering lately if there are any kids interested in programming for its own sake anymore. When I was my nephew's age, computers were still fascinating: There wasn't a laptop on every table, facebook wasn't splattered on every screen, and you couldn't get any question answered in just a couple seconds with Google. When I was 10, I would have done anything for a close programming mentor instead of the 5-foot high stack of books that I had to read cover-to-cover on my own. So I was happy when my nephew started asking about learning to do what "Uncle Jay does." Does the responsibility now shift to us to kindle early fires in computer science, or is programming now just another profession for the educational system to manage?" Another reader pointed out a related post on the Invent with Python blog titled "Nobody wants to learn how to program."

10 of 276 comments (clear)

  1. Programming means understanding by Anonymous Coward · · Score: 4, Interesting

    Programming is a fundamental skill, almost like reading and writing. Children learn the shape of the characters in one year, but they keep learning how to read and write for many more years, because reading and writing aren't mechanical skills. Programming is a formalization of a solution, and this skill is fundamental. The most important aspect of programming is understanding the problem in detail, and that's something everybody could use. It's like writing up a complicated story without loose ends and contradictions: We're not all going to write books and screenplays, but almost everybody needs to express more complicated thoughts than "I want a cheeseburger".

  2. Re:Programming for programmings "own sake" by Hogmoru · · Score: 5, Interesting

    I disagree, so instead of modding down I'll reply :-)
    I guess there are several kinds of people, those like you (I think I get your point), and those like me : *I* was really fascinated about computers and programming *per se*.
    It was not about one or a few particular goals, it is about the idea of an infinity of things that became possible, and being able to bring new kinds of solutions to almost anybody on the planet. In this regard, somehow I'm joining your point, because of course there always are ultimate goals, but they were not my own : they were other people's goals that I thrived to reach using my craft : programming.

  3. Re:Programming for programmings "own sake" by eulernet · · Score: 4, Interesting

    Everyone does something for a reason. For me, programming was a way to create the games and sandboxes I dreamed of and enjoyed.

    In psychology, the motivation can be intrinsic or extrinsic:
    http://en.wikipedia.org/wiki/Motivation#Intrinsic_and_extrinsic_motivation

    Intrinsic means that you do the things for the pleasure of doing them. In your case, creating games for your enjoyment.

    Extrinsic means that you do the things to get a reward or avoid a punishment. In your case, it's about getting money.

    If the extrinsic motivation becomes bigger than the intrinsic motivation, you don't enjoy your work anymore, and you get bored.

    Education encourages extrinsic motivation, by grading people, which basically kills enjoyment in learning when grades become more important than learning.
    The more educated you are, and the more you are dependent on extrinsic motivation, which makes people search for fame or money.
    People with strong extrinsic motivation (and who have good grades at school) tend to fail in real life, because they search for the immediate rewards.

    To avoid being bored, the only way is to do things with intrinsic motivation, and that doesn't mean not getting paid !
    If you enjoy what you do, you'll be happier, and you can get paid for it, sometimes making a lot of money, but that's not the main goal.
    But this also requires to determine if you can accept to earn a little less money in exchange of being happier...

  4. Back in the 80s you could compete... by Chuffpole · · Score: 5, Interesting

    When I was an 80s teen with my ZX Spectrum, I could write games that weren't too far behind the earliest commercial games. (back then it was even a novelty to have control over what appeared on your old telly screen!)

    I wrote games that gave me as much fun as the coin-op machines back then, when things were primitive.

    Now though, how can any kid write a fluid 3D FPS shoot-up? I take my hat off to any who can! Where's the incentive? Where's the novelty?

    Little 2D games on the kids' Android phones, maybe. Perhaps.

  5. Re:Programming for programmings "own sake" by RadioElectric · · Score: 5, Interesting

    It is much more motivating to be learning to program with a particular project in mind. I'd argue it also teaches you to program better because you can't avoid the bits of the task that you find difficult or tedious. I'm a scientist but I spend a lot of my time programming experiments, models or analysis code.

    I teach a research methods module to undergraduate life sciences students. The vast majority of these people have never programmed and never expect to. This is a bit strange when so much of being a professional scientist in my field involves programming. Recently, we changed the research assignment they have to do so that it now involves some very basic programming. Mostly GUI stuff where they build a timeline and a "flow" out of blocks, but there are a few lines of code they need to write too.

    I was expecting there to be much wailing and gnashing of teeth about the content being too difficult, and a rebellion against being made to program. In reality, nobody complained and most of the students seemed to enjoy it. Some of them got very excited about writing a program that made a computer do what they wanted it to do. They also got quite competitive about writing their programs better than their colleagues (to the point of argument, but it was still encouraging to see). These people were not nerds, and talking to them I got the impression some thought computers were just "magic". One student didn't even understand that computer programmers existed who wrote software to make computers do things.

  6. Not for programming's sake by HornyBastard · · Score: 4, Interesting

    I started programming when I was about 10 years old for one very simple reason. I enjoy making things.
    I recently built my own house for that same reason. I also made most of the furniture in it as well.
    If, at the end of the day, I can say "I made that", then I am happy.

    --
    Death has been proven to be 99% fatal in lab rats.
  7. Re:Programming for programmings "own sake" by Nursie · · Score: 4, Interesting

    For me I delighted in making the machine do something, and then when I learned that programming was a thing, yes, I programmed and learned about programming for it's own sake.

    I was also fascinated by algebra as a child. Guess I'm just weird.

    I agree though - don't try to teach kids what it means to be turing complete, or how to normalise data tables, not at first. Show them something with simple cause and effect, see if you can keep their interest.

  8. Shortest possible way to produce something by Kjella · · Score: 4, Interesting

    Well, when I started on my Commodore 64 you started at the command prompt read to write code, so yeah I'd say it takes at least a little more prodding than before to get into programming. Also you started with just two lines:

    10 PRINT "HELLO WORLD"
    20 GOTO 10

    Okay, so it doesn't produce a very impressive result but as "bang for the buck" it's pretty good. If the reaction is "All that to produce so little?!" you've lost. Hell, you might have lost anyway if they point you to a $100 million AAA game and say that is cool, I want to make something like that. But since you can't ask for time to be turned back to simple sprite based graphics you can't change that, but at least not start them off down the long road.

    Personally today I think I'd actually start them off with a game toolkit where you can script events, like Neverwinter Nights or something like that. First of all because it's a game and looks good and produces something cool, second of all because you can start with a level that already exists. Have them modify it and they'll start thinking about objects, attributes, state, conditions, boolean logic (assuming you want to start them down the OOP path) without banging their head on the really hard issues. Plus you get to make your own adventure, which is creative and fun while learning.

    --
    Live today, because you never know what tomorrow brings
  9. What about carpentry? by maple_shaft · · Score: 4, Interesting

    This entire submission misunderstands the real draw of programming. The desire to learn programming is out of an intrinsic desire in some people to create or build artifacts from resources we have obtained. Some of us are builder/creator archetypes and we are drawn to the process of creation.

    If the argument held up, then the quality of carpentry would have degraded considerably with the advent of power tools. Nobody needs to hand-spin a spade to drill a large hole anymore, and while I am handy with a chisel, I can still do things faster and with better quality by using a router for certain situations. The power-tools have allowed us to put arguably better quality wood products in a MUCH faster timeframe, and all with the same sense of satisfaction that you get from a beautiful new table, cabinet or chair.

    I do think however that in todays age it is a lot harder to stay focused amidst constant distractions, and it is a lot easier to find information than ever before, making us all slightly lazy from time to time. We are more prone to get frustrated and do something else, so the extreme convenience doesn't come without its faults for sure.

  10. Re:People who are naturally interested in programm by Stormthirst · · Score: 5, Interesting

    It's funny you should mention boredom and building blocks.

    When I was a kid, LEGO was all the rage in the UK (and probably many other places too). They were just simple building blocks. They had all the simplicity of wooden blocks, but the advantage that if a clutzy kid like me jogged the surface they were on they didn't all fall down. As they go more complex, they started including manuals to show you how to build different things with the pieces they'd included. (Mechano did the same thing)

    Then I noticed a shift in philosophy and the manual had fewer and fewer designs - until they only had one design in the manual. This may have changed since, but I'd be surprised. Since my son was born, I've noticed how toys these days seem to be single serving. They only have one prescribed function. I'm sure that's not how it used to be when I was 5! I've also noticed how my soon to be 1 year old son is more interested in the boxes toys come in, than the toys themselves.

    I still remember my Mum coming back from a night class where someone had demonstrated how to program the BBC Acorn Electron in BASIC (at the time a new machine - there I go showing my age!) to work out the average of two numbers, and she complained that it took longer to program the computer than to do the maths on a piece of paper. She clearly didn't understand the power this machine *could* have. My Dad on the other hand did. Not for working out the averages of numbers, but to do other things.

    My question for the audience is this; Are kids these days bored because they only have single use toys? The toys they have only do one thing. This leads back to the original article, because when I learnt to program (on that Acorn Electron no less), I learnt because I was fascinated by how I could get the computer to do stuff, other then the prescribed functions that came with the machine.