Hacker News new | past | comments | ask | show | jobs | submit login
Why Everyone Should Not Learn To Code (coderslexicon.com)
30 points by Martyr2 on March 1, 2013 | hide | past | favorite | 62 comments



> We need passionate people who are creative and want to learn to DESIGN software in addition to coding.

We also need good workers who can scrape together the code to pipe data from one application to another. We need sociologists and detectives who can construct SQL queries. We need scientists and economists who can cobble something together in R. We need physicists and engineers who know their way around MATLAB or SciPy. We need drafters who can write simple LISP programs. We need artists who can do a little bit of JavaScript when they need to.

These are not people who will always have a passion for programming, and they won't always be producing products or thinking about design. The dream of the fourth-generation programming language is dead, and the new dream is to teach people a little bit about programming, even if it won't be their career or their passion.


I've worked with a lot of smart people in data-gathering fields (researchers, journalists, analysts)...the amount of human-hours wasted on cleaning up data that was compiled by someone who didn't understand delimiting, normalization, or how operations can be repeated when we have a pattern (kind of like map-reduce) is near tragic.

Think if you worked at a publishing house in which you had a fantastic story-teller who was illiterate. This person could tell best-selling yarns, she just needed someone to actually put it down on paper. And then re-read to her outloud the sections (and entire chapters) when the material was edited and re-arranged.

Yes, you could still produce best-selling books this way. But it's not efficient. And the artist misses out on a lot of what could be done with more direct contact with the written text...and the worst part is, she doesn't know what she's missing out on.

edit: Note that I'm not saying that this hypothetical illiterate storyteller has to be a great writer (just like most people do not need to be excellent, best-practices programmers). She just needs to be good enough to re-arrange and re-read her own ideas and take a more active part in the editing process. Believe it or not, in the publishing business, there are amazing storytellers (or reporters) who are not very good writers.


1. Compare programming to home DIY. Sure, every year you'll have people who knock down load-bearing walls, get pesticide backwash into the drinking water, or turn a simple de-icing operation into a raging inferno. But people also assemble millions of shelves and beds, unclog millions of drains, and build thousands of greenhouses and planter boxes.

2. Professional programmers create awful messes too. They do it less often, but with greater consequences. Just like the contractors building a bridge are less likely to screw up than some goofball installing a new water heater at home, but a bad bridge is much more dangerous. Give people more training when the potential consequences of bad work are more severe, and less training when it's just not needed.

3. The value of someone with both domain knowledge and programming knowledge is usually immense. You can either teach a programmer about the domain, or you can teach a domain expert how to program. If you have a programmer with a bit of domain knowledge, then they know what kind of questions to ask the domain experts. If you have a domain expert with a bit of programming knowledge, then they know how to communicate technical requirements to a professional programmer.

Let's take your analogy with the publishing house. If the fantastic storyteller can write but has major problems with grammar and continuity, then a good editor can clean things up.


Yep, all that, plus business people who can write and edit simple spreadsheet macros and people to whom the operation of the programmable thermostat in their house is not a total mystery.

Not many people have the talent to become professional photographers, chefs, or musicians. That doesn't mean they shouldn't learn how take non-crappy family pictures, cook an edible meal, or enjoy singing songs with friends.


But why does programming change the world in that sense?

We've had math education for a long time now, you could debate about the quality of it but I'll call you a liar if you couldn't make the debates about programming education, yet we have widespread misunderstandings about many quantitative things, we have had a lot of historical education, yet many people do know basic things in history. I just don't think these code fever is panacea it's made out to be.


We do have misunderstanding about quantitative things, and people don't know some basic things about history, but it would be even worse without education.


Do we really need

>artists who can do a little bit of JavaScript when they need to?

In some ways that statement is tautological, so I guess, fine (we need things that we need, got it). But I don't think this really an interesting statement; maybe it's a little provocative but not realistic. How about we have renaissance style artists that also do mechanical engineering? That's great but now you're argument is not about how programming is the special snowflake but that we need to return to a time of intellectualism ... ... However, that argument doesn't really work either because it's not as if renaissance intellectuals were the norm for their societies.

