Jump to content

Should programming/computer science be mandatory in primary/secondary education?

Mira Yurizaki

I have a Flipboard and I'm subscribed to the programming "channel". Occasionally I'll get an article saying how we should be teaching kids to code and in some cases, how it should be mandatory to teach kids to code. Unfortunately the last two times I looked at said articles had, in my opinion, a shallow reason for doing so: they predict when these kids are able to enter the work force, there will be something like 200,000+ jobs lined up for them all for the taking. Essentially, we're not teaching the next generation of coders to code because well, coding can be an interesting field, but because "there's a job to fill and you need to fill it".

 

This kind of thinking is disturbing to me. Primary and secondary education shouldn't be about forcing specialized subjects on children because you think there will be a job market for them. As a quasi example, in the 60s the US government tried to do things like "New Math" and push heavily science and engineering fields. All for  the sake of creating a large pile of people who could progress science and technology in order to beat the Soviets. Last I checked, that didn't work out very well.

 

A rebuttal I often get though is  that programming teaches logical thinking. But there's already a branch of mathematics that deals with this: discrete math. And then there's the thought that programming is "practical". I don't really know how practical programming is outside of my job. Last time I "programmed" something was creating a macro in FFXIV, but I can barely call that programming.

Link to comment
Share on other sites

Link to post
Share on other sites

Programming should not be forced on kids but general computer skills could be taught as part of a course in life skills.  Some kids don't have computers at home so I think that'll be good for them.

i5 12600k | ASRock Z690M-ITX 32GB Corsair Vengeance LPX DDR4 3200MHz | EVGA 2080 Super Black | Samsung 970 EVO Plus 500GB + 980 1TB | Corsair RMx 650W | Thermaltake Tower 100 White

Link to comment
Share on other sites

Link to post
Share on other sites

Coding should not be forced as allot of people are not talented for coding,do what you do best

Link to comment
Share on other sites

Link to post
Share on other sites

1 minute ago, Nicholatian said:

In software development, there are (generally) two types of programming: Imperative programming and functional programming. Mathematica deals exclusively with what computer scientists call functional logic. There’s really no better way to master imperative logic than by learning a programming language like Python or C++.

 

The more Microsoft Windows falls to the wayside and the more other UNIX-like operating systems become prevalent, the more reason there will be for people to be taught a basic level of computer programming. Part of having your computer do what you want it to do, and not what Microsoft or whoever wants it to do, entails knowing how to tell it what to do.

 

And for a population of people who are educated in computer usage, Python is plenty for them to accomplish what they need and fits the bill better than any other language. It’s intuitive, simple, well-structured, and powerful enough for most purposes any normal user could have. In my opinion, it is great for small scripts and tasks that a user might want done.

 

…that’s provided we can muster up enough power as the majority to create a society that values education to that extent. Many schools and countries cannot see the value of programming past the employment potential it has, which is very short-sighted. There is so much more long-term value to the practise than that.

Yes but most people who use computers are lazy. The moment you ask them to lift a finger to do something they'll go to a competitor who's already doing the work for them, even if said competitor does shady things. This is the stigma why Linux isn't popular in the personal computer market. People think you have to do a ton of work just to get a distro running even though that hasn't been the case with distros like Ubuntu and Linux Mint.

 

Is it nice to be able to control your computer the way you want? Sure. But most computer users aren't really interested in that.

Link to comment
Share on other sites

Link to post
Share on other sites

I actually believe that some sort of programming language should be required some time. It's such a good way to learn problem solving skills that it can only help. I know some people will just not get it and that's okay, but it will also open it up to kids who never thought of it.

Link to comment
Share on other sites

Link to post
Share on other sites

Found this tonight and thought it applies quite well...  

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

programming is just a way to get people think in a logical and structured way. It allows one to see any problem, not just in programming and break it into small steps and allows you to over time improve the solution to make it more efficient.

 

I do believe this sort of critical thinking should be taught to everyone and programming is a very effective way to do that.

                     ¸„»°'´¸„»°'´ Vorticalbox `'°«„¸`'°«„¸
`'°«„¸¸„»°'´¸„»°'´`'°«„¸Scientia Potentia est  ¸„»°'´`'°«„¸`'°«„¸¸„»°'´

Link to comment
Share on other sites

Link to post
Share on other sites

6 hours ago, vorticalbox said:

programming is just a way to get people think in a logical and structured way. It allows one to see any problem, not just in programming and break it into small steps and allows you to over time improve the solution to make it more efficient.

 

I do believe this sort of critical thinking should be taught to everyone and programming is a very effective way to do that.

