5 ms·
"I am all for getting more non-programmers programming..." May I ask why? I completely disagree with that statement and all the initiatives pushing that agend
by albeec13 13y ago
"I am all for getting more non-programmers programming..."
May I ask why? I completely disagree with that statement and all the initiatives pushing that agenda.
- jliechti1 13y agoSure - let me answer that with my post for the "Everyone does not need to learn to code" thread. When I say getting more non-programmers programming, I mean it from more of a practical standpoint. My previous post: "From a practical standpoint, I really wish everyone was taught enough programming to know how to automate basic manipulation of text data. I see way too many people editing long lists of data by hand, when there are much better ways to go about it (even Excel works great for this kind of stuff). Just knowing this setup below can let you do some really power automation of manual tasks and can save you a lot of time. Example template in Python: import csv with open('mydata.csv', 'r') as csvfile: reader = csv.reader(csvfile, delimiter=',', quotechar='"') for row in reader: # Data manipulation here " Link: https://news.ycombinator.com/item?id=6237430 https://news.ycombinator.com/item?id=6237430 I'd also recommend looking at Jach's post (the child post of my post in the link) - I thought he made some really good points/critiques about 'tool-based' vs 'concept-based' teaching.
- albeec13 13y agoI agree with you to a point. Yes, I think computer literacy is very important, and far too many people think of computers/tablets/phones as magic boxes that show pretty pictures when you click/touch things. Your Excel example, to me, falls into that category. Learning to use a word processor or spreadsheet application is something that is increasingly necessary in today's world, and I am often surprised by how few people (including, shockingly, many software developers) know how to effectively use them. I just don't feel like taking it all the way to "everyone must learn to program" is a good idea, any more than "everyone must learn to perform open-heart surgery" is. Based on your comments, I think we actually agree.
- lutusp 13y agoImagine a world in which most of the important ideas are in printed form, and only a priestly elite can read or write. Wouldn't you want to increase the base of literate citizens? Today, most of the important ideas -- their genesis and dissemination -- are in computer form. I would argue that making everyone a programmer is not the goal, but widespread computer literacy, a familiarity and comfort with computer use, database searches, research skills, is the modern parallel to encouraging print literacy in years past.
- albeec13 13y agoWe already live in that world, and it's been that way for centuries. If all the automobile designers and mechanical engineers were to vanish today, do you think lay people would be able to hop into the driver's seat and take over the job? The same is true for nearly every industry, and always has been. The only reason we've come this far as a civilization is because we record what we learn and pass the knowledge on to future generations of people who are interested in that knowledge. Not everyone has the same interests, and barring an apocalypse, no one needs to know it all at once. Programming is no different. Sure, things like reading, computer literacy, math, biology, basic problem solving, etc. are important base skills for everyone to know. Once those foundations are in place, delving further is a matter of preference, and not everyone should be pushed to learn computer science any more than they should be pushed to learn quantum mechanics.
- meemoo 13y agoThe base level of computer literacy should be deeper than "how to use Word" to some level of algorithmic literacy.
- albeec13 13y agoWhy? Most people can't even use a word processor or spreadsheet right now, let alone comprehend algorithms and programming. Besides, we all drive cars and we all use refrigerators and air conditioners daily. Not everyone knows how those work or is able to fix them. If they did, we'd be a world of "jacks of all trades and experts in none." That's not what got us to this point as a technologically advanced civilization. It's far more important for everyone to know how to drive properly and safely than it is for them to know how to perform maintenance on their cars. In fact, having everyone do their own car maintenance would probably be just as dangerous as putting programming into the hands of people who don't know how to avoid phishing attacks and computer viruses.
- dagw 13y agoBecause it will free up them to focus on what they're good at and free up 'real' programmers to work on harder problems more appropriate to their background. At work I see many people struggling with 'simple' programming problems in all kinds of strange ways (often involving abusing excel) that could so easily be done in a dozen lines of python. Occasionally they end up coming to me to ask for help. Now they have to spend their time teaching me the intricacies of their domain, and then I have to spend my time coding up a solution, which might be wrong because of some subtle detail they felt was too obvious to mention. And now we're both stuck in a situation where every time something changes instead of just fixing it, they have to come to me and first explain exactly what they need to change and then wait for me to have time to fix it. At the end of the day this isn't productive use of anybodies time.