As far as the other examples you cited, there are already people pursuing STEM so I don't really know how fitting the idea of programming solves our societal problems.

Without being too hostile about it; does it really matter if the taxi driver can program? In a real sense, do you think this is really greatly benefiting society? I see it as benefiting society the same, or probably less so, than if the taxi driver understood Sartre, Descartes, or knew the history of Islam.

But then we're just saying "the more educated we all are the better everyone is" to which I say "great, non-controversial statement but so what?" Just being honest.


I'm afraid your comment needs some editing before I can fully understand your intention. But I can posit this:

What if that cab driver, as a result of knowing a small amount of coding, could optimize his time, his routes, his fuel efficiency, his tire wear, or Hell even eliminate the need for a cab service altogether?

Luckily, you're right, someone else will figure it out for him.


Well, I edited it but I think it's pretty clear anyway. You're posit does really answer the issue.

So you're solution is there is that the cab driver should be an Einstein or something, great but that's just silly. You're basically saying as I said before, that the best case scenario is if everyone was some great intellectual. No one disputes that, it's not controversial. But it's not interesting as something that could be made to happen in reality. As well, why is programming so special in this sense?

For this cab driver, knowing a little bit of Javascript to be able make SPA blog engine is not enough to do route optimization, fuel efficiency and all this other stuff. You're talking about a renaissance cabbie that knows operations research, physics, and queuing theory and so on.

It's not really serious how programming is the special snowflake in this sense. If the cab driver had taken the time to learn physics, and operations research in high school or whatever is being posited for programming, then he would be able to make this super efficient cab system or probably not have to be a cab driver. Adding "programming" into the mix of education does not fundamentally change anything about society.


"the dream of the fourth-generation programming language is dead"

I'm pretty sure R, MATLAB, SQL are fourth generation languages.


Could not disagree more.

Just because you will not become a computer scientist or full time engineer does not mean you won't have value in your life by understanding more about how software and computing works.

All businessmen are not accountants, but you still take a basic financial accounting class when you major in business. It teaches you the basics of how things are organized and why certain things are measured the way they are. Learning the basics of programming could serve the same purpose. Kids would learn how to break problems in to algorithms and what sorts of things are even possible with software, helping them gain an appreciation for why software works the way it does. And unlike accounting and its relationship to business, pretty much everyone in a first world country uses software throughout their life often for several hours a day.


Basic accounting class is equal to the basic computer class. You'll learn just very general things like "this is computer and here's what it does"


"Basic computer class" made sense when computers (including phones and tablets) weren't as pervasive as they are now.

Now that almost everyone is using them, "basic programming class" is entirely appropriate. As is "basic image editing" class, "basic spreadsheet use" class, "basic computer aided drafting", etc.

I think learning a little coding is like learning a little algebra. Sure you may not use it, but then again you may.


The basics about computers are machine language. The next complicated layers are opcodes (abstraction over machine language) and then higher programming languages.

Concrete applications are the highest and most complicated level (i. e. they contains millions of complicated lines of code).


So to me personally, the movement’s purpose is _not_ to make software engineers, or true coders, or even mediocre programmers, but rather to make Computer Science a top-level subject in school systems alongside Biology, Physics, Calculus, etc.

Just because you took high school Biology or Physics did not make you into a Biologist or a Physicist. It merely introduced you to the most distilled and complete parts of those fields and had no pretense of professional training or a career choice.

In a similar manner, people are pushing for the most distilled parts of Computer Science to enter school curricula. This would _not_ mean that after that course you are a programmer, or a computer scientist, or even proficient with computers.

People fail at Biology or Mathematics and have different aptitudes.

