It is clearly not a foreign language, but it might honestly be a better substitute for most students' time. In the US, a foreign language can be a great thing to learn, but with our failing math and science teachings, perhaps shifting towards CS instead might be a good idea for helping many high school kids prepare for a STEM dominated job market.
From the article:
"It stems from a widely held but mistaken belief that science and technology education should take precedence over subjects like English, history and foreign languages.
As a professor of languages and literatures, I am naturally skeptical of such a position"
Of course a professor would refer to this as a mistaken belief, but what evidence is there for it? CS has a much better chance of helping one find gainful employment and a future with many paths over high school history, english, and foreign languages.
I'm just exploring an idea here but I wonder if the point is that practicing language skills (writing, reading, presenting) are as important as practicing technical skills (computer science, chemistry, math). I might argue that in the business world, we call those language skills soft skills and that they are VERY important in the success of software developers. A great developer who can't communicate or express their ideas thoughtfully struggles more than a less technically inclined developer who communicates more effectively.
One of my favorite interactions to see is when my developers have a thoughtful conversation on a pull request and come up with a creative solution together using a combination of their language and technical skills. Maybe we need people to do both?
Unlike many other fields, I would wager that the vast bulk of IT staff were mostly self-taught and many have a lifetime of experience in their field. For those people, school in fact got in the way of their education and career track as it was simply less time they could spend self-educating.
Until college, schools generally do a very poor job at teaching STEM.
It's fashionable to dismiss the humanities today, but we're not talking about Latin here. Speaking Spanish or Mandarin or Hindi is tremendously practical and opens up a wider range of opportunity than learning to code. CS is great, but it's not for everyone, even those who do pursue CS can benefit from being able to communicate with more people.
I would argue with the silent conceit that CS/STEM funding must come from humanities funding.
The problem is a lack of funding for useful education. This has led to a hollowing out of useful humanities classes and STEM classes no longer up-to-date with current needs.
Aside, I hope we reinvest in humanities instead of the toothless versions available now. Introducing civics, philosophy, and logic classes back into the curriculum is hugely necessary.
No, not any more than math or statistics are. Replacing a foreign language with a programming course is like replacing a music class with a math course; you may think it's a good idea, but it's not because it's replacing the same type of thing.
But how do we get law makers (or, more importantly, their constituents) to understand this? There's a huge push towards vocational education and parents thinks that "coding" is something their 10 year old can learn then apply to make buckets of money. Plus, you know, it's called a programming "language."
If I personally had to chose between a foreign language course, or programming one as a learn-but-never-really-apply course for my child, I'd push them towards the foreign language.
A music theory class can involve quite a bit of math. Often music theory can be taught as part of a larger music study.
Just as there is room for music theory in a well-balanced music education, perhaps there is room for programming language study in a well-balanced linguistics education. That said, the goals of foreign language classes are rarely (strictly) about the arts and sciences linguistics, but more often targeted more directly towards the arts and sciences of culture, sociology, sometimes anthropology. (Programming languages are somewhat deficient in teaching useful life lessons in these other studies.)
My experience with written/spoken languages vs programming languages has been vastly different.
In my early 20s I picked up enough Spanish working in a restaurant to have conversations about simple topics/small talk, including native speakers at family dinners. Not much effort.
In my late 20s using Anki (SRS) I learned enough Russian to mostly understand radio broadcasts and television, but I never practiced speaking.
In my mid-to-late 30s I started learning Korean also using Anki, and it has been a grinding and slow process. After many months of on again/off again studying, I can pick out some words and use context to maybe understand what is being spoken.
Obviously the curve has gotten a bit steeper with each language being further away from English, but definitely a salient reminder about the ability to learn new languages with age.
Programming languages on the other hand have been a much different experience, not nearly as difficult to pick up. I haven't considered exactly why it's so different until now.
> Programming languages on the other hand have been a much different experience, not nearly as difficult to pick up. I haven't considered exactly why it's so different until now.
Well, general purpose, procedural, imperative languages -- the first programming languages we typically learn -- are all essentially the same. In many ways, they're all re-imaginings of Fortran, COBOL, Pascal, ALGOL, BASIC and C. They're really different dialects that express ideas in basically the same ways. All languages that derive from this family work in essentially the same ways. Sure, they have different features, syntax, abstractions, paradigms, etc., but Python, Go, Rust, C#, Java and JavaScript are all essentially the same way of thinking and express things in nearly the same ways.
When you start to work with languages that increasingly deviate from that common general purpose, procedural, imperative paradigm, you start to see people struggle. That's when you're actually learning a different language. Established programmers have a notoriously difficult time picking up declared languages like SQL and XSLT, for example, and domain-specific languages like LaTeX can give others difficulty, while functional languages like Lisp seem to be either something you love or hate.
It shouldn't be a surprise why programming languages are easier to learn. The grammer is highly regular and the vocabulary is absolutely tiny. Even complex computer languages are toys compared to any spoken language. Plus with computer languages you have a machine that can tell you if you're doing it right at your beck and call all day long. No need to bother a real life person to practice.
The language syntax is often pretty small for most programming languages, but the vocabulary (libraries) are often enormous.
Most professional programmers program as if they were speaking with a dictionary and thesaurus at hand and stopped in the middle of every sentence to look up a work or usage.
It's funny. In one of my first just-out-of-college jobs I worked at a company where "the IT guys" were definitely not at the forefront of the company. However research staff were awarded bonuses or pay differentials if they knew a foreign language even a little bit.
I argued, somewhat successfully, that the time and effort it takes to become "native" at a programming language was comparable to a human language...and even if it was say 30% as hard, everybody in the department knew 4 or 5 different languages pretty well and thus should be payed as if they had put the time into learning Spanish or French or whatnot.
The point that made it really sync in was when we had a series of tasks show up on a contract that required people with programming ability and the research staff wasn't able to "pick it up in a few months" despite huge training efforts and the IT staff was pressed into service to perform on the contract. Some of the research work was in French and most of us knew enough about Romance languages that we could usually produce a reasonable gist of the document before going to the researchers for a proper translation. We also often just used babelfish to try to figure out what was being said.
They ended up creating a technical and nontechnical staff tracks and migrated a number of the IT staff over into "Technical Researcher" roles. The difference was foreign language bonuses applied to the nontechnical staff and programming language proficiency resulted in a salary bump.
No more than a jelly fish is a fish. Code is a mixture of logic, math, statistics and abstracted electronics diagrams.
The typical programing language is a natural language only to the degree those others are. Which is to say it's not. At least in any normal definition of the term.
My understanding is that the younger you are the easier it is to pick up a foreign language. Whereas that doesn't appear to be the case for computer languages. Learning either creates opportunities for life changing opportunities for the better, but I think it would be a mistake for people to forego learning a foreign language at that age. If they want to learn programming languages as well they will, but I know lots of people that regret not learning a 2nd language earlier in life.
> My understanding is that the younger you are the easier it is to pick up a foreign language.
The latest research I've seen indicates that this is false. When you look at vocabulary in "words learned per hour of study", adults actually do much better than children. (I'm sure I've seen a study of this involving the U.S. State Department or some such, but I can't find it right now.) This isn't surprising to me: adults already know noun/verb/adjective/adverb, how [a] grammar works, a big pile of cognates/loanwords, etc.
The reason children seem to learn quicker is because they're exposed to the language every hour of the day. They have no choice. If they want to do anything at all, it requires using the target language. They make up for lower efficiency by brute force.
Adults tend to do poorly at learning foreign languages because they only spend an hour or two a day with it. Learning a language feels like a lot of work, and adults usually fail because they have the resources to be able to avoid interacting with it. This is also why "full immersion" (living in a place where they speak that language) is fast and effective even for adults.
(Think you're going overboard by spending 3 hours a day studying French? That's less than 1/5 of your waking hours. Any child in Paris will learn French 5 times faster, not because they're younger but because they're putting in an extra 13+ hours a day exposed to French.)
> I know lots of people that regret not learning a 2nd language earlier in life.
Sure, and I know people who regret not learning to dance, getting in shape, playing a musical instrument, etc. I also know people who started these things as adults and are just as accomplished as those who started young. And I know many people who started these things when they were young, and then gave them up -- and have basically lost all the effort they put into it. (After long enough, you can even forget your first language.) This fascination with youth needs to end.
> My understanding is that the younger you are the easier it is to pick up a foreign language.
IIRC, while that's long been a popular belief, it's not all that clear that it's true; a major effect, if not the whole effect, comes from it being easier to spend more time on it when younger. This portion of the effect is equally true of computer languages.
I learned my first programming language, Basic, when I was 8 years old, and reading code feels like a natural language to me. I think the complication is that programming involves both a language and a logic system. While language may be created naturally before puberty, having the requisite logical reasoning requires something extra. I had very early access to formal logic training, and this combined with self-motivated interest helped me overcome that barrier. I think it would be a deal breaker for others. It's one thing to be able to read a language, quite another to understand what it says.
Another factor is that the kind of language children are very good at learning is the spoken kind. Human capacity for reading and writing is not necessarily natural. You don't find many children learning Latin on their own without some other factor lowering the barrier for entry, either. Having a parent with whom to speak Latin would be that kind of factor.
The jury's still out on the Critical Period Hypothesis the last I checked. But in any case, you're right that there is a big difference between acquiring natural languages and learning a programming language. Language acquisition is a special kind of learning, an innate capacity we have for natural languages that mostly takes place without conscious effort. We certainly don't start learning our mother's programming languages while in the womb.
>I know lots of people that regret not learning a 2nd language earlier in life.
I was watching an interview on youtube of a family sailing around the world in a sailboat and one of the parents said college is good, but learning a 2nd languages is really equivalent to getting a college degree.
I don't think anyone seriously thinks that learning a computer language is in any way equivalent to learning a foreign language. But it is useful to pretend that it does, so that we don't have to ask the real question:
Should everyone be required to study a foreign language in school?
My answer is no. I took a year of Latin in high school and hated it, and have never thought about it since. It was a huge waste of time. And if classifying computer languages as foreign languages can help some students opt-out, I'm all for it.
Computer languages are called languages for a reason. They have syntax, grammar, vocabulary, and are used for communication. People who don't speak english for example but who read python can often read code you wrote and understand it. Math is a similar thing and sometimes called a universal language.
These are different sorts of languages from day to day spoken and written languages for general communication, but they can be reasonably put in the same larger umbrella of language.
Whether they should be applied to a graduation second language requirement is certainly debatable. Some school systems may reasonably say yes, others no.
Of perhaps no doubt though is that at the present time, complete fluency/competency in a computer language is far more valuable to an individual than mastery of any language other than english.
Given this, perhaps schools should instead consider dropping the foreign language requirements entirely and replacing them with requirements for fluency in at least one computer language.
> Computer languages are called languages for a reason. They have syntax, grammar, vocabulary, and are used for communication.
Perhaps, but they are vastly simpler than even the most basic human language; and far, far more limited in what they can communicate without resorting to another language.
> People who don't speak english for example but who read python can often read code you wrote and understand it.
That's extremely unlikely to be true - they could perhaps say if it has certain properties, but it is almost impossible to understand what a piece of code is meant to do without understanding any of the identifiers, unless it's doing something very abstract (e.g. you can understand what "def id(x): return x" does if you know some Python and nothing else; but you can't probably understand what "def cumÎlStrigă(om): return om.poreclă" is meant to do if you understand Python but not Romanian).
> People who don't speak english for example but who read python can often read code you wrote and understand it. Math is a similar thing and sometimes called a universal language.
I doubt that's true. It would be like reading re-prettified minified Javascript: they wouldn't understand the meaning of the identifiers or comments. That doesn't strictly make it impossible to understand the code, but it's much, much harder.
It's the same for math, frankly: without explanations of what the things in equations are, or why the author is doing what they are doing, it's somewhere between very hard to understand (for the most formal stuff, like the Principia), and hopeless for most papers.
I don't agree with all of your claims anyways, but all of this seems to miss the key fact point the "foreign language" requirement inherently implies a language to communicate with other humans. Hence why Sign language can meet the foreign language requirement in some schools but not C++.
> Of perhaps no doubt though is that at the present time, complete fluency/competency in a computer language is far more valuable to an individual than mastery of any language other than english.
I think one of the main reasons foreign languages are required is because it's an attempt to connect people with the outside world. There are positive implications on diplomacy and politics when you have a generation of young people grow up being exposed to other cultures and (trying) to learn other languages. This is more important for the world than teaching every child how to become a slave to the computer.
> Math is a similar thing and sometimes called a universal language.
But nobody is going seriously suggest put math classes in the languages department. How much different is learning Python from learning calculus? Both use specialized syntax, grammar, and vocabulary to describe ideas. If you categorize Python as a "foreign language" then calculus (and algebra, trig, etc) probably should be as well.
My suggestion: use a programming language (any one you like) to explain why people who live in places where English isn't widely spoken would be better off learning English and/or a programming language.
I think people like to say that programming languages aren't in the same vein as natural languages. But from my personal experience in both fields, I can't help but feel that they're clearly related.
Natural languages are harder to learn, less regular and more general than programming languages, but whenever I study either, they bring to my mind the same sort of efforts and intuitions. Programming languages definitely don't replace foreign languages lessons in high schools, and so on. But the popular dismissal of "they have nothing to do with natural languages" is probably wrong, I think.
My sample set is... fluent in French and English, studied/studying Spanish, Korean and Vietnamese, and similarly for imperative/functional/wtv paradigm PLs. There's clearly ressemblance in learning one or the other.
I remember in high school I tried to get them to count my Intro to Java class as a foreign language, to no avail.
In hindsight, I kind of agree with their decision. Obviously I love programming (hence why I'm always on HN), but I don't think about C/Haskell/Lisp/etc. in the same way that I think about English.
While I understand that there are semantics that are superficially similar, I feel programming is closer to mathematics than English, and I don't think anyone is suggesting that we count algebra as a foreign language.
It's true that taking a programming class isn't the same as taking a high school foreign language class, but it's also true that taking a high school foreign language class is unlikely to give you any meaningful proficiency in that language: https://www.econlib.org/archives/2012/08/the_marginal_pr.htm...
This Liberty Fund-supported libertarian op-ed is involuntarily a strong indictment of US high school education. In other countries, children learn foreign languages just fine in school.
Right now I am teaching an introductory chemistry course at a university somewhere in flyover country. The majority of the students does not know enough 8th grade math to calculate basic stoichiometric relations. Basic algebra is beyond their reach. Using libertarian logic, it follows that we should drop high school math altogether, because teaching it in school is a waste of time, the kids do not learn it.
In defense of this particular question-begging headline, the question itself is something the author wants us all to consider and answer. It's unlike question-begging headlines such as, "Can eating gummy bears twice a day cure cancer?"
Quite interesting that the reason I didn't like Scala was that it was like a natural language. There was interacting context that wasn't immediately visible at the use site. I wonder if linguists or Perl lovers like Scala more than others?
Having grown up with multiple "natural" languages, as well as programming "languages" since age 8 or so, I consider computer code one of my native languages. Of course, I'm only truly familiar with a few dialects for daily use, but there's an underlying way of thinking (concepts, patterns) that applies to all programming languages.
The more "natural" and programming languages I'm immersed in and use in daily life, the more I see them as dialects of a single "language" - an unwritten, unspoken language of the mind, which gives birth to the various specific implementations of syntax, grammar, words.
Film, dance, painting, sculpture, music, mathematics, geometry.. Even JavaScript. These are also dialects of the language beyond languages. They're all different ways to "speak" and "think".
I agree with the article that learning a programming language or two should not fulfill a foreign language requirement. If anything they should be included in a "native languages requirement", in addition to a couple of natural languages.
I'm not sure that anyone would argue that programming languages are anywhere near human language.
Though the article is in response to allowing CS/programming classes to count towards foreign language credit in highschool, which is a potential way to get more kids involved with programming. Though given the efficacy of foreign language programs in highschool I'm not sure CS would do any better...
I have to agree... now, if they wanted to treat programming languages as a higher than basic algebra math class, or possibly a science credit, that I might agree with, but not in place of lower level math or science.
Computer languages are definitely languages, but the rules and constructs are much closer to math than they are spoken language.
Even then, for a well rounded "language" course on programming, it would have to account for at least 2-4 different languages, and enough understanding over the course of a year to contrast and compare. In any case, I doubt much practical use would be gained from such a course.
Again, it might be a better fit for a Math or Science credit and could definitely see a vocational high school centered around Programming coursework for the elective structure.
This takes me back to High School. My senior year (2002), the school decided to add a "computer programming" course (c++). Despite having a "computer science" department (a lab that taught pc repair skills), the course ended up under the Languages department, taught by the Latin teacher.
To be fair, the reasoning for this was that the Latin teacher was the only faculty member to hold a computer science degree (he also held number of other seemingly unrelated degrees, iirc).
To make the counter argument, it is rather unfortunate that the way foreign languages are normally taught in U.S. schools (grammar first to make it painful) leads to the cliche of “I took 4 years of French in high school and I can only speak very little.” On this line, make computer languages a foreign language, as schools do a poor job overall teaching a foreign language so that it can be truly acquired. The advantage of computer languages as a foreign language is that picking it up for the learner does not require the learner to deal with frustration and embarrassment in the context of interacting with other people, like they would learning to communicate in a foreign language.
> Within this subset of multilinguals who are well-versed in a non-English language, 89% acquired these skills in the childhood home, compared with 7% citing school as their main setting for language acquisition.
> Is Computer Code a Foreign Language? No. And high schools shouldn’t treat it that way.
I'd go a step further and say that coding is not a subject and high schools shouldn't teach it, in the same sense that calculators aren't a subject they teach. There are so many opportunities for coding to integrate and enhance with other subjects that are being ignored.
Half of my high school physics classes and 90% of my maths ones were plotting graphs, repeating the same exercises over and over with the same memorized equations. That's pointless busy work we could eliminate with computers and focus on more fundamental things.
[+] [-] sorenn111|7 years ago|reply
From the article: "It stems from a widely held but mistaken belief that science and technology education should take precedence over subjects like English, history and foreign languages.
As a professor of languages and literatures, I am naturally skeptical of such a position"
Of course a professor would refer to this as a mistaken belief, but what evidence is there for it? CS has a much better chance of helping one find gainful employment and a future with many paths over high school history, english, and foreign languages.
[+] [-] citizenkeen|7 years ago|reply
[+] [-] givehimagun|7 years ago|reply
One of my favorite interactions to see is when my developers have a thoughtful conversation on a pull request and come up with a creative solution together using a combination of their language and technical skills. Maybe we need people to do both?
[+] [-] bane|7 years ago|reply
Until college, schools generally do a very poor job at teaching STEM.
[+] [-] AnimalMuppet|7 years ago|reply
[+] [-] cwp|7 years ago|reply
[+] [-] octokatt|7 years ago|reply
The problem is a lack of funding for useful education. This has led to a hollowing out of useful humanities classes and STEM classes no longer up-to-date with current needs.
Aside, I hope we reinvest in humanities instead of the toothless versions available now. Introducing civics, philosophy, and logic classes back into the curriculum is hugely necessary.
[+] [-] walshemj|7 years ago|reply
I am shocked shocked to find C P Snows two nation divide in effect at the NYT
[+] [-] sushisushisushi|7 years ago|reply
[deleted]
[+] [-] xg15|7 years ago|reply
[+] [-] Upvoter33|7 years ago|reply
[+] [-] mywittyname|7 years ago|reply
If I personally had to chose between a foreign language course, or programming one as a learn-but-never-really-apply course for my child, I'd push them towards the foreign language.
[+] [-] WorldMaker|7 years ago|reply
Just as there is room for music theory in a well-balanced music education, perhaps there is room for programming language study in a well-balanced linguistics education. That said, the goals of foreign language classes are rarely (strictly) about the arts and sciences linguistics, but more often targeted more directly towards the arts and sciences of culture, sociology, sometimes anthropology. (Programming languages are somewhat deficient in teaching useful life lessons in these other studies.)
[+] [-] edflsafoiewq|7 years ago|reply
[+] [-] influxed|7 years ago|reply
In my early 20s I picked up enough Spanish working in a restaurant to have conversations about simple topics/small talk, including native speakers at family dinners. Not much effort.
In my late 20s using Anki (SRS) I learned enough Russian to mostly understand radio broadcasts and television, but I never practiced speaking.
In my mid-to-late 30s I started learning Korean also using Anki, and it has been a grinding and slow process. After many months of on again/off again studying, I can pick out some words and use context to maybe understand what is being spoken.
Obviously the curve has gotten a bit steeper with each language being further away from English, but definitely a salient reminder about the ability to learn new languages with age.
Programming languages on the other hand have been a much different experience, not nearly as difficult to pick up. I haven't considered exactly why it's so different until now.
[+] [-] da_chicken|7 years ago|reply
Well, general purpose, procedural, imperative languages -- the first programming languages we typically learn -- are all essentially the same. In many ways, they're all re-imaginings of Fortran, COBOL, Pascal, ALGOL, BASIC and C. They're really different dialects that express ideas in basically the same ways. All languages that derive from this family work in essentially the same ways. Sure, they have different features, syntax, abstractions, paradigms, etc., but Python, Go, Rust, C#, Java and JavaScript are all essentially the same way of thinking and express things in nearly the same ways.
When you start to work with languages that increasingly deviate from that common general purpose, procedural, imperative paradigm, you start to see people struggle. That's when you're actually learning a different language. Established programmers have a notoriously difficult time picking up declared languages like SQL and XSLT, for example, and domain-specific languages like LaTeX can give others difficulty, while functional languages like Lisp seem to be either something you love or hate.
[+] [-] jandrese|7 years ago|reply
[+] [-] bane|7 years ago|reply
Most professional programmers program as if they were speaking with a dictionary and thesaurus at hand and stopped in the middle of every sentence to look up a work or usage.
[+] [-] bane|7 years ago|reply
I argued, somewhat successfully, that the time and effort it takes to become "native" at a programming language was comparable to a human language...and even if it was say 30% as hard, everybody in the department knew 4 or 5 different languages pretty well and thus should be payed as if they had put the time into learning Spanish or French or whatnot.
The point that made it really sync in was when we had a series of tasks show up on a contract that required people with programming ability and the research staff wasn't able to "pick it up in a few months" despite huge training efforts and the IT staff was pressed into service to perform on the contract. Some of the research work was in French and most of us knew enough about Romance languages that we could usually produce a reasonable gist of the document before going to the researchers for a proper translation. We also often just used babelfish to try to figure out what was being said.
They ended up creating a technical and nontechnical staff tracks and migrated a number of the IT staff over into "Technical Researcher" roles. The difference was foreign language bonuses applied to the nontechnical staff and programming language proficiency resulted in a salary bump.
[+] [-] TomMckenny|7 years ago|reply
The typical programing language is a natural language only to the degree those others are. Which is to say it's not. At least in any normal definition of the term.
[+] [-] semitext|7 years ago|reply
[+] [-] ken|7 years ago|reply
The latest research I've seen indicates that this is false. When you look at vocabulary in "words learned per hour of study", adults actually do much better than children. (I'm sure I've seen a study of this involving the U.S. State Department or some such, but I can't find it right now.) This isn't surprising to me: adults already know noun/verb/adjective/adverb, how [a] grammar works, a big pile of cognates/loanwords, etc.
The reason children seem to learn quicker is because they're exposed to the language every hour of the day. They have no choice. If they want to do anything at all, it requires using the target language. They make up for lower efficiency by brute force.
Adults tend to do poorly at learning foreign languages because they only spend an hour or two a day with it. Learning a language feels like a lot of work, and adults usually fail because they have the resources to be able to avoid interacting with it. This is also why "full immersion" (living in a place where they speak that language) is fast and effective even for adults.
(Think you're going overboard by spending 3 hours a day studying French? That's less than 1/5 of your waking hours. Any child in Paris will learn French 5 times faster, not because they're younger but because they're putting in an extra 13+ hours a day exposed to French.)
> I know lots of people that regret not learning a 2nd language earlier in life.
Sure, and I know people who regret not learning to dance, getting in shape, playing a musical instrument, etc. I also know people who started these things as adults and are just as accomplished as those who started young. And I know many people who started these things when they were young, and then gave them up -- and have basically lost all the effort they put into it. (After long enough, you can even forget your first language.) This fascination with youth needs to end.
[+] [-] dragonwriter|7 years ago|reply
IIRC, while that's long been a popular belief, it's not all that clear that it's true; a major effect, if not the whole effect, comes from it being easier to spend more time on it when younger. This portion of the effect is equally true of computer languages.
[+] [-] philipov|7 years ago|reply
Another factor is that the kind of language children are very good at learning is the spoken kind. Human capacity for reading and writing is not necessarily natural. You don't find many children learning Latin on their own without some other factor lowering the barrier for entry, either. Having a parent with whom to speak Latin would be that kind of factor.
[+] [-] clumpthump|7 years ago|reply
[+] [-] dba7dba|7 years ago|reply
I was watching an interview on youtube of a family sailing around the world in a sailboat and one of the parents said college is good, but learning a 2nd languages is really equivalent to getting a college degree.
And I completely agree.
[+] [-] kylec|7 years ago|reply
Should everyone be required to study a foreign language in school?
My answer is no. I took a year of Latin in high school and hated it, and have never thought about it since. It was a huge waste of time. And if classifying computer languages as foreign languages can help some students opt-out, I'm all for it.
[+] [-] droithomme|7 years ago|reply
These are different sorts of languages from day to day spoken and written languages for general communication, but they can be reasonably put in the same larger umbrella of language.
Whether they should be applied to a graduation second language requirement is certainly debatable. Some school systems may reasonably say yes, others no.
Of perhaps no doubt though is that at the present time, complete fluency/competency in a computer language is far more valuable to an individual than mastery of any language other than english.
Given this, perhaps schools should instead consider dropping the foreign language requirements entirely and replacing them with requirements for fluency in at least one computer language.
[+] [-] simiones|7 years ago|reply
Perhaps, but they are vastly simpler than even the most basic human language; and far, far more limited in what they can communicate without resorting to another language.
> People who don't speak english for example but who read python can often read code you wrote and understand it.
That's extremely unlikely to be true - they could perhaps say if it has certain properties, but it is almost impossible to understand what a piece of code is meant to do without understanding any of the identifiers, unless it's doing something very abstract (e.g. you can understand what "def id(x): return x" does if you know some Python and nothing else; but you can't probably understand what "def cumÎlStrigă(om): return om.poreclă" is meant to do if you understand Python but not Romanian).
[+] [-] supergarfield|7 years ago|reply
I doubt that's true. It would be like reading re-prettified minified Javascript: they wouldn't understand the meaning of the identifiers or comments. That doesn't strictly make it impossible to understand the code, but it's much, much harder.
It's the same for math, frankly: without explanations of what the things in equations are, or why the author is doing what they are doing, it's somewhere between very hard to understand (for the most formal stuff, like the Principia), and hopeless for most papers.
[+] [-] oarabbus_|7 years ago|reply
[+] [-] president|7 years ago|reply
I think one of the main reasons foreign languages are required is because it's an attempt to connect people with the outside world. There are positive implications on diplomacy and politics when you have a generation of young people grow up being exposed to other cultures and (trying) to learn other languages. This is more important for the world than teaching every child how to become a slave to the computer.
[+] [-] ng12|7 years ago|reply
But nobody is going seriously suggest put math classes in the languages department. How much different is learning Python from learning calculus? Both use specialized syntax, grammar, and vocabulary to describe ideas. If you categorize Python as a "foreign language" then calculus (and algebra, trig, etc) probably should be as well.
[+] [-] maw|7 years ago|reply
My suggestion: use a programming language (any one you like) to explain why people who live in places where English isn't widely spoken would be better off learning English and/or a programming language.
[+] [-] tracker1|7 years ago|reply
[+] [-] AYBABTME|7 years ago|reply
Natural languages are harder to learn, less regular and more general than programming languages, but whenever I study either, they bring to my mind the same sort of efforts and intuitions. Programming languages definitely don't replace foreign languages lessons in high schools, and so on. But the popular dismissal of "they have nothing to do with natural languages" is probably wrong, I think.
My sample set is... fluent in French and English, studied/studying Spanish, Korean and Vietnamese, and similarly for imperative/functional/wtv paradigm PLs. There's clearly ressemblance in learning one or the other.
[+] [-] tombert|7 years ago|reply
In hindsight, I kind of agree with their decision. Obviously I love programming (hence why I'm always on HN), but I don't think about C/Haskell/Lisp/etc. in the same way that I think about English.
While I understand that there are semantics that are superficially similar, I feel programming is closer to mathematics than English, and I don't think anyone is suggesting that we count algebra as a foreign language.
[+] [-] alexhutcheson|7 years ago|reply
[+] [-] HarryHirsch|7 years ago|reply
Right now I am teaching an introductory chemistry course at a university somewhere in flyover country. The majority of the students does not know enough 8th grade math to calculate basic stoichiometric relations. Basic algebra is beyond their reach. Using libertarian logic, it follows that we should drop high school math altogether, because teaching it in school is a waste of time, the kids do not learn it.
[+] [-] fixermark|7 years ago|reply
The author's answer is "no."
[+] [-] beering|7 years ago|reply
[+] [-] Terr_|7 years ago|reply
That "No" is smack dab at the extreme beginning, within the subtitle.
[+] [-] karmakaze|7 years ago|reply
[+] [-] lioeters|7 years ago|reply
Having grown up with multiple "natural" languages, as well as programming "languages" since age 8 or so, I consider computer code one of my native languages. Of course, I'm only truly familiar with a few dialects for daily use, but there's an underlying way of thinking (concepts, patterns) that applies to all programming languages.
The more "natural" and programming languages I'm immersed in and use in daily life, the more I see them as dialects of a single "language" - an unwritten, unspoken language of the mind, which gives birth to the various specific implementations of syntax, grammar, words.
Film, dance, painting, sculpture, music, mathematics, geometry.. Even JavaScript. These are also dialects of the language beyond languages. They're all different ways to "speak" and "think".
I agree with the article that learning a programming language or two should not fulfill a foreign language requirement. If anything they should be included in a "native languages requirement", in addition to a couple of natural languages.
[+] [-] mont|7 years ago|reply
Though the article is in response to allowing CS/programming classes to count towards foreign language credit in highschool, which is a potential way to get more kids involved with programming. Though given the efficacy of foreign language programs in highschool I'm not sure CS would do any better...
[+] [-] tracker1|7 years ago|reply
Computer languages are definitely languages, but the rules and constructs are much closer to math than they are spoken language.
Even then, for a well rounded "language" course on programming, it would have to account for at least 2-4 different languages, and enough understanding over the course of a year to contrast and compare. In any case, I doubt much practical use would be gained from such a course.
Again, it might be a better fit for a Math or Science credit and could definitely see a vocational high school centered around Programming coursework for the elective structure.
[+] [-] subway|7 years ago|reply
To be fair, the reasoning for this was that the Latin teacher was the only faculty member to hold a computer science degree (he also held number of other seemingly unrelated degrees, iirc).
[+] [-] wallflower|7 years ago|reply
> Within this subset of multilinguals who are well-versed in a non-English language, 89% acquired these skills in the childhood home, compared with 7% citing school as their main setting for language acquisition.
http://www.pewresearch.org/fact-tank/2015/07/13/learning-a-f...
[+] [-] all2|7 years ago|reply
[+] [-] flukus|7 years ago|reply
I'd go a step further and say that coding is not a subject and high schools shouldn't teach it, in the same sense that calculators aren't a subject they teach. There are so many opportunities for coding to integrate and enhance with other subjects that are being ignored.
Half of my high school physics classes and 90% of my maths ones were plotting graphs, repeating the same exercises over and over with the same memorized equations. That's pointless busy work we could eliminate with computers and focus on more fundamental things.