Should kids learn to code?
31–40 of 54 posts
Re: Should kids learn to code?
#32I learned many things from this exercise that could fill several blog posts or a book.
But no time for that, so some quick thoughts:
1. It was much (much) harder to teach coding than I expected, even in the case of the very brightest students.
2. There is a latent expectation of quite strong mathematics knowledge in all programming education. I discovered however that this knowledge is pretty much absent in students of that age. For example analytic geometry is not introduced until 8th grade (14 or so) so prior to that if you want to show programming with lines on a 2D plane with Cartesian coordinates, you will get some very blank looks from the class.
3. I had assumed that teachers would be able to pick up the ability to teach coding with my help (we're talking teachers who already handle science or computer applications subjects). This turned out to be an invalid assumption. So in order to succeed the class needed to be staffed by "programming educational paraprofessionals". Such people are by their nature very busy and as a result we were not able to run the class again this year.
Overall I'd say now that coding is somewhat like musical instrument playing or art -- something that is well worthwhile having in school, but not a subject that all students are going to take to. It requires a similar level of commitment and investment (consider for example that the school employs several full-time highly skilled musicians and requires around 8h/wk class+practice time for "band"). To provide comparable resources for a coding class would be extremely expensive.
Re: Should kids learn to code?
#33Earlier quoted context omitted.
These are more "Software Architecture" skills, than programming skills. Let's not teach kids higher-level organizational skills, but save those for later. For kids it is important that they can play, and fail often.
"can play and fail often" is the perfect description of software development
Just kidding, your absolutely right. I just think we need to find a good way to communicate this to kids in an understandable way.
Re: Should kids learn to code?
#34That's a great question. I also wonder if adults should learn to code, or my peers who would be young adults.
I'm 24. I started programming when I was 10 years old by reading a 'For Dummies' book teaching Basic. I hardly read the book because it came with a CD with the language and the language's help system had tutorials which I jumped into right away.
I spent the next four years developing video games in Basic. I learned C and continued to make games and also started working on other types of simulation. I've picked up web programming incidentally, taken courses in high school, worked as a programmer, researcher, and software engineer, majored in computer science in college, and have a steady job as a software engineer.
Earning my degree has been amazing for me because it's introduced me to highly technical aspects of the field that would otherwise be inaccessible to me or present large barriers to entry.
An interesting trend is for school systems to embrace computer programming / computer science as a skill and teach it as a class or to introduce it into the curriculum in general -
> Britain became the first ... to introduce compulsory computer science on
the school curriculum for all children aged five to 16.
Equally, though, this could be off-putting for many kids. Depending on how it is introduced, it might scare away those who would otherwise be interested in programming or less so another design field in computer science. Oddly enough: > “One 13-year-old told me she would rather be in garbage disposal than work
in technology,”
It's really surprising that this sentiment isn't more widely felt. Maybe it is the sort of tech-bubble, get-rich-quick, new technology enthusiasm and excitement that gets people to push through the initial, `this is boring, difficult, and unfulfilling' feeling that I would really anticipate from anyone making a cold dive into code.In fact, I've had the opportunity to mentor some kids around the ages of 10-12 and that's exactly the response I've seen to the programming or code side of development, where they will be increasingly excited to design applications in a much, much higher level way. But directing software design should really be considered a lower field than implementing it, in my very humble opinion.
And this point, about some being disaffected by being compelled to learn something, underscores another unfortunate fact - and that is no matter how someone is introduced to computer science or computer programming - something will be outside of their control.
Some start by programming in Python or JavaScript, some start with C (many engineers) or Java, others have began with Fortran or Basic or Visual Basic, and others begin to learn computer science with Scheme. There are so many vastly different programming languages and platforms that exist, and even different programming paradigms, and each is easier to use or understand to different minds.
But it would take an expert oracle to know what the best introduction is for every individual to give them the best chance of success in computer science. Some scientists can't even agree on what text editor to use.
> Puzzlingly, though, IT had the highest unemployment rate of any subject
analysed by the Higher Education Statistics Agency.
Here is another annoying fact. In the midst of a rise of bootcamps, there are still those who can't find jobs. And the fact that so many people can jump into monthly groups to learn to "program" doesn't mean that there is a stable, sustainable system for them to work in.If it is what I believe it is essentially web design or scripting education that's going around, there's really only a few months of work for any group of graduates, and the opportunity to float along the top at any organization that takes them on.
To imply that a bootcamper will become a major technical lead in any kind of reasonable time or with anywhere near the same level of effort as a regular graduate seems extremely disingenuous, and the fact that six figure salaries are being touted as results from these camps seems to show a real economic failure.
> The coding bootcamps springing up in London and Edinburgh are essentially
a pop-up solution.
That would be an accurate description, although I might be cynical. > ... Scratch, a computer language developed specifically for young
children.
I've seen Scratch and I think it's fantastic. Along with Logo and other platforms for introducing logic and computation, I think it's perfect for children and new-comers. Compare for example the sort of weights and blocks that some children are introduced to when learning algebra initially. > Perhaps that is the single most honest argument for teaching
everyone to code: to give everyone an equal shot
That's definitely a fair point, but there's never going to be a way for this to be true universally and that is just a fact. The ecosystem for programming and development is varied and depending on what you want to do, it's going to require vastly different skill sets.Another reality is that there are so many people doing so many different things and technology is such a competitive field that there is almost a guarantee that someone, somewhere is attempting to achieve the same thing in a complete different approach. Who has the fair advantage?
Then it's explained that having experience or skills with computer programming, 'knowing how to code,' or being introduced to the field results in `Aha!' moments like ...
> "‘It would be so cool if this existed,’ and then implementing it the same
day – it’s like a superpower,"
In reality, if you have a complicated idea for something that you want to see created.. it's going to take work. If you have a simple idea, then yes, it may be simple to create! And it is empowering to have the skills to create or begin to create something, or to know where to find those resources and how to begin.Then this article ends on this point:
> "How many young people ... have what it takes to be great developers? ...
"But they won’t be, unless we give them the chance.
This is probably the core idea to education, school, training, and jobs. In order to find opportunities... they must exist, and in order to achieve skills they must be attainable or at least known to someone.But in the same vein, how many people would make excellent astronauts if there were a much broader space program? It's something where there's always a trade-off in time and skill between anything a person might become employed doing.
Shameless plug, part of why I developed the Duck programming language was to make a very accessible programming environment, and I still intend to expand it as best I can to allow easy programming! I'm also working on a new language that is lower-level and it intends to facilitate clean, efficient and safe programming while encouraging higher-level paradigms like functional programming. There aren't a lot of functional, imperative languages out there that still avoid automatic memory management, and I think that's a loss.
Re: Should kids learn to code?
#35Re: Should kids learn to code?
#36I disagree with this. I feel like the general idea of "learning to code" is simply typing commands into a machine that then get executed exactly. The coding part teaches very little, just mainly how dumb machines are compared to self-aware human beings. Kids should definately learn how to think algorithmically and understand mathematics/physics concepts (as opposed to repeating some pattern recognition which is to of…
We do teach coding principles by pattern recognition (big for literacy) and to problem solve. Heck we even do engineering with a problem, come up with a plan and then a creation. The kids always blow me away with what they come up with.
You can teach the great parts of coding outside with your kids (I do) and then see where their interest lie. My daughter who is 9 wants a Robot she can program and we will go the Arduino route. My two older kids never touched a computer growing up and no real desire except to play a game or watch Netflix (They didn't become a part of our family till they were 11 and 15). My 4 year old LOVE playing programming board games (the Turtle Game? and Robo Rally) Teaching kids how to think is a lost art and we have many things we can use to help us. Learning to CODE is code to me to help children learn to think and to learn it early which is good to me. CODE for CODE sake is dumb.
Re: Should kids learn to code?
#37I disagree with this. I feel like the general idea of "learning to code" is simply typing commands into a machine that then get executed exactly. The coding part teaches very little, just mainly how dumb machines are compared to self-aware human beings. Kids should definately learn how to think algorithmically and understand mathematics/physics concepts (as opposed to repeating some pattern recognition which is to of…
To be fair, learning to code also teaches how to break down problems into their most simple pieces which is a very useful skill. I am myself mixed about the benefits of learning to code. I am currently leaning towards it being equal to the other activities you list, but not greater than.
These days, it's a whole new game. We can give our kids a more holistic education around coding because we have things like Arduino, Raspberry Pi, Lego Mindstorms, etc. We can teach code as one among many tools to get a job done or otherwise affect the world, rather than teaching coding as an abstract end in itself.
As an example, my daughter wants to build a garden with me in the near future. Part of that project might include some Arduino-based sensors. If she's interested, I can teach her all about it. But either way, there's a lot to learn.
All of this is to say I agree with you, that code is perhaps an equal, but not superior, among many other ways to help teach a kid how to think.
Re: Should kids learn to code?
#38Yes, even if they're not going to become programmers, coding teaches people two important skills that I see lacking: - The ability to break up large, seemingly daunting problems into smaller manageable chunks. - The ability to shift perspectives from the 50,000 foot view, down to the individual line of code view, and then back up to the 50,000 foot view, and then back down again! Variances in individuals abilities ca…
The ability to break up large, seemingly daunting problems into smaller manageable chunks. This is an important one. We bought our first house 5 years ago and I've been busy completely renovating it. I often get asked how I dare take on such a big and daunting project with no prior DIY experience - the answer is, it's basically what I do for a living!
Re: Should kids learn to code?
#39Re: Should kids learn to code?
#40Yes, even if they're not going to become programmers, coding teaches people two important skills that I see lacking: - The ability to break up large, seemingly daunting problems into smaller manageable chunks. - The ability to shift perspectives from the 50,000 foot view, down to the individual line of code view, and then back up to the 50,000 foot view, and then back down again! Variances in individuals abilities ca…