What it would mean, however, is that you are exposed to _computational thinking_ [http://www.cs.cmu.edu/~CompThink/], an understanding perhaps that somethings are computable and somethings are not, rudimentary programming skills, and a different outlook on Computers in general.

Thus, people would no longer look at computers as purely black boxes and magical, they would understand them a bit better and have a rudimentary understanding of a field which affects almost everything in their life today.

We feel Physics and Biology and Chemistry and Calculus are important, why not add Computer Science to the mix?

Do not confuse professional training with simple education.


Well, of course, I mean that's great. How are we doing at educating at educating the masses in biology, mathematics, physics, etc? Not very good right? So now, we're going to add more stuff. Why don't we add queuing theory, that's important right? To me the movement is not clear; it's not as if you can't learn programming school as it is now. I love programming but I just don't understand what the goals are of the "code fever" movement are or even when I do I think it is naive, at best.

Even that sort of crazy video with Zuckerberg and Gates literally made it out to be that programming is easy and you don't have to be smart and then implied that learning this stuff that is easy and doesn't require smarts will land you a job at this places where you can skateboard in the office and futons and so forth when they are the ones recruiting masters and phd students and asking people how to move Mt. Fuji (ok ok I know that one is gone, just throwing it out there. :) )


Software development is a lifestyle choice like literacy is a lifestyle choice.

If you don't know how to read, you're still totally fine.

You just can't:

- Communicate your thoughts

- Learn new things

- Understand warnings about dangerous conditions

- Make more than a certain amount of money per year

- Participate meaningfully in your government

etc.

As computers further saturate our existence, the divide between those who truly understand their operation, maintenance and programming will produce scary inequalities. Software solves a lot of problems. If you know how to write it, you can solve problems faster and more efficiently than a person who does not. Debugging is a problem solving framework with tremendous application to all realms, not just tech. Those able to debug their technological lives will find life a lot cheaper than those who must pay others for the same.

Not everyone needs to be a professional software developer. But I posit that everyone can benefit from knowing how to write software to direct the actions of their computing device.

And regardless of our handwringing in one direction or another, it's going that way anyway. Lots of people are pretty decent functional programmers in their Excel spreadsheets. It'll grow organically from these sorts of tools and frameworks.

But seeing the inevitable, I'd sure love to see more people taught computer literacy – programming/scripting included – with the same mandatory nature as language or math.


I could say the same thing about electrical engineering but I don't think you would find that as interesting in argument; no one has ever really seriously suggested, that has gotten as much press as "code fever" as regarding everyone needing to learn about energy and electricity.

I submit those technologies pervade our culture much more than programming, as well programming real computers that poeple use is only possible because of the former. Why's programming so special in this sense? Because people can whip together "yet another blog in RoR" YouTube videos but maybe electromagnetism not so easy? I dunno.

In a funny way, it's like software "engineers" are putting their hands up and saying "I give up. We don't know how to make software or user interfaces for users to use in sensible way so we give up, now we think all our users need to learn to program for us." It's kind of cute. :)

If you think a lot of people are pretty decent functional programmers in Excel spreadsheets ... I wonder what you're definition of "a lot" is, I don't think that's really true.

Given the state of pre-college education, I sort of feel like we're just saying "math is hard, let's see if we can at least teach these kids dynamic programming languages so they can at least make a simple blog engine instead." It's like we're going to throw more stuff into a system that needs to be reworked, anyway. The other side of it is like ... it's not as if kids are not learning to program as it is. That's what is strange to me; most good/great programmers I know started as kids with various socio-economic backgrounds.


This sounds as ridiculous as making the argument that everyone should not learn to read.

Some people may feel like learning to read will make them more money, so these people shouldn't learn to read, they will be wasting their time!

Some people may want to learn to read because they remember those awesome bedtime stories, and would like to read them to themselves, these people are wasting their time too because they just want to learn to read to escape reality!

And so on...

Just because someone has one silly motivation to learn to read, doesn't mean it will be a waste of time acquiring the skill, because it has many applications beyond the original motivation.

Programming is the same thing, and since so many things rely on code, it may be just as important in the future as knowing how to read.

At the very least, learning to code is empowering, and its hard to imagine someone suffering negative consequences from learning this skill.


