3 ms·
I think there's a fundamental difference between programing and literacy. Written language is a medium whereas programs are tools. Programming seems more simil
by bweitzman 11y ago
I think there's a fundamental difference between programing and literacy. Written language is a medium whereas programs are tools.
Programming seems more similar to car mechanics to me. When the car was first introduced, everybody who owned one knew exactly how it worked and how to fix it. Partly because they were simpler and partly because the early adopter were just more interested. Over time, as the complexity and ubiquity of the car has grown, the general population knows how to operate a car but not how to fix it (save for some basic things here and there).
Similarly with computers. The increasingly abstract operating systems, UIs, and even languages have created stratifications of knowledge across the whole stack (IT, software devs, compiler writers, CEs, etc) . Most people using a computer do not know how it works anymore, just like with cars.
I think it's great that schools have to offer computer science because it's a great subject that young people can really take off with since writing software costs so little compared to other hobbies. But it would be silly to force people to learn to code. As much as computers are becoming the most integral things in our lives, it's just not a skill that everybody needs to have.
- danso 11y agoI have to disagree. A car mechanic is akin to a car as a tech support or sysadmin is to a computer. Some tech support people know far more than I do about fixing a computer, even if they aren't programmers. It's been about a couple decades since I wrote my first for-loops and if-statements in Qbasic...but even though computers have grown exponentially, not just in pure power, but in influence and capability -- I use the exact same logic and thinking, every day, as an application programmer -- and very close to the same syntax. Loops and conditionals (and functions, and so forth) are so fundamental to programming that it seems like anyone could learn them -- and use them to some practical effect -- in a few hours of following a few tutorials. But I haven't seen it in the beginners I've taught...It's a profound thing to communicate my exact intent to a thing that only knows, at its core, 1s and 0s...but it's not just the ability to write code, any more than writing is just the ability to make dark marks on a piece of paper. It's the ability to take thoughts and intents inside of me and communicate it to something fundamentally different from me, and yet be understood...in that sense, it's not so much different from traditional writing.
- nv-vn 11y agoAs much as programming required the same code over and over, there's still a whole lot of thinking that needs to be applied - at the core, there's the need to think like a computer just to solve the problem itself; on top of that there's a layer of understanding required to debug to make it more than just bruteforcong; and then there's a layer of understanding the fundamentals of the underlying architecture in order to be able to reason how to solve a problem in a fast, reliable, and efficient way. While a traditional programming class can teach how to write code, and maybe even how to solve basic problems on your own, a few short programming tutorials isn't enough to get most people into the right mind-set to go on learning the rest on their own, nor is it usually enough for them to be able to go out and write a full program from scratch.