4 ms·
specialization of labor. different people are good at different things. some people have great people skills, but are poor at math/logic. they might make gre
by ahartman00 10y ago
specialization of labor. different people are good at different things. some people have great people skills, but are poor at math/logic. they might make great salespeople, but poor engineers. why not use everyones' strengths?
"when the only tool you have is a hammer, every problem looks like a nail" I remember my creative thinking class, we were asked to brainstorm a solution to clearing the sidewalks of snow. I proposed a snow shoveling robot. the mechanical engineers had ideas like magnifying glasses above sidewalks to heat them, or making the sidewalks black so they absorb more heat. those were probably more elegant/cheaper solutions. society benefits from different viewpoints.
- zAy0LfpBZLC8mAC 10y agoI think that argument at best supports the claim that there might be some things that not (almost) everyone should know/should be able to do, but certainly not that programming specifically is amongst those. Your argument would equally apply to arithmetic or reading and writing. Would you say that we should drop those from the school curriculum as well? If not, what distinguishes programming from those that it should not be a skill that's taught to everyone?
- ahartman00 10y agosorry for the late reply, i somehow didnt see this. "I think that argument at best supports the claim that there might be some things that not (almost) everyone should know/should be able to do, but certainly not that programming specifically is amongst those" true, good point. "If not, what distinguishes programming from those that it should not be a skill that's taught to everyone?" reading/writing are useful as they are important for conveying information. world news, stop signs, history, etc. Programming is useful, but I wouldnt call it a fundamental the same way reading, writing, math and history are. when people cant read or write, they can cause traffic accidents. They can vote foolishly(if they can find the polling place). People who cant do math will not understand their personal finances. People who dont know history will repeat it. I dont see society falling apart because people can't make their own apps. Now for what its worth, I think it might be worthwhile to teach people some basic shell or python scripting, as that could make their jobs more pleasant by reducing the repetitive, boring work. But would we add a year of mandatory schooling? or would we cut something else? Because I do think those other subjects are necessary. I just dont see why everyone should be a programmer, and I dont think I've ever heard a good reason, other than asserting that it's the future, and there is no other way.
- zAy0LfpBZLC8mAC 10y ago> I dont see society falling apart because people can't make their own apps. But wouldn't people have made the same claim before literacy and math skills were (almost) universal? And wouldn't they actually have been right? In the world as it was, you obviously could survive without those skills. The question is: (1) how useful will it be in the future, and, even more importantly (2) which opportunities could humanity be missing if programming doesn't become a universal skill? > Now for what its worth, I think it might be worthwhile to teach people some basic shell or python scripting, as that could make their jobs more pleasant by reducing the repetitive, boring work. But would we add a year of mandatory schooling? or would we cut something else? Because I do think those other subjects are necessary. Well, I think another aspect is much more important: People should learn enough programming to be able to understand how the world works. Certainly, the goal should not be to enable everyone to build highly-reliable highly-scalable high-performance distributed systems, or whatever. Just as the goal of language and math classes is not to produce authors and mathematicians. Now, I don't think that being able to create your own "Apps" would be out of the question. The only reason that's somewhat difficult nowadays is because the platforms and SDKs suck, not that it's somehow fundamentally a complex problem. But overall, I think the goal should be to (1) give people some idea of what happens with their data behind the touch screen, so they can understand the power structures that result from the software's inner working (because they otherwise will repeat history because they don't notice how those new-fangled systems encode power structures that previously were determined to be dangerous for a society), and make informed decisions on how to use information technology and (2) give them some idea of how to approach problems with mechanical solutions and possibly encode these solutions as software. With the latter, the point isn't even necessarily that they should be able to implement it themselves (though that certainly should be an option for sufficiently easy tasks), but that they have an idea that software could even be a solution, maybe how they could explain their problem to someone more specialized. In any case, the idea would not be to teach the details of, say, the Android API. The idea would be to teach general principles of automatic information processing. As for other subjects to throw out? Sure, throw out woodworking and electronics classes (where that hasn't happened yet), but replace them with computer science/programming rather than with Microsoft product endorsement classes.
- erikpukinskis 10y agoNot all programming is about math/logic. Programming is as diverse as writing. Saying only one kind of person should program is like saying only one kind of person should write.
- ahartman00 10y agoI'm not saying they cant program, just that not everyone should be a professional programmer. Not trying to exclude people here, anyone who wants to can. But I dont think everyone needs to be a programmer. sorry for the late reply