I won't become a plumber, but I will learn the basics of switching out the flush valve when my current one is ever so slightly leaking gallons and gallons of water. Anything bigger and I'll call a plumber. I also won't become an electrician, but I know how to shut the breakers off so I can replace a light fixture on my own as well. There is a benefit in having some knowledge not only because it can help you in your day to day lives, but also you get a greater knowledge of what it would take for you to need to have an expert involved.

I take issue with the list of reasons when someone should probably look else where; for the most part I think that the deterrent of the results from attempting any of those will weed people out naturally - perhaps except for the one looking for a quick buck. The one I have the biggest problem with is: Coding because you played a computer game once and want to make the next Assassin’s Creed in a few days of work

My niece wanted to learn how to make a game - she was 9. She thinks math, and reading are "sciencey" (apparently the next generations term for nerdy). I got her set up with a simple click and drag game builder that offers adding logic in a kid friendly way. She started on it, got frustrated, asked me for help and then continued. She still works on her game almost a year and a half later. It's not her primary passion, and she won't probably won't become a programmer - but it's a great teaching aide, and the knowledge of what it takes to build something makes her appreciate the big name games she plays on her various consoles.

I believe learning to code can open more peoples eyes to the possibilities out there. Just because classes are available, or perhaps even mandatory in school, doesn't mean that everyone taking those classes will become engineers by trade.


I think there's a clear argument for computer literacy. That's a given. But programming, I think that is a very separate issue. The code fever movement is just a bit out there. It's one thing to say it's good to learn to code. It's another thing to say "everyone needs to code" or "we should make a curriculum about programming because we use software."


+1 - I think you have gotten the gist of my article. Believe me when I say that I really do want to see more programmers out there cranking out great software. I don't want to see a bunch of people with enough coding knowledge to build a program, throw it into production without having any knowledge of why the program works. An extreme example would be teaching everyone how to use guns because the future is going to be full of gun violence. Leave guns to those who are trained to carry and use them appropriately.


Not everyone should be a software developer by trade.

However, learning to code, even a little bit, can make everyone just a bit more effective. Even if that coding is in Excel and VBA. Especially if that coding is in Excel and VBA.


Word! I hear about so many people that double their productivity once they can script with excel.

My weapon of choice is http://www.python-excel.org/


What rubbish. Learning maths at school doesn't make everyone go on to become mathematicians... it does however give people the tools to advance their knowledge and productivity in other areas and give a more rounded education.

Hell, In my engineering degree we learn C/C++ and I have coursemates who still can't craft a simple program. You can lead a horse to water and all that.

We should still give people the grounding and chance to learn in the same way we do for maths/biology/art/whatever and we'll discover a lot of hidden talent. It is not as if this will suddenly make Software Engineers ten a penny.


I've always thought the main reason to "learn to code" is not immediately practical, but rather the same as learning math or literature: it introduces a new sort of thinking and expands your mind. Programming is essentially an accessible form of logic, something missing from most people's educations (including their math classes!).

Learning the mindset and the perspective is the most important thing. The practical benefits are just a bonus. They do not have to be particularly extensive.


The OP is confusing 'learning' with 'making'.