Programming may be one avenue into that, but it's not the only avenue into that. Modern manufacturing methods (Lean and Six Sigma) were made not by programmers, but by people in management and process control. The minimalism philosophy is one that emphasizes to waste little and to be efficient to generate more time to do things you want to do, but I don't think that was started by a programmer. And heck, the Engineer Guy is all about gushing over marvels of problem solvers, which few of the things he covers were made by programmers.

 

My point is, programming may be a good way to think logically, but it isn't just the only way to do so. I know people who are excellent problem solvers, but aren't programmers and Python may as well be a foreign language to them. And if you teach something that is still a specific application, you risk having these values lost because people don't know how to apply it elsewhere. It's like I didn't give two craps about imaginary numbers in math until I found out it's how you solve AC circuit equations.

Link to comment
Share on other sites

Link to post
Share on other sites

16 hours ago, Gamessys said:

Programming should not be forced on kids but general computer skills could be taught as part of a course in life skills.  Some kids don't have computers at home so I think that'll be good for them.

I agree. It should not be mandatory, but you should be able to choose it as a course. It should be a course alongside the normal Woodshop, Metalshop, Music, and other art classes that many schools have.

Link to comment
Share on other sites

Link to post
Share on other sites

24 minutes ago, Emma Nieuwenhuis said:

I agree. It should not be mandatory, but you should be able to choose it as a course. It should be a course alongside the normal Woodshop, Metalshop, Music, and other art classes that many schools have.

That's my line of thinking too. Programming is a specialized subject, or an applied subject. You can generalize the things you learn from programming in a math course. Barring that, you could well, just generalize it elsewhere.

 

I mean, I think it's more important to teach kids how to be an adult. Where's the class for budgeting, doing taxes, writing a resume, surviving job interviews, and all that?

Link to comment
Share on other sites

Link to post
Share on other sites

5 hours ago, M.Yurizaki said:

That's my line of thinking too. Programming is a specialized subject, or an applied subject. You can generalize the things you learn from programming in a math course. Barring that, you could well, just generalize it elsewhere.

 

I mean, I think it's more important to teach kids how to be an adult. Where's the class for budgeting, doing taxes, writing a resume, surviving job interviews, and all that?

I had classes on all that in high school.

Link to comment
Share on other sites

Link to post
Share on other sites

I'm unsure which schooling system you are referring to, but I'll just assume the American one.

I think it's fine to teach children more programming, even if it is on a low level to make them understand that it is not some kind of magic or made by computer geniuses. Having them do it during primary school (age 5 - 10) is too early. Preferably during Middle school (age 11-13) or Highschool (14 - 18) would be best. Teaching children / teenagers  some basic things such as creating a simple website could spark their interest. Having a 1 year class teaching you the basics of HTML, CSS and Javascript and making your own website. It does not have to be a website, it can be anything, aslong as it can be kept simple and interesting. (Dealing with compilers or complex programs is not fun, especially at that age.. Immediate visible results are more entertaining).

However it should never become a main subject such as History throughout the education period. A 1-year course in programming is fine, and having the option to learn more after that course is even better. But forcing individuals to learn programming to force them into the IT industry.. I don't see that happening, even with the shortage of IT personel..Great salary... Working conditions (sometimes, depending on the company)..

But hey, that's just my 2 cents.

Your average Software Engineering student.

Link to comment
Share on other sites

Link to post
Share on other sites

I think it should be made an "exploratory" as many schools already do. A short partial semester class that students take to see if they have an interest in it, then switch to another field such as art, then something like shop, etc

I do however think that if a school or state requires students to have an art credit then they should require a technical credit as well or allow the two to be interchangeable as a "technical art". No reason the computer nerd should have to paint if the artist mustn't code. 

                     .
                   _/ V\
                  / /  /
                <<    |
                ,/    ]
              ,/      ]
            ,/        |
           /    \  \ /
          /      | | |
    ______|   __/_/| |
   /_______\______}\__}  

Spoiler

[i7-7700k@5Ghz | MSI Z270 M7 | 16GB 3000 GEIL EVOX | STRIX ROG 1060 OC 6G | EVGA G2 650W | ROSEWILL B2 SPIRIT | SANDISK 256GB M2 | 4x 1TB Seagate Barracudas RAID 10 ]

[i3-4360 | mini-itx potato | 4gb DDR3-1600 | 8tb wd red | 250gb seagate| Debian 9 ]

[Dell Inspiron 15 5567] 

 

 

Link to comment
Share on other sites

Link to post
Share on other sites

Computer Usage/Literacy skills, yes. Comp Sci/Programming? No.

Though, in all honesty, the little monsters these days have technology so shoved into their face (sometimes to the point were the tech is more of a parent than the parents are) that they could probably be fine without any computer classes at all.

CPU - Ryzen 7 3700X | RAM - 64 GB DDR4 3200MHz | GPU - Nvidia GTX 1660 ti | MOBO -  MSI B550 Gaming Plus

Link to comment
Share on other sites

Link to post
Share on other sites

No.  There is a giant glut of programming and computer talent out there.  So much so that  most tech firms receive literally hundreds, sometimes thousands of qualified applicants per position.   Kids should be forced into more problem solving situations though as part of their training that are useful in most endeavors, whether they be in the sciences or not.  Programming is just yet another tool that really doesn't need to be done except by a relatively small number of people trained for the purpose. 

 

Even at companies like Google, only a very small fraction of the people employed there program or need to know programming.  The rest are in sales/marketing/etc.  When you see these "200,000 jobs in computers claims", only a very small number actually require significant programming skills.  And many of those numbers are severely exaggerated as well by companies trying to obtain more work visas for foreign nationals.

Link to comment
Share on other sites

Link to post
Share on other sites

Although I support coding being an option.  I don't support it being mandatory, because when you are forced to do a skill (such as some people with maths) you can begin to hate it.

I think basic computer science should always be taught, so how computer hardware interfaces with each other, how computer processors process data, (possibly) how to represent numbers and text using bits, how the internet works, how software works (interpreters and compilers). 

 

Although this isn't coding, it is necessary to have a broad basic understanding of computers.  This is needed because anyone who is working with computers SHOULD know how they work so they can actually know what they are doing and hopefully be able to understand the risks involved with doing certain things like running random software.

Link to comment
Share on other sites

Link to post
Share on other sites

I think that it should be integrated into classes. So in Maths part of the course could be programming some kind of calculator to do the job for you. Science class could have kids interpreting data on their computers and figuring out trends and corellations in the data. I think that if you push a pure coding class at kids then they are more likely to resist and not want to learn than if you present them with an immediate result (they have a thing that they can run on their computer that does maths for them, for example).

Intel i7 5820K (4.5 GHz) | MSI X99A MPower | 32 GB Kingston HyperX Fury 2666MHz | Asus RoG STRIX GTX 1080ti OC | Samsung 951 m.2 nVME 512GB | Crucial MX200 1000GB | Western Digital Caviar Black 2000GB | Noctua NH-D15 | Fractal Define R5 | Seasonic 860 Platinum | Logitech G910 | Sennheiser 599 | Blue Yeti | Logitech G502

 

Nikon D500 | Nikon 300mm f/4 PF  | Nikon 200-500 f/5.6 | Nikon 50mm f/1.8 | Tamron 70-210 f/4 VCII | Sigma 10-20 f/3.5 | Nikon 17-55 f/2.8 | Tamron 90mm F2.8 SP Di VC USD Macro | Neewer 750II

Link to comment
Share on other sites

Link to post
Share on other sites

The problem is not programming. Programming is basically translating ideas into code. The problem is that kids usually lack the skills to have those ideas in the first place.

Write in C.

Link to comment
Share on other sites

Link to post
Share on other sites

Kids have ideas and things they like, why not teach them to program based on what they like, which is what the video I posted was about.

Link to comment
Share on other sites

Link to post
Share on other sites

My school actually offers AP CompSci as an elective, however its taught by one of the worst teachers ever, so very few dare to take it.

May Our Framerates Be High And Our Temperatures Be Low.

PSUs: EVGA B2/G2/GQ/GS, Corsair RMx/i, Grey-Label CXM, Everything Seasonic/Delta/Super Flower, XFX except XT

Use pcpartpicker.com

Link to comment
Share on other sites

Link to post
Share on other sites

My school computer science is mandatory in the 8th and 9th grade but the way they go about it is all wrong in my opinion. The first year it was attempted there was a small introduction to code with  blocks that represent code that stick together. Most in my class moaned and groaned about so then we moved on to python you can guess what happened next. My suggestion is to really only offer programming to students who actually what and have the drive for it and for the ones who don't to learn basic computer skills like using google or something.

Link to comment
Share on other sites

Link to post
Share on other sites

On ‎24‎/‎08‎/‎2016 at 7:25 PM, jimistephen said:

Kids have ideas and things they like, why not teach them to program based on what they like, which is what the video I posted was about.

yeah most ideas are games and games are nit that simple o code thus most people just give up.

                     ¸„»°'´¸„»°'´ Vorticalbox `'°«„¸`'°«„¸
`'°«„¸¸„»°'´¸„»°'´`'°«„¸Scientia Potentia est  ¸„»°'´`'°«„¸`'°«„¸¸„»°'´

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×