Search Unity

What's a good age to start programming?

Discussion in 'General Discussion' started by jaybdemented, Jul 26, 2017.

  1. jaybdemented

    jaybdemented

    Joined:
    Sep 2, 2013
    Posts:
    112
    I was just wondering what's a good age to start leaning. My son turns 8 on Friday and has shown some interest in it when he sees me on the computer. He's smart and wants to grow up to be a engineer in the navy but till then I thought he could have fun with this. When is a good age and a place to start?
     
    Last edited: Jul 26, 2017
  2. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    3,144
  3. Kiwasi

    Kiwasi

    Joined:
    Dec 5, 2013
    Posts:
    16,860
    If he's interested, start him now. My kids have played around with googles hour of code stuff, and they are younger.

    Don't try and force kids to do any particular field of study, except for the fundamentals of reading, writing and arithmetic. But at the same time, let them experiment with whatever catches their interest.
     
  4. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,493
    I know some people start doing rudiment at 4, but it seems 6 is where they are able to pick up most basic concept. SO now is great, I think you can even find youtube video of kids doing advance things on youtube.



    at 1:00
     
    Ryiah likes this.
  5. ShilohGames

    ShilohGames

    Joined:
    Mar 24, 2014
    Posts:
    3,021
    The earlier the better. Start right away. Coding is an extremely important life skill.
     
  6. neginfinity

    neginfinity

    Joined:
    Jan 27, 2013
    Posts:
    13,566
    10 to 13 years old is good. While earlier is better, A 6 y/o kid would lack some of the mental constructs necessary for higher tier stuff. Still, starting VERY early will a chance of them becoming crazy good at something.
     
    neoshaman, Ryiah and Kiwasi like this.
  7. Kiwasi

    Kiwasi

    Joined:
    Dec 5, 2013
    Posts:
    16,860
    This is one that I think is up for debate. Understanding how computers work in general is important. Pretty much every professional uses computers for everything every day. That's only going to get more prevalent in the immediate future.

    On the other hand we are starting to see the trend to needing less coding in general. Tools like Unity reduce the need to program to make a game. Excel and the like have reduced the need to be able to code to handle large amounts of data. There are website generation tools that now mean you don't need to code to write up your own website. And so on.

    Coding will still be a valuable specialist skill for a long time. But I struggle to see it as an important life skill.
     
  8. Peter77

    Peter77

    QA Jesus

    Joined:
    Jun 12, 2013
    Posts:
    6,609
    Some people say the "true value of coding" is the ability to take large and complex problems and break them up into small pieces. Take things that are vague, difficult to wrap your mind around and putting them into a concrete sequential steps.

    These kind of abilities might help in other areas than writing program code as well.
     
  9. Kiwasi

    Kiwasi

    Joined:
    Dec 5, 2013
    Posts:
    16,860
    But I call this engineering. My wife calls it graphics design.

    I agree that breaking down problems is a skill. But its in no way exclusive to coding. Its been taught and used in most disciplines for centuries.

    Reading is an extremely important life skill. Writing, arithmetic, word processing and finding information on the internet are all extremely important life skills. I just don't buy that writing code belongs in the same category.
     
    JohnnyA and frosted like this.
  10. cyberpunk

    cyberpunk

    Joined:
    Mar 20, 2013
    Posts:
    226
    Probably any time is fine, I messed around with a Commodore 64 as a kid. Only thing, Unity probably isn't the best choice for this. Check out some of the simpler visual coding apps made for kids like Scratch.
     
  11. FMark92

    FMark92

    Joined:
    May 18, 2017
    Posts:
    1,243
    I started at 14.
    Somehow I managed to squeze it between random farmwork.
     
  12. jaybdemented

    jaybdemented

    Joined:
    Sep 2, 2013
    Posts:
    112
    That was me as well, but only really did print and goto mostly.

    Thanks all for your help. I think let him try the roll a ball tutorial and see how that goes. If it works out then great. If not I'll try game maker or that scratch thing.
     
  13. steego

    steego

    Joined:
    Jul 15, 2010
    Posts:
    969
    The earlier the better, the language areas of the brain are more flexible in young kids, and what they are learning is after all a programming language.

    Unity might be a little too complex though, and I'd say stick to 2D at first. My recommendation would be anything where you can write python.

    I myself started with basic on the C64 at 7, AMOS basic on the Amiga around 10 and assembler programming on the Amiga around 12, but didn't really get a grasp of 3D graphics before around 14. I think this is a reasonable overview of the complexity you could expect an average child to manage, as I'm pretty average myself.
     
  14. FMark92

    FMark92

    Joined:
    May 18, 2017
    Posts:
    1,243
    Ease them in wih flowchart stuff like Raptor, (better stuff exists now, probably, but that's where I started)
    Slowly push them to python. (I actually had Java at this point but w/e)
    And them they should be ready to slowly walk the plank of c-likes.
    If you want to focus on programming alone, Untiy comes much later.
     
  15. manutoo

    manutoo

    Joined:
    Jul 13, 2010
    Posts:
    523
    I'm not sure what everybody in this thread is calling "programming", but for the real stuff, everything I did before 17 was nearly useless : I started at 10 with Basic (mostly copying programs from books :) ), then Logo at school at 12 (visual geometry programming), then Basic doing my own little programs at 14, then actually moved to C and started real coding stuff at 17, and it took me a bit more than 1 year to be up to speed with the demoscene coding and 2 years and half to release my 1st successful game... (and this was before Internet, I had to create my own drawing software as I couldn't find the specs of the image formats :p)

    Now, I live from my coding skills as an Indie Dev (amongst the other needed skills an Indie Dev must have).

    But yup, like @Kiwasi said, there's not much harm to let them explore stuff that catches their interest, as long as they don't start coding all night long... ;)

    However, I think they have other more important & more useful things to do while they are still children...

    Or in other words : coding is easy, you don't need to start at 5 to be great at 25. Running, playing inside & outside, making friends are good goals when you're a child. And you'll have all your life afterward to be a Nerd... :p

    And if you want intellectual training & stimulation, then Chess, Go, strategy games, Maths & Physics will be a better formation at what is required to be a good coder afterwards.

    My 2cts... :)
     
    Last edited: Jul 26, 2017
  16. elbows

    elbows

    Joined:
    Nov 28, 2009
    Posts:
    2,502
    Reflecting on my own childhood, I was ready to start playing with some programming concepts at 7 years of age, but in reality it didnt work out like that (had no computer till a few years after that age) and so I started later, and only very sporadically (more reading than actually doing) until I was into my mid teens.
     
  17. Kiwasi

    Kiwasi

    Joined:
    Dec 5, 2013
    Posts:
    16,860
    For the record playing outside and being a Nerd are not mutually exclusive. #badfantasy. :p
     
  18. wccrawford

    wccrawford

    Joined:
    Sep 30, 2011
    Posts:
    2,039
    I was about 10 when I started learning. I think I could have handled it before that. You definitely need to be able to read well, and do some basic logic. But there's no reason that it can't help them learn those things, too.
     
  19. ShilohGames

    ShilohGames

    Joined:
    Mar 24, 2014
    Posts:
    3,021
    Tools have made it easy to do certain things without coding skills, but future projects will build on top of those things using coding skills. With tools like Unity, there is less need for game engine coding, yet there is still a lot of need for coding every other aspect of a game. Programmers are no less busy today thanks to Unity. If anything, programmers have just as much work to do, but they get to do things that create a more amazing experience for users instead of just the tedious game engine constructions tasks.

    And outside of game development, there are still lots of uses for coding. Regardless of what career path a child chooses, coding skills can give that child an advantage in that career. Tools like Excel do make some tasks easier. However, being able to parse data using coding skills gives a person an advantage over somebody who can only sort that data using Excel.
     
  20. RichardKain

    RichardKain

    Joined:
    Oct 1, 2012
    Posts:
    1,261
    If they can read and write, they can code. If they are expressing an interest in it, all the better. It's fine to ease them into it slowly, you don't want to overwhelm them. But the earlier you can get involved in this stuff, the easier it will be for your brain to absorb it. And in our modern tech-centric world, having a stronger understanding of such concepts is a huge advantage.

    It takes a long time to master these skills. Time and practice at a young age is great. I don't think you should pressure them. But I do think you should be open and encouraging, and help them with any problems or questions they bring to you. It's a fantastic learning opportunity.
     
  21. neginfinity

    neginfinity

    Joined:
    Jan 27, 2013
    Posts:
    13,566
    That's ability to learn and it pops up in many industries and professions.

    I don't think that ability to program is important, and I'm not sure if it is even a good career path. As a hobby, however, sure.
     
    Kiwasi and EternalAmbiguity like this.
  22. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    3,144
    Not a good career path by what metric? Computer engineers and scientists make not-insignificant cash these days, and it's a relatively stable field.
     
  23. neginfinity

    neginfinity

    Joined:
    Jan 27, 2013
    Posts:
    13,566
    By 30 you're supposed to switch away to management or burnout. Also, turnover of technology is horrifying, meaning 75..95% of what you know is very likely to be completely irrelevant 5 years later. I witnessed it several times, and this S*** is getting really tiresome, because in the end you turn into some sort of human-powered manual parser.

    With all that in mind, I would not recommend programming path as a career to anyone, and I especially wouldn't recommend trying to get into gamedev by studying programming.

    A better idea would be to find an industry where people can stay till they're 50 or older. Programming/tech is highly ageist.
     
    Ryiah and manutoo like this.
  24. RichardKain

    RichardKain

    Joined:
    Oct 1, 2012
    Posts:
    1,261
    This is entirely dependent on when you were raised/trained. Older programmers tend to be a bit more inflexible, as they were trained in an industry where change was far less frequent, and they could usually do just fine with whatever they learned in college. Younger programmers tend to be a lot more realistic about the current state of the industry, and are much more likely to be open to learning new technology on-the-job.

    My personal career started off in graphic design, of all places, and has constantly drifted in a more technical direction. Now I code data-driven web applications daily, and make a far better and more stable living. I have also basically been a constant student of information technology, picking up several scripting and coding languages. And I learn new tricks and techniques all the time. Going into a tech field with this sort of mindset is highly valuable, as you are considerably less likely to burn-out long term.

    Encouraging this kind of self-teaching and constant learning at a young age is also extremely valuable.
     
  25. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    3,144
    Fair point about management. By turnover do you mean firing (or simply quitting), or do you mean moving between companies? If you mean the latter I know what you mean. I know someone who was just part of a mass move (basically turned into poaching) from Northrop to Ball for a significant income bump, because the former wasn't just treading water with the 2% inflation raise (actually less than inflation). But from what little I've heard, that's basically part of the game now, moving between companies for raises.

    Edit: nvm, you're not talking about the career at all, but about technology itself. I haven't spoken to him too much about that part, so I don't know too much about it.
     
  26. neginfinity

    neginfinity

    Joined:
    Jan 27, 2013
    Posts:
    13,566
    I mean technologies you're supposed to work with die every five years or so.
    Technologies. Languages, APIs, libraries. For example, I have an absolutely useless experience of working with asm-based shaders, absolutely useless knowledge about making certain effects on ancient hardware (like glass vertex shader on RivaTNT 2 PRO), and equally useless experience of working with WinAPI directly, not to mention nonsense like working in 13h mode in MS-DOS or accessing VESA banks and soundblaster directly. All of this took time, and all of this by now is a useless garbage.

    The primary language I specialized in, around 2010 decided to transform into something completely different, meaning techniques I knew go to the trash can. Some tech dies completely. For example, Flash is dead, Perl is dead too. Some tools are in the process of being phased out..... basically, the volume of information is absolutely insane. It is like standing in the middle of the river and trying to drink it up so not a single drop of water moves past you.

    Another problem is that programming can be absolutely unfun. When someone might be starting out they could have ideas along the lines of that they'll be working with cool things, make cool software and amazing project. Basically "It's alive!" kind of thing, only in computer programming:


    The reality is in most of the cases you end up as a software plumber or software sewage worker. Rather than dealing with beautiful code and amazing complex problems, you're doing minor cosmetic work in a small corner of an ugly deformed mostrously huge building that was left to you by your predecessors.... and it is built out of poop, hastily painted over to make it look decent from a distance, and was sprinkled with perfume so the stink is tolearable for people beyond 5 mile radius. So, you look up at that 196 floor stinky abomination that somehow doesn't fall apart when somebody sneezes nearby, and realize that there's not a single way to realistically turn it into something actually good.

    Those kind of experiences are highly demoralizing, and coupled with burnout/ageism and other nonsense make me think that software is not really a good to recommend especially if you love programming. If you start your own software shop, it might work okay, but aside from that, I think quite a lot of people would be happier to keep it as a hobby.

    At least that's the way I see it.
     
  27. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    3,144
    Probably depends on what you do. The guy I know is pretty low-level so while he works on different projects, the fundamentals probably don't change that much.
     
  28. neginfinity

    neginfinity

    Joined:
    Jan 27, 2013
    Posts:
    13,566
    Erm, not really. I mean if somebody is lucky enough to fit into a niche like COBOL programming, that's good for them.

    But IMO, aside from that you'll be dealing with "software plumbing" either way - either on big monstrocities (if an organization has their own huge project they spent 10 years development), or on small mini-monstrocities (one time odd things made by other programmers).
     
  29. Kiwasi

    Kiwasi

    Joined:
    Dec 5, 2013
    Posts:
    16,860
    In fairness this is not just a programming issue. It's entirely common in chemical engineering to be working on top of fifty years of bad decisions from predecessors. And sometimes you lie awake at night wondering why the whole thing hasn't exploded yet.

    The tech problem is opposite to coding. I've found myself learning obsolete clockwork devices from the fifties, simply because management is too shortsighted to see the value of upgrading. So not only do I have to acquire useless knowledge, I have to acquire useless knowledge that predates the Internet.

    Not complaining (much). For the most part engineering isn't a bad career. Just pointing out that it might not be all roses in any other career a kid picks.
     
    neoshaman likes this.
  30. EternalAmbiguity

    EternalAmbiguity

    Joined:
    Dec 27, 2014
    Posts:
    3,144
    Fair enough.
     
  31. Deleted User

    Deleted User

    Guest

    seeing kids like this makes me really hate myself, lol
    ... although.. i was reading really well at 4yrs old and started dabbling in code at like 12?

    coding was like IMPOSSIBLE to get into back then though (i think?) ... never heard about it, and there was like not the kind of tutorials and free learning and everything there is nowadays...

    .. heck, i wanted to take a C++ class my High School offered (grad 2006), but they had a prerequisite of like the highest level math in the whole High School.. WTF!!!??? ... really sucked...
    i had the dumbest math too.... i just REALLY hated homework...
    like in Chemistry class i Aced my tests (brought the adjustment curve up too!), but i did 0 homework, i felt i didnt need it, its just a tool to remember stuff, but i remember it all so i didnt have to do homework, waste of time LOL


    .... anyway... I wish the opportunity to learn code like nowadays existed when i was a kid!!

    start that kid on it NAAOOWW RIGHT MEEOOOWW!!! .. if the kid is legit interested!
     
    Last edited by a moderator: Jul 26, 2017
  32. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,147
    Yes and no. If you were on early PCs you automatically had at least one programming language. Either GW-BASIC (or an equivalent variant like IBM BASIC) or QuickBASIC (sans the compiler and debugger). By far the latter was more valuable for someone just starting because it had a fantastic help system.
     
    Kiwasi likes this.
  33. Deleted User

    Deleted User

    Guest

    i always thought like 6+ years of college was REQUIRED .... ... i woulda never known otherwise... computers were hardly even a thing anyone even really mentioned...

    i modded games and worked on RPGMaker and stuff, but i felt like an ultra social-outcast geek that should hide from people .. lol

    like, someone asks "what are you up to today" .. and iam like "playing on the computer.... eeekk!!!! IAM A LOOOSER!!!"
    ...thats how it felt like back then...
     
  34. FrankenCreations

    FrankenCreations

    Joined:
    Jun 14, 2017
    Posts:
    326
    Agree with ryiah. My first code was written in applesoft basic on an apple IIe. The prerequisites for my high school class a few years later for pascal consisted of a typing class and meeting the instructor for an interview to request his class.
     
  35. Deleted User

    Deleted User

    Guest

    yeah... grew up in a little farming town, little farming town HighSchool too..
    ...Iam surprised iam not a farmer, butcher, or car mechanic...
    ... well technically, iam nothing ...

    I thought it was a "wussy" kinda career path too though... like my dad was a construction worker, (laborer & machine operator) .. i thought office type jobs were for women.. lol...
    .. wasnt until I got REALLY REALLY mad at how people suffer in the world that I like came to believe "god wants me to make video game artwork that teaches morals to kids" ..... heck, yeah i had to come up with some kinda "iam a soldier of god" nonsense to even believe it was sorta manly to do...


    anyyway...

    theres SOO MUCH FREE education on the internet today!!
    get your kids interested in that stuff!!!
     
    Last edited by a moderator: Jul 27, 2017
  36. FrankenCreations

    FrankenCreations

    Joined:
    Jun 14, 2017
    Posts:
    326
    Haaaa. I grew up in and around a city with over 3 million people, Houston TX. Now I live in the middle of nowhere not even in city limits so no actual town population, nearest town has population of 150. Yes one hundred fifty and thats it, didn't forget a 0. I work on a farm and have for nearly a decade now.
     
  37. Kiwasi

    Kiwasi

    Joined:
    Dec 5, 2013
    Posts:
    16,860
    I'm surprised. I'm only a couple years older, but coding wasn't hard to get into as a kid. The main difference was it wasn't as popular as it is today.

    I started with some dos based QBasic system. Got a book from the library and went through a bunch of tutorials.

    I also did stuff with Lotus 1-2-3 macros, then Excel macros and eventually VBA. Switching as each technology got replaced. Again before the Internet was widely accessible, using books and help files instead of Google.
     
  38. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,620
    You might not use the specific languages you learned pre-17 now, but if you picked up C and were making demoscene stuff in a bit over a year and then a successful game two years later then I highly doubt that the early learning was "useless". I expect you'd have been picking up fundamental skills that would have transferred to C when you moved to that and sped the whole thing along.
     
    mysticfall likes this.
  39. neoshaman

    neoshaman

    Joined:
    Feb 11, 2011
    Posts:
    6,493
    I'm S*** at programming that require more thing cooperating together for some reason. I learn programming on casio with the manual, and no knowledge about teh culture or anything beyond that manual, I was surrounded with people who coded fast and like obfuscated their code, they coded electronic circuit simulation where you visually place elements, I didn't understand anything of what they were doing, and they had fancy hp48 and Ti99, stuff that does mini gameboy like game.

    SO I coded my own way, Casio was limited in memory, so I broke program in sub program to call, pass data to a certain set of reserved variable (limited to alphabet letters only, so E and F) and use matrices to control the flow of the program. Basically, you have a "header" that was used to initialize the code, setting up matrices and loading data within it, then I called a core, that was basically a pile of IF that took the data in the matrices and call subroutines, modify the cursor position in the matrices or jump somewhere else in the loop, data in the matrices could be changed by code too, so I could overwrite the flow of the program, but not all data in the matrices where code flow, some place where reserved as data, but most of the time they double as both, super useful for game, I mean a game is basically a 2d matrices and "objects" (aka number in the matrices) create events and mutate. I start doing stuff nobody could do on casio, and nobody understood the code ... I was just trying to create a more visual way to code (the data in the matrices was visualized on screen with alphanumeric symbol representing "objects" they represented. It was surely more efficient and compact that line by line stuff.

    That's the only time I did something worthwhile in code.
     
  40. mysticfall

    mysticfall

    Joined:
    Aug 9, 2016
    Posts:
    649
    I also started pretty early when I learned how to write some BASIC code for MSX machines. Of course, I don't even remember any of the details about the language now, but I feel that the experience has helped me quite a lot in my career as a software developer.

    In learning how to program, the important part is not about syntax but an approach - the way in which we generalize or abstract a problem and solve it in a systematic way. I guess having an opportunity to practice such skills in early age can help significantly, if one were to choose programming as a career path, later.
     
  41. BIGTIMEMASTER

    BIGTIMEMASTER

    Joined:
    Jun 1, 2017
    Posts:
    5,181
    Regardless what path they end up on, multilingualism is beneficial across the board.
     
  42. AndersMalmgren

    AndersMalmgren

    Joined:
    Aug 31, 2014
    Posts:
    5,358
    My dad and I wrote a game when I was 6 in HP Basic (Because thats what he mainly used at work at the time, 1986). Dad did 100% of the coding, but well, the rest is history