Have a good read of this linguistic relativity summary on Wikipedia (http://en.wikipedia.org/wiki/Linguistic_relativity).

The short version is: The concepts you have affect the way you think, and that affects the way you behave.

We're not trying to get everyone to build software. That's a stupid idea. Most people don't need to; sure, it's cool that you could do a macro or something if you wanted to, but it's probably irrelevant to most people. Even with modern high-level frameworks, it's a titanic effort to do anything practical with programming.

...but the point is, logical flow, breaking down ideas into units, inter-changable implementations of anything that matching a common interface, understanding how a 'source' document can be converted into an 'executable' object that makes computers do things, creating a virtual 'model' of a real situation and simulating it.... These are powerful ideas, that can't simply be grasped by telling someone about them abstractly. You have to learn the symbols and incorporate them into your own mental model.

More than that, they're tangible ideas that extend far beyond the bounds of computers and into other domains, helping people organize and breakdown problems.

The point is, you should learn to code.

...maybe you'll never actually write a real program that you'll use to do things, but that doesn't matter. By learning how to do it, you're gaining a mental richness.

Failure to appreciate that, from an educator appalls me.


This line stuck out to me: "Coding because you played a computer game once and want to make the next Assassin’s Creed in a few days of work"

When I was 13, I decided that I wanted to stop playing games and try to make my own. I was naive and thought that I could build one like WoW single handedly and I soon realized that I couldn't. However I did then come across private servers for games like World of Warcraft. From that I started to learn how to run them, I started to learn about SQL to manage the DB, then moved onto to learning LUA in order to script for my server. Even going onto looking into C++. Even then moving onto learning about web development and web servers in order to run the site for my server. That's what sparked my curiosity in coding and development at a young age.

That's why I disagree with this statement. People will learn that they can't build a game just like that, but they make start to take smaller steps and learn themselves. Don't discourage people from trying. They actually have a good mindset where they want to try build things themselves.


Let me put it this way: I'm all for one person who's interested to learn coding. Sure, if you wish, even let all this public campaigning and incentives be there. I'm fine with it. I will help this hypothetical guy personally if he comes my way. Nothing wrong here.

But... You (you, with the coding = literacy idea) are seriously overestimating the masses. I'm not sure why, might be due to some bubble effect. I don't live in SV or anything that resembles it. And my view is that even if you decide to go with the coding = literacy analogy, you will run into trouble because most people are not even literate beyond the absolute basics they can get away with. I'm speaking about professionals, and even a certain "majority" of college graduates. I'm speaking about a randomly sampled manager from a medium sized enterprise. Ask this guy to write a single page essay about something he knows about. I'm talking about writing, the kind of literacy we're talking about in the coding = literacy analogy. If you are really in a bubble, you might be surprised that only a minority of people living in the first world can write coherently beyond the length of a twitter update or an SMS. So, I would suggest to find another analogy for your public campaigning if you mean learning coding as in learning to code beyond hello world or fizzbuzz.

Another problem: where are those magical people that want to increase productivity? Most professionals I know don't even work most of the time! And they want to get away with the absolute minimum that can still achieve the maximum possible return. This is basic human behaviour. I don't endorse it, and I don't say this is everyone's standart behaviour, so no need to take offense, but I don't think anyone would argue against that what I posit here holds for the majority. Now, you want these people to learn coding to increase their productivity? Good luck. I'm sincerely all for it, and I will even help in ways that I can, excuse my cynicism.


wat.

That's like saying no one should learn to draw because they might draw better than a "real" artist. Or no one should learn woodworking because they saw a nice table once but they'll never fully understand it and they'll build shitty things. I don't get the point of this article at all.

Coding is a craft! A really powerful, accessible, incredibly-sharable craft.


P.S. I'm trying to figure out what learning-to-code resources adults who don't yet code would be in to, or where you'd tell your non-programmer friends to start if they expressed an interest.

Fill out this survey! http://www.surveymonkey.com/s/RCP98L5 Or write it out in the comments!


The most important thing to teaching anyone to program, but especially someone who already has a career and isn't looking to switch, is to make it relevant. Find out what they do for living and what they do all day at work. Find out what software they have to use and try to find a way to show them how they can use a programming to make some task they are currently doing easier.


Does learning how to replace the ball float valve on your toilet mean you're going to be a plumber? Hardly. Is your life improved if you learn how to do it yourself? Undoubtedly.

This article sounds like it was written by someone who's used to working amongst groups of mediocre to poor developers, and thinks that educating people will equate to legions of more mediocre developers.

Computers and code are a part of our lives now, and people should be educated in the basics. Just like we have biology, physics, chemistry, and shop class, a basic code class should be required for all young people.


As someone for whom programming does not come naturally and is trying really, really hard to get it, I disagree with the article.

I see coding in the 21st century how some people must have seen knowing how to read in the 18th. I wonder if there was someone saying, "Why does everyone need to know how to read? We won't all be writers and authors?"

I love the business side of things, and I don't think I'll ever be the technical co-founder, but it certainly doesn't hurt to be able to speak the same language and understand restrictions and limitations when you're trying to build a product.


So, all the comments here seem to be disagreeing with the article. Now, I certainly believe that business managers could use a much more thorough understanding of IT and development, with concepts of technical debt and the like, although I'm not so sure that learning to actually code in practice would help in that.

But trying to compare coding with literacy or basic plumbing is ridiculous. Everyone's toilets break and can usually be fixed fairly easily, and everyone derives direct benefit from knowing how to read.

But I can't possibly imagine what benefit my mother, or sister, or cousin, would derive from knowing how to code. They don't want to do it for a living. They don't want to run web sites. Their aren't any programs they need written, that don't exist, that a single person could possibly create, that could even be remotely worth their time to learn how to write, and then write, in comparison with the other things they could be doing.

It would be about as useful to them as a law degree, or knowledge of sewage treatment engineering. Computer coding is a tremendously useful and valuable, but also tremendously esoteric skill.

And I just don't see how computer coding can somehow open your eyes to understanding technology in a way that will deepen your life somehow. If there are important lessons that people should be aware of (like the fragility of code, the dangers of hacking and cyberwarfare, etc.), those are pretty easy to teach without teaching coding itself.


The linked article promotes one of the more common and misleading myths abut computer programming -- that it lies in a domain separate from normal behavior. That it is qualitatively different than ordinary computer use.

But in reality, people all lie on a spectrum between pathological innumeracy on one extreme, and extreme programming skill on the other. Between the extremes, we have:

* People who can accurately add a column of figures.

* People who can operate a calculator.

* People who can efficiently use a spreadsheet application.

* People who can write an efficient spreadsheet "program" by filling cells with the right functions to solve various practical problems of increasing complexity.

* People who can write Word or Excel (or LibreOffice) macros to solve certain kinds of problems.

* People willing to write small programs in easily accessible application languages like Visual Basic and similar languages integrated into end-user applications.

* People who write computer programs for their own use.

* People who write computer programs for others to use.

The above list isn't exhaustive -- it's only means to dispel the idea that there are "programmers" and mortals, located in separate categories. This is nonsense. The faulty thinking behind this myth will become more obvious as we become more accustomed to the presence of computers in our lives, and as computers, and computer languages, mature.


Let's start with everyone learning some math, first. Particularly probability & statistics.


I am a big fan of the "Learn to Code" movement, and I agree that Statistics should be even HIGHER priority than coding - data-based reasoning & communication are almost an absolute necessity for <b>any</b> field.

Also the job prospects are probably just as strong for data analytics folks, even if the median salaries don't match software folk


Learn math through coding. See an immediate practical use for all those trig functions while coding your fun game.

¿Porque no los dos?


But we're being a little silly here right. How about everyone learning basic algebera before we get to trig for your fun game. Believe, coding a game sounds fun to us programmers, it might sound fun in theory to others, but it is not fun in reality to others.


Agreed. It is very weird how english illiteracy is not tolerated where as mathematical illiteracy is the norm.


The title is not the same as "Why Not Everyone Should Learn To Code". I strongly disagree with the title.

As for the article I don't think that the reasons cited are particularly strong.

Buggy code is not a reason not to code. Though people who often write buggy code should know their limitations.

Programming is not as unlikely to occur as rocket science or lawyering. People take physics and government as classes and in the same manner I don't see why programming should not be an equally basic subject.

The easy-programming reasons are not things that disqualify you from being a programmer. All programmers would like to do those things. It is merely the actual programmers that have gone ahead and learned things the hard way.

I don't think programming classes would create a huge influx of programmers vying for jobs as depicted any more than math classes have created a surplus of mathematicians or biology classes have left us drowning in biologists.


If this was in response to the code.com video, I think this author missed the message of it. Code.com said that people should learn to code because it makes people think more analytically. Just like why people take math classes. Do I need to know calculus in everyday life? Probably not, but it changes how you think and makes you a problem solver, just like learning how to program. Also, if people learned programming than they wouldn't be typing into magic they wouldn't understand, maybe they start to code because they like video games and discover other uses for programming? How will people become passionate about it if they never try it out? This artical made my angry and could apply to and subject.


I agree with the article. It articulated some thoughts that I've been having.

There are bunch of comments that essentially say 'even a little code will make you better'. It's that claim that I would disagree with and why I don't think everyone should learn to code.

My belief is you actually need to achieve a fair degree of proficiency to be able to produce useful stuff with a computer. So to the extent people are learning to code but aren't going to reach the level a proficiency that's truly useful, I'm not sure its an optimal use of time.

EDIT: I would add that I do think CS should be taught starting in KG. That way everyone would be reaching a level of proficiency that's useful.


Whilst I agree that it would be silly to say that everyone should be a software engineer, an understanding of how basic programming works would be a benefit to many people in many varying fields.

I became interested in programming through scripting Adobe InDesign. In this type of area, it's really amazing what a little bit of programming knowledge can achieve. Our technical books now contain far fewer inaccuracies because they are tested by the computer, and index-compilation tasks that used to take days by hand are done on command.

Programming is cool, and I like that people talk about demystifying it a bit.


Everyone should try to learn to code (and write). Not everyone should become a programmer (or writer). There's a big difference, and I don't think anyone ever suggests the latter.


Everybody should learn to code, in the same way everybody should learn physics. It's basic cultural and scientific knowledge.

But that doesn't mean everybody should be a Mechanical Engineer.


I support the 'Learn to Code' trend, insofar that programming has the ability to empower people. e.g. Being able to automate a tedious boring or building your own blog is an amazing feeling that I do believe today's youth/generation ought to experience.

Overall, I think that the minority of programmers who are afraid of the wave of poor-programmers seeping into the field shouldn't hinder the coding movement.


I like the trend too, particularly in the sense that everyone should learn about programming in the same way that everyone should learn math and how to read/write. Not everyone goes on to become an author and I won't expect everyone to go on to be professional programmers. I think the push back against this trend is due to the uncertainty surrounding how a movement like this will change the industry. Like you said it will empower people and I think one of the ways this can change things, in a good way, is by allowing services to be centered more around APIs so that everyone can build and customize tools the exact way they like.

Take for example todo list software, there will always be many offerings because everyone has a certain way they like to go about it. If you can program then you can customize the experience for your particular case while the data (the key resource being shared in the case of teams) remains the same. It's also very similar to putting together your own macros in many programs... just taken a bit further.


I echoed a lot of the counterpoints being brought up here in my TEDx talk last year, "You should learn to program": http://tedxtalks.ted.com/video/You-Should-Learn-to-Program-C...


Code.org aims to reach students and kids which have no clue about programming. Does it really matter what motivates you? If you love it you love it. If you hate it you hate it. And sometimes you change your mind.


There should be a specialization: some people are specialized in coding, others - in something else. A group of specialists together is better than a group of those who can do several things just not too bad.


have you ever worked on a real project?

In some places specialists are quite nice, but in most situations, there is nothing worse than a person who says "oh, I won't touch that, I only deal with X".


well.. I've worked in Exxon Mobil for a while, now own a successful business and also CEO in a startup. Your point of view is acceptable for some small companies and startups, but if the company goes bigger, everyone just can't do everything, it's a chaos and loss of concentration.


To answer the article, learning what will not be our everyday job is called "curiosity, knowledge and culture" If we keep going it will be a skill.


Ugh, I know it's nitpicking but the correct phrasing is: "Why Not Everyone Should Learn To Code". It's not that difficult, is it?


What should everyone do instead? And who will then write code if no one learns?


I suppose they could learn about strawmen and logical arguments. :) Actually, that would probably make a lot of things better than programming!


> What should everyone do instead?

New season of American Idol (or is it X factor now?).


%s/code/write/g


Precisely.


Fucking THANK YOU.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: