5 ms·
Why do people insist on foisting "software literacy" on the general populace? In terms of skills, financial planning, cooking, interpersonal skills are all mor
by alanctgardner2 14y ago
Why do people insist on foisting "software literacy" on the general populace? In terms of skills, financial planning, cooking, interpersonal skills are all more essential than reading and writing code.
The writing analogy is off anyways: not everyone can write very well. People would upvote -and buy- a children's story by, say, neil gaiman. This is not the equivalent of a throwaway story made up on the spot.
- chaz 14y agoEveryone should learn to write. This should not be taken as "learn to write a novel." The practice of writing develops skills in articulating opinions, clarifying purpose, supporting with facts, and raising clear questions -- skills useful even if pen is never put to paper. Similarly, "learning to code" is not to be taken as "be a programmer." Rather, learning to code is a means to developing skills in analyzing problems, establishing goals, breaking down big tasks into small tasks, understanding cause and effect, etc -- skills that are useful far beyond software. Learning to code isn't the only way to learn these skills, but it's a fun, easy, and accessible way to do all of them at the same time.
- clintjhill 14y agoI think this might be an over-emphasis on writing and coding for both articulation and problems solving. Doing both won't provide "everyone" better results. There are many ways people approach communication and problem solving. To say writing and coding are the best or only ways to develop these skills is in my opinion very short sighted and limiting.
- icambron 14y agoThe upvote question is easy to answer -- this is Hacker News. Of course we upvote programming. And I agree with the point about writing. And I think we shouldn't read "everyone needs programming literacy" from hacking a ROM any more than we should read "everyone needs to know woodworking" from "here's a cool piece of furniture I built for my daughter." But I will try to answer the question about foisting software literacy, since you seem to be questioning the larger trend. The question to ask here is, what do you think the skills economy will look like in 15 years? Looking casually at the trends, it's difficult to avoid the conclusion that software is eating the world. My friends in scientific research have either learned to code or are hobbled by their inability to do so. Financial institutions are increasingly just software companies with some domain expertise; I know finance people who can't get jobs because--to simplify a bit--they don't know SQL. Many non-technical office workers I know interact with a computer on some sort of programmatic level (e.g. Excel macros) and almost all of them would benefit enormously from programming literacy to help them in that. And all of that is trending upwards quickly; that's why programmers are in such high demand. Cooking is great and an important personal skill, but it's only an essential skill for chefs, whereas if you can't code, you might become the equivalent of the guy who can't use email in today's office environment. So to me, it's a question of what the world's going to look like in the future, not a question of what's most practical around the house. Forecasting the future is hard and it's an interesting debate--there are all sorts of reasons software might be less important than we might guess, and of course software people are predisposed to think software will be super valuable. But I think it's the right way to frame the discussion: if software runs the world, you really need to know it. If it doesn't, you don't. I'm not accusing you of this because I don't know you at all and your comment doesn't suggest it, but I hear a little bit of insider entitlement in a lot of programmers' arguments against increased software literacy. "I don't want all those other people jumping in and pretending they're software engineers too. The future belongs to the select few, which happens to include me. Leave software to the pros!" It's seems absurd to me that programmers don't want more people to understand the ins-and-outs of their profession...unless they feel threatened by such a thing. There's something very fishy about telling people who don't code, "Oh, yeah, don't do what I do. Learn to cook instead." Are you sure we're not just trying to keep all the marbles?
- alanctgardner2 14y agoPersonally I have no horse in the coding-skills race; I really enjoy problem solving and architecting systems more than writing the code itself. If there were lots of commodity coders, I could direct and manage them and enjoy myself plenty ;) From the 'software is eating the world' perspective, I see increased use of software, but not increased production in unconventional areas. If you look at the progression of home computers, we've gone from booting directly into BASIC, to an iPad, where you really can't do any development. The slow march to 'appification', and the trend of taking away customization and development tools from consumer-grade products makes me think that while software is becoming more important, average people need (and want) to code less and less. It's definitely a programmer's perspective to say that any knowledge industry (like finance) is just software + domain knowledge. Someone in that industry would approach it from the other end, and say that they can write a req and get some commodity software to solve their problem from some developer half-way around the world. This is where I think the industry is going: not universal programming literacy, but a more stratified culture where 'commodity' development is it's own discipline. Consider the ease with which any consultant can knock together a CRUD Rails app with some business logic the client specifies. We've removed a ton of overhead and boilerplate, and lowered the barrier to entry tremendously. As time goes on, and development technology advances, I see software development/engineering and computer science diverging more and more. At some point, development might be an apprenticeship or more 'hands-on' education, to learn the existing patterns and practices. In short, development will become a commodity, but via an emerging class of commodity developers who can handle 95% of client requests. There will still be people who do hard things, and hack in their spare time, and they'll make things better for everyone. But they'll stay in the minority, and development will stay out of reach for people who aren't explicitly 'developers'.
- icambron 14y ago> Someone in that industry would approach it from the other end, and say that they can write a req and get some commodity software to solve their problem from some developer half-way around the world. I agree that's how they'd like it to work. But in reality, their in-house teams have become more and more technology-oriented, and programming literacy has become a higher priority in hiring. An "analyst" used to be a clever kid with a finance degree; now they have a finance degree and are comfortable in VBA, SQL, and an analytics package. Badass programmer? No. Software literate? Yes. > We've removed a ton of overhead and boilerplate, and lowered the barrier to entry tremendously. Agreed (I'd caveat that by noting that we've also hugely increased our expectations for software functionality, but the point still stands). But note that all of these consultants who can knock out a CRUD Rails app still have to read and write code. What the lower barrier to entry means is that a bunch of people who previously couldn't do it now can, including potentially the business analyst who defined the requirements, assuming they have some basic software literacy. That's going to quickly translate--is already translating--into the expectation that the analyst can actually write the code. Being able to actually code your solution to a problem makes you more productive, because your employer doesn't have to pay a consultant to accomplish that work, and because there isn't an extra layer of communication overhead. So businesses will begin demanding software literacy as they become more reliant on basic software development (or, depending on prevailing labor conditions, simply paying more for it), because it makes them more efficient. This is similar to how productivity technology (voicemail, email, software calendars) hasn't made secretaries' jobs easier, or turned them into a turnkey commodity; it has largely eliminated secretaries and replaced them with the expectation that you do that work yourself. Same with travel agents. Same with tax accountants. As the tools allow for more productivity, people are forced up the productivity ladder. Progress. Being literate in software is different than being an expert software engineer, and fortunately for expert engineers, we can simply solve higher-level, or at least harder, problems, so this development is actually good for us. My view is consistent with your idea that there will be a bifurcation between hardcore developers building frameworks and a bunch people who know the basics and can use the tools. The only difference in our views, as far as I can tell, is that in mine, this army of "commodity" programmers fielding client requests will be the clients themselves, and not an outsourced stable of kinda-engineers. Those kinda-engineers will be employed at firms as business analysts, product managers, etc, because their computer literacy will be really valuable there.
- Retric 14y agoI get along fine with without cooking skills. Now, cooking skills plus time could in theory save me up to 7k per year if you ignore prep time, but programming skills are worth a lot more than that.
- Evbn 14y agoIf you are buying food as healthy as home cooked, you are paying more than 7k.
- sophacles 14y agoI will never ever publish for money. WTF do i need to write for? I will never ever work in finance. WTF do I need financial planning for? Oh, I need to write because it is a common form of communication, whether or not I'm a writer. Oh, I need to understand how to my money, even if I pay a guy to do my taxes, and help me plan my retirement, because I need to have basic abilities in budgeting, understanding consequences of my spending and so on. So, why do we think people need basic code literacy? Well, because the more people that exist who aren't afraid of the computer, and who understand the basics of programming, the more people will be able to effectively use the tools that are available to them... You know how we thought computers were pretty ubiquitous a few years ago, until everyone bought a smart phone and suddenly they are in even more places? And how that isn't the first time "ubiquitous computers" were in fact not even close? Yeah, since more people have computers than have hammers and cooking gear, perhaps we should promote a higher level of understanding of them than we have been. That higher level of understanding really comes in the form of "advanced usage" or "basic coding skills" (because at some point they really start to blend). Why not cover computer programming at a basic level in childhood education. Shit, I bet that will be more useful than the sewing unit most kids still have to take.
- alanctgardner2 14y agoCars are also very prevalent, and surprisingly most of the people in my mandatory auto class in high school didn't give a shit. Just like the compulsory computing class they had to take. How much programming knowledge is required to use a smartphone? This is the thing nobody in the software literacy camp seems to acknowledge: tightly integrated devices with walled-garden software ecosystems are the industry trend. Yes, some people in maths-heavy fields will need computing more and more: financial analysts, engineers. These people are already taking intro computing classes at the undergrad level (engineering computation is a prereq for mech eng where I study). But the average person with an iPhone isn't going to put up a hundred extra dollars to write an iPhone app to fix their own problems. I think the longer you've been out of high school, especially if you're working or studying in an insular environment, you forget just how broad 'everybody' is. I know lots of people from my school who are now bricklayers, or auto mechanics, or grocery store clerks. Understanding a while loop has not substantially improved their quality of life, even though we had a kickass comp sci teacher. It's just not as relevant in daily life as we want to believe.
- primitur 14y ago""Why do people insist on foisting "software literacy" on the general populace?"" Because under all that complication, there is a big secret, and that secret is that anything you can describe to another human being, you can describe to a computer. So what if, instead of not just learning to balance the books, teenagers are required to write a small accounting package to do it? Shouldn't competent literacy include the most significant literal tool the human race has ever created, the computer and the skills of its application, if after all, we've gotten as far as teaching kids to read and write, as well?
- roel_v 14y ago"Why do people insist on foisting "software literacy" on the general populace?" Because what 'we' do is the most important thing in the whole world goddammit, and if only everybody else was more like 'us', how much better would the world be! Imagine if only everybody else was exactly like us, that'd be true utopia!
- jiggy2011 14y ago> In terms of skills, financial planning, cooking, interpersonal skills are all more essential than reading and writing code. Teach all that stuff too, it is not mutually exclusive.