News for hackers. Stuff that matters.
Re:To the brain, reading computer code is not the same as re... by User23 on Tuesday December 15, 2020 @08:22PM (#25437860)
As someone who is fluently bilingual and speaks a third language and is also proficient or better in a half dozen programming languages along with having written code in many more, this is completely obvious to me. Learning a programming language is much closer to learning a complex board game than it is a natural language.
Re:To the brain, reading computer code is not the same as re... by vncecartersknee on Tuesday December 15, 2020 @10:42PM (#25438788)
I feel exactly the same, I've been learning a second language and it's nothing like learning programming, in fact arguably the opposite, I've found that obsessing over grammar is almost detrimental to making progress with a new language.

The confident students who aren't concerned with getting all the specifics of grammar exactly perfect are the ones that are making the most progress toward being conversational, they're able to express themselves and actually have something resembling a conversation, despite using the wrong prepositions here and there or conjugating verbs wrong sometimes. The more "academically" minded students who obsess over getting the grammar correct like a math equation are still struggling to form even basic sentences outside of solving homework problems on a piece of paper. I've noticed that I've been making much better progress now that I've been focusing on just trying to express myself even if I'm making mistakes.

Which is obviously the complete opposite of using a programming language.

Re:To the brain, reading computer code is not the same as re... by MrFantastic on Wednesday December 16, 2020 @06:21AM (#25441332)
3 years of HS spanish with a grammar nazi teacher. He's interupt mid-sentance to correct your verb tense.

His students were objectively less skilled than the other spanish teacher that focused on vocabulary and conversational skills.

Re:To the brain, reading computer code is not the same as re... by lordnacho on Wednesday December 16, 2020 @02:41AM (#25440054)
Weirdly I make the same observation as you about second languages and detail in grammar, but I came to the opposite conclusion. I thought natural language and computer language were pretty similar.

One issue in the study is what a reasonable comparison is. Our ancestors would have talked about "there is a lion over there" and such mundane things all the time, so we shouldn't be surprised if we're just "nexting" those kinds of things with a specialized circuit.

Obviously that doesn't exist for coding, but the question is whether there is natural language that can't be nexted. I'm thinking of James Joyce's Ulysees or Shakespeare type stuff. It's weird even for the native reader. Does that activate the math network?

Also, isn't that a better analogy for how you program machines? You're telling the computer what to do in a language that isn't assembler, and doesn't have the same machine model as your coding language, with a heavy dependence on shorthands established only in the context you created (by writing functions, classes, etc). I thought the reason why a lot of people find it hard to read code is because you're inherently doing something awkward, translation.

I've been learning a new language as well, with the wrinkle that it's quite closely related to one I already speak. Mandarin is lovely, it makes me wonder why there are languages where the verbs and nouns are changed. It also means you can jump into saying useful things pretty fast, you are just restricted by vocabulary. WRT coding, this is similar. Coding languages tend to have very few things you must know (except C++ lol) to get started, but with a lot of reading libs necessary to do anything in a given domain.

Re:To the brain, reading computer code is not the same as re... by tsimionescu on Wednesday December 16, 2020 @07:09AM (#25441637)
Ulysses (and even more so Finnegan's wake) is not written in a natural language. It is a constructed artificial language. Many of Shakespeare's works are also written in a constructed language because of their need for rhyme and rhythm, albeit closer to the natural language of his time. I've also noted that rhymed text, even if otherwise using natural syntax, is harder for me to follow as my brain tends to get lulled by the rhyme itself and stops paying attention to the content, it's just trying to predict the pattern.

Now that said, the idea of comparing programming languages with natural languages or even constructed languages seems very strange to me. Natural languages are tools for thought, expression and communication. Programming languages are tools for, well, programming. Even the relationship between the grammar of a PL and the grammar of a human language is distant (we often intuitively think of identifiers as similar to nouns and verbs in human languages, but in fact all identifiers are equivalent to proper nouns in human languages, and the actual equivalents of nouns and verbs are stuff like block openers, significant white space, function application, maybe the keywords).

It is a well-known fact already that humans can only naturally learn human languages, which have a specific kind of grammar. Even some clumsy attempts at standardizing human language end up introducing un-natural grammar that children can't pick up until later in school when it is drilled into them. It would have been truly surprising to find out that we can use our natural language capacity for something as alien as a PL.

Re:To the brain, reading computer code is not the same as re... by eru on Wednesday December 16, 2020 @04:45AM (#25440693)
Shakespear wrote in reasonably normal English. It's just that the language has evolved since.
Re:To the brain, reading computer code is not the same as re... by bryanrasmussen on Wednesday December 16, 2020 @02:17AM (#25439928)
>The confident students who aren't concerned with getting all the specifics of grammar exactly perfect are the ones that are making the most progress toward being conversational

One of my Danish teachers said that the move towards making people conversational is a fairly recent invention, and approximately a century ago (my memory is spotty on when the change happened) teaching was more geared towards making people literate in the new language.

Re:To the brain, reading computer code is not the same as re... by colmvp on Wednesday December 16, 2020 @12:22AM (#25439377)
Interesting. I feel like coding is not that dissimilar.

In the early phases of learning a new coding language, I learn how to write lines of code. Sometimes it compiles, most of the time it would cause errors.

At some point it works, but a more seasoned engineer could easily find places to refactor it in order to make it more extensible/flexible, easier to read, less brittle, and most importantly to this discussion on coding language, more idiomatic.

Now, you could say surely I could've seen these by reading the docs and learning about certain library features or patterns specific to the language. But in my experience, I tend to learn faster by first exercising my brain and trying it out on my own take before having someone (be it a mentor or a tutorial/book) correct me so that I have a bit more context about why an alternative approach is better.

Re:To the brain, reading computer code is not the same as re... by tsimionescu on Wednesday December 16, 2020 @07:16AM (#25441682)
The thing is, computer languages are extremely simple compared to human languages. Even the more arcane ones, like C++, probably have on the order of 1-200 'words' that you ahev to learn to 'speak' them fluently.

Of course, you also need to learn large amounts of library functions and their semantics, but that's more like learning who the people at court are and what their roles are than like the language. You could speak perfect French, but you still have to learn that you must call the Comptesse de Barry before calling the King if you don't want her to be upset. Even patterns are often more in this area of cultural/local context rather than the actual langauge - more like learning the difference between overly-descriptive prose and good prose is (which is why the knowledge about it also tends to translate better between different languages).

Re:To the brain, reading computer code is not the same as re... by godelski on Wednesday December 16, 2020 @12:48AM (#25439516)
I don't understand this. If your code has wrong syntax it doesn't compile. If wrong grammar you can get very wrong results. But in english you can say "I go store" and it's understandable (which btw, can be a direct translation from several languages)
Re:To the brain, reading computer code is not the same as re... by oarsinsync on Wednesday December 16, 2020 @01:45AM (#25439793)
> If your code has wrong syntax it doesn't compile. If wrong grammar you can get very wrong results.

In both cases, when you get it that wrong that your meaning doesn’t come across correctly, it’ll usually get pointed out to you, either by the compiler or the person you’re talking to, so you can go back and try again.

Eventually, you’ve potentially gotten it right when the compiler stops throwing errors or the person you’re speaking to understands. Unfortunately, in both cases you may still not end up with the desired outcome as your compiler is “stupid” and cannot understand intent, only what you’ve written. Similarly, but different, the human you’re speaking to may bore of your broken language eventually and just move on.

There’s no perfect system for everyone, but it never hurts to remember the saying: perfect is the enemy of good enough. It doesn’t matter if your language skills are perfect, just that they’re good enough to convey your meaning effectively for the environment you’re in.

Re:To the brain, reading computer code is not the same as re... by tremon on Wednesday December 16, 2020 @04:10AM (#25440467)
In my experience, when you're an adult, people are too polite/reserved/caring/uncaring to correct spoken language errors for you. They'll be much more likely to infer what you meant silently, and react as if you'd spoken the sentence perfectly. In that sense, people are much more like a web browser in how they process your language than a compiler.
Re:To the brain, reading computer code is not the same as re... by oarsinsync on Wednesday December 16, 2020 @11:34AM (#25444541)
Apologies, I realise the way I wrote this wasn’t clear enough:

> Eventually, you’ve potentially gotten it right when ... the person you’re speaking to understands

I can see that I wrote poorly here myself, and here you (and child) are correctly correcting me, while simultaneously arguing against that happening, which is kinda ironic!

What I failed to adequately express was that human languages are a lot more forgiving of errors, and as long as the message is understood, you’ve gotten it “right”

Re:To the brain, reading computer code is not the same as re... by foolmeonce on Wednesday December 16, 2020 @06:26AM (#25441372)
They aren't just polite, it's exhausting to play the pedantic compiler and generally degenerates or requires an agreement with an equivalent exchange.

Perhaps having an automatic compiler changes our perception much as an auto-tickling device doesn't work, but surely early levels of math and languages have similar learning paths.

Re:To the brain, reading computer code is not the same as re... by icefo on Wednesday December 16, 2020 @11:56AM (#25444850)
Which is fine, you can learn a lot by immersion when you hear other native speakers talk. I only ask a person to repeat when I don't understand or if it's unclear and I need to be sure about something. Not breaking the flow of conversation is much more important to me
Re:To the brain, reading computer code is not the same as re... by godelski on Wednesday December 16, 2020 @03:00PM (#25447743)
I disagree with this. How many people do you know that have been speaking English for years but still miss articles ('a', 'the')? It is still very easy to understand these people. We could say the same about tones, diction, and accents. Plenty of people that don't sound native can easily be understood. You'd actually be surprised how much you can butcher a language and still be able to communicate (this is really helpful to language learners!). There's so much fuzziness here that it I haven't seen any compiler (plugin, shell, etc) anywhere near this level of fuzziness.

Tldr: Compilers you need to be fairly precise, natural languages you barely need to be in the ball park.

Re:To the brain, reading computer code is not the same as re... by bzbarsky on Wednesday December 16, 2020 @08:14PM (#25451105)
The important part for the fuzzy understanding is shared context. This is what lets humans who have no languages in common communicate basic things in ad-hoc sign language bits as well.

And if the context fails, things can go just as badly as with computers, in the short run. In the longer run, people notice that something went wrong and are likely to go back to an earlier point and try to clarify, whereas computer systems are not great at it.

Re:To the brain, reading computer code is not the same as re... by jjk166 on Wednesday December 16, 2020 @08:36AM (#25442303)
The people you're talking to are just incredibly intelligent compilers. We could make a compiler that takes something that resembles a for loop and changes it to be correct, but to do so would strip a programmer of the power to make something similar to but not quite a for loop, which would generally be undesirable in a programming language.

"I go store" is reasonably close to correct: you have a subject, predicate, and object and there is one meaning that fits far better than all others. However switch it up to "I store food" and now you have some ambiguity: are you saying you are storing food for later or are you saying you want to go to a grocery store or are you trying to talk about the food you purchased at the store? Again, a human being incredibly intelligent might be able to tell from context, analogous to how someone reviewing a block of code might recognize what a block of code is supposed to be doing, but in general you could expect the interpreter to raise an error, either of the form "bad syntax" or "sorry, I'm not sure what you mean."

If we consider "human languages" like legalese or diplomatic language, where the goal as with programming languages is to limit ambiguity as much as possible while maintaining the speaker's ability to potentially say as many things as possible, syntax becomes very important, and typically it's preferred that the interpreter raise an error rather than try to guess at the speaker's intentions.

Re:To the brain, reading computer code is not the same as re... by godelski on Wednesday December 16, 2020 @03:12PM (#25447903)
The difference is in natural languages you can make tons of errors and be extremely fuzzy and it won't harm the interpretation. Compilers make you update, language doesn't (this does actually cause people to speak a language for decades and never sound native). Often times we can use grammar of another language and the words from another and still get concepts aligned (useful for language learners who will tend to use the grammar of their native language). "Pineapple store I go get" can be a perfectly understandable sentence when context is involved. You can also use direct translations of words from other languages "I put on my... uh... finger shoes." (contextual clues always help, especially in writing).

Humans are "fuzzy compiling" to such a degree (and giving no errors or warnings to the writer) that it is hard to compare the two.

> If we consider "human languages" like legalese or diplomatic language, where the goal as with programming languages is to limit ambiguity as much as possible while maintaining the speaker's ability to potentially say as many things as possible, syntax becomes very important, and typically it's preferred that the interpreter raise an error rather than try to guess at the speaker's intentions.

Such a concept is not even possible in natural languages. Natural languages are so full of ambiguity that even native speakers from similar regions often confuse one another. Because frankly many don't realize there's: what you intend to say, what you say, and what is heard (times number of listeners). When listening to a non-native speaker we focus a lot of trying to understand intent from them. When listening to native speakers we focus a lot on what is said and what we hear (often ignoring intent). There is just so much fuzziness to natural language that it is a bit ludicrous to compare them. The fuzziness of natural language and strictness of programming languages are necessary features too.

Re:To the brain, reading computer code is not the same as re... by jjk166 on Thursday December 17, 2020 @12:06AM (#25452703)
> The difference is in natural languages you can make tons of errors and be extremely fuzzy and it won't harm the interpretation.

> Natural languages are so full of ambiguity that even native speakers from similar regions often confuse one another.

These two statements are contradictory. There's a difference between not caring that an error is present and being robust to error. Natural language represents the former. Yes I might not shout "Error: finger shoes not recognized" but that error nevertheless occurred, I don't actually know what they meant. I'm going to assume gloves, but if their life depended on me getting them mittens they'ed probably wish I had said I don't understand. Luckily, we live in a world where getting things wrong is typically harmless, but history is full of disastrous misunderstandings. If you are doing something important like drawing up a legal contract, your lawyer should have no problem telling you "that wording is unacceptable." which is conceptually no different from a compiler's syntax error.

Natural language and programming languages are different in many ways in terms of degree. Natural languages need to be used in vastly more circumstances, they have been in use for vastly longer, and they generally represent an ad hoc development cycle involving millions of independent contributors. They thus have much more deprecated functionality and conflicting user conventions. But while different in degree, the two aren't really different in kind - every fundamental trait of one is shared by the other, which is why the fuzzy compiler for natural language will accept the terms for a programming language as a substitute without raising any error.

Re:To the brain, reading computer code is not the same as re... by godelski on Thursday December 17, 2020 @12:32AM (#25452857)
They aren't contradictory. You're working backwards to make humans like computers/interpreters. The fact that human interpretation 'doesn't care' is not so much a feature but a necessity. Ambiguity is inherent to natural languages, not a failure of them, nor a feature. On the other side, programming languages are strict my nature and it is a necessity. In programming we have a limited vocabulary and that limits our expressiveness, which is a feature. We don't want probabilistic outcomes for standard means.

So let's look at the two parts you quotes from me and give some examples. We've conversing quite well, wouldn't you say? You understand me and I understand you? So #1 must be true, right? But have you ever played the game telephone[0]. With the general outcome of every game that must mean that #1 cannot be true, yet here we are. Like I said before, when communicating there's: what is intended, what is said, and what is heard. Usually these align pretty well. But small fuzzing adds up quite quickly. But it should also illustrate to you that what you hear (or read) isn't what the speaker (or writer) intended. Their job is to convey as best as they can to you while your job is to interpret as best as you can. Language being of this form allows us to express wildly abstract concepts, especially ones beyond our capacity to even understand. This is the usefulness of natural languages. But it is also why we created mathematical and programming languages, but why they will never be able to have the same expressiveness. You cannot program what you do not understand. But you must be able to talk about what you do not understand, if you are ever to hope to one day understand it.

I'd encourage you to read both more about linguistics and compilers. If you're feeling lazy, Tom Scott has some decent linguistics videos and are aimed at STEM audiences. For more technical maybe see NativLang. For a book, checkout The Unfolding of Language.

[0] https://en.wikipedia.org/wiki/Telephone_(game)

Edit: btw, you did get the meaning of finger shoes (German) even with the extreme limitations of only text based communication.

Re:To the brain, reading computer code is not the same as re... by jjk166 on Thursday December 17, 2020 @12:37PM (#25457872)
In the first you say that ambiguity will not harm interpretation, in the second you say that it will cause confusion. I interpreted these statements to be contradictory because my compiler evaluates "harm interpretation" == "cause confusion" to be true.

I don't know if by "we've conversing" you meant we are or we have been conversing. Those two possibilities are close enough to one another that substituting the wrong one will probably not cause a catastrophic failure, but perhaps you meant to use the pluperfect to imply that the conversation was done in some "drop the mic" moment that was completely lost on me.

Telephone is not a game of ambiguity, but of noisy communication. If you start with cat you might get bat at the end, but you wouldn't get feline. You could easily win at telephone by speaking the same meaningless statement repeatedly and you can lose at telephone with a grammatically correct statement which is nevertheless phonetically similar to some other statement. "Blue blue blue blue" is going to make it, "blue crew flew you" probably won't. A fault in transmission is fundamentally different from a syntax error, more analogous to a letter getting lost in the mail or a mistyped letter on the keyboard.

There is a fundamental difference between getting your point across and getting a point across that's similar enough to accomplish your goals.

Consider the following statements:

"I want you to feed my cat

"I want my cat fed"

"I want feed cat"

"You food cat"

"Cat food"

"Weird Dog Rice"

"seltsamer Hundereis"

I am certain you know what I mean in the first sentence. I would be amazed if you could deduce the meaning of the last without further clarification. Between these extremes there is some point where your compiler's heuristics fail, and likely long before that you start losing nuance and details. Natural language error tolerance has its limits.

Now consider the following javascript expressions:

for (let cat in catstofeed) {feedCat(cat)}

var i=1; while (i) { try { feedCat(catstofeed[i-1]); i = i+1; } catch (e) { i = 0;};

var i=0; while (i) { try { feedCat(catstofeed[i]); i = i+1; } catch (e) { i = 0;};

while (i) { try { feedCat(catstofeed[i]); i = i+1; } catch (e) { i = 0;};

If you substituted the second for the first, you'd accomplish what you were setting out to do. The third would lead to a wildly different result but is still valid. The final case is ambiguous, a smart compiler could guess the programmer intended for statement 2's functionality, but asking for clarification is the safer option.

You are right that trying to have a human conversation with only a few dozen words and a very limited sentence structure would be very difficult - a vast vocabulary and complicated grammar is a hard requirement for a natural language, and ambiguity is thus unavoidable. Dealing with such a high level of ambiguity is thus also a requirement of a natural language compiler, and such a compiler is beyond the capability of any existing silicon computer. But just because a language has more words and more valid expressions does not fundamentally change what it is, any more than adding more processing power to a computer eventually makes it stop being a computer.

If you wanted to make a programming language with 50000 keywords and an extremely forgiving syntax, you could do so. It would be extremely impractical for programming a current computer, which is only capable of a few distinct operations and thus has no need for nuance, but it would still work, and damn wouldn't it be great at self documenting.

Re:To the brain, reading computer code is not the same as re... by godelski on Thursday December 17, 2020 @03:02PM (#25459667)
> In the first you say that ambiguity will not harm interpretation, in the second you say that it will cause confusion.

That's because that's not what I said nor what I meant.

Re:To the brain, reading computer code is not the same as re... by tsimionescu on Wednesday December 16, 2020 @07:24AM (#25441727)
Wrong syntax is more like using the wrong words in human languages than it is like what we normally call bad grammar.

If you write in C 'foo(a;', that's equivalent to saying 'ball foo with a' - the compiler really can't understand what you mean.

The equivalent of 'I go store' is something more like writing 'int p; printf("%d", p);' - the compiler understands what you mean, but it's bad style, and possibly wrong (you're supposed to initialize a variable before you read it).

Re:To the brain, reading computer code is not the same as re... by dclowd9901 on Wednesday December 16, 2020 @04:22AM (#25440539)
I’ve found that reapproaching language when things don’t make sense to be very valuable.

Gender in German, for instance. It seems to be completely arbitrary save for one detail: whichever “sounds” best. I compare this to using “a/an” in English (albeit the rules in English are somewhat more “strict” in this regard.)

Re:To the brain, reading computer code is not the same as re... by mejutoco on Wednesday December 16, 2020 @12:08PM (#25445043)
There a re a few heuristics for German that are very useful. I had this problem myself and researched it deeply in this article (full disclosure: own website) https://mejuto.co/statistical-grammar-guessing-a-german-noun...
Re:To the brain, reading computer code is not the same as re... by cmwelsh on Wednesday December 16, 2020 @01:18AM (#25439663)
Makes total sense. If your grammar is wrong, the compiler will catch you.

If your English grammar is wrong, I will catch you.

Make progress.

Re:To the brain, reading computer code is not the same as re... by pessimizer on Wednesday December 16, 2020 @07:56AM (#25441940)
The only time I'm going to correct your grammar if you haven't explicitly asked me to is if there's some ambiguity and you're saying something important for me to know e.g. making a specific request. Otherwise, if I think I get what you're going for, imo you're doing fine. Talking good is mainly useful as a class indicator.

One thing I think I've noticed among a lot of people who have lived in English-speaking countries for a very long time is that, after their accent reaches general intelligibility and their grammar reaches a point where they're always quickly understood, they stop progressing and leave it at that. I knew an Iranian-American guy in his 50s who had been in the US since his 20s who would drop every article except when it was important.

Re:To the brain, reading computer code is not the same as re... by jjk166 on Wednesday December 16, 2020 @09:00AM (#25442515)
For your compiler, everything not stated explicitly is ambiguous and potentially important. Talking good may not be necessary for every day conversation, where the stakes are typically low, but you'd go out of your way to avoid grammar mistakes in something important like a legal contract or a published article. Presumably if someone were talking you through modifying your computer and a single wrong move would brick it, you'd ask for clarification should they say anything even remotely weird.
Re:To the brain, reading computer code is not the same as re... by ajuc on Wednesday December 16, 2020 @07:56AM (#25441941)
> Which is obviously the complete opposite of using a programming language.

I think learning programming by learning all the rules upfront and then trying to do sth isn't the best way to do it. Much easier to try to do something and iterate quickly learning what's needed to do the job. That's how people learnt programming on 8-bit computers - type a sample program and change stuff to see what it does. Then find something you want to achieve and try to change the sample program to do that. Eventually you understand how basics work and can learn everything else.

Re:To the brain, reading computer code is not the same as re... by beowulfey on Wednesday December 16, 2020 @06:32AM (#25441410)
That attitude is actually how I program—with scripted languages I write code and see what happens, if it didn’t work I write it again. I’m relearning C++ now and am doing it a similar way (albeit I have to be a little more careful because compilation makes it a lot slower).

At one point, I wondered if this same strategy would make for a good (human) language learning app. Kind of like you described... rather than something like Duolingo where you have to memorize answers, it might help to have a conversational app where you see the results of your attempts in real time.

Re:To the brain, reading computer code is not the same as re... by jooize on Wednesday December 16, 2020 @06:40AM (#25441459)
SingStar for language?
Re:To the brain, reading computer code is not the same as re... by Kaveren on Wednesday December 16, 2020 @07:18AM (#25441694)
> That attitude is actually how I program—with scripted languages I write code and see what happens, if it didn’t work I write it again.

This is an incredibly harmful attitude towards learning, but it feels nice because it's a lot less effort than actually trying to read or listen to something to learn. It's just laziness.

Learning C++ this way is how someone would end up with a buffer overflow every 30 lines of code they write. It's the reason some self-taught developers can't give you the fuzziest definition of the difference between O(n) and O(n^2).

The closest approximation of this is how kids learn to speak, but this is incredibly inefficient, and they receive many years of formal education anyway.

Re:To the brain, reading computer code is not the same as re... by beowulfey on Wednesday December 16, 2020 @08:31AM (#25442250)
It isn't only guesswork -- there is a lot of reading and researching involved too. I figured that was obvious but perhaps it was not. The point is that it is learning by doing rather than rote memorization and recall. It is easier for me to do something, see the result, and figure out what went wrong if it didn't work. It allows me to understand the function behind something, versus just being told "this is how to do something and you should always do it this way" without an explanation as to why.

What works for you isn't what works for everybody. And I'm absolutely not denying the importance of learning theory.

Re:To the brain, reading computer code is not the same as re... by Kaveren on Wednesday December 16, 2020 @09:10AM (#25442608)
The better alternative is just to learn thoroughly and apply knowledge as much as you can. You can explore without guesswork.
Re:To the brain, reading computer code is not the same as re... by datameta on Wednesday December 16, 2020 @10:50AM (#25443987)
I have to chorus GP. Learning by doing before I have a great understanding or perhaps sometimes far earlier (of course talking about studies on my own time) makes me think through the how and why more thoroughly partly because there is a tanglible goal of getting the piece of code to function as intended versus a more nebulous guess at having understood or not.
Re:To the brain, reading computer code is not the same as re... by beowulfey on Wednesday December 16, 2020 @07:19PM (#25450656)
I honestly think we’re talking about doing the same thing.
Re:To the brain, reading computer code is not the same as re... by usrusr on Wednesday December 16, 2020 @05:40AM (#25441066)
Yes, it seems like spoken languages can have a rather pronounced Ballmer Peak when you are learning them and are not very good at it. And the peak is much further out than with programming languages.
Re:To the brain, reading computer code is not the same as re... by traceroute66 on Wednesday December 16, 2020 @03:23AM (#25440249)
> obsessing over grammar is almost detrimental to making progress with a new language

If you skip over the hard parts, then you're not exactly learning a language. You might as well just learn from one of those "Hello, my name is Bob, where's the toilet ? " cartoon books.

Its a bit like those people who learn programming informally. Most of them end up writing spaghetti code for the rest of their lives.

Its the same with languages. Skip the hard bits and your attempt fluency will hit a wall at some point relatively early on. Grammar is tough, but stick at it, it will eventually become second nature. Don't be lazy.

Re:To the brain, reading computer code is not the same as re... by kichimi on Wednesday December 16, 2020 @03:45AM (#25440356)
If you master grammar but can't pronounce anything, or your vocabulary is too small, or you have no confidence to speak, or you don't learn the way natives say things through trial and error, then all your efforts are completely wasted.

Language isn't just some word for word translations and a new sentence structure, it's much much deeper than that.

The only thing that is required to learn a language is tens of thousands of hours of practice.

Re:To the brain, reading computer code is not the same as re... by coldtea on Wednesday December 16, 2020 @03:59AM (#25440408)
>If you skip over the hard parts, then you're not exactly learning a language.

That's not true. Most native speaks have little knowledge of the grammar and syntax beyond intuitive. They have forgotten most of what they've been taught at school, plus, they could speak quite well before going to school and being taught grammar in the first place. We acquire language by osmosis, not by studying, and even less so by studying the syntax.

Re:To the brain, reading computer code is not the same as re... by olikas on Wednesday December 16, 2020 @05:53AM (#25441147)
> Most native speaks have little knowledge of the grammar and syntax beyond intuitive.

The fact that they don't know the scientific names of the grammar rules doesn't mean that they don't know grammar. As somebody how's native language is very dissimilar to English, my intuitive language rules are no help speaking English. The grammar you are taught at school is descriptive of English and not a prescription. The distinction s very similar to "laws in physics". Nature doesn't really care about the rules we impose on it.

Learning grammar alone is not enough. Learning vocabulary alone is not enough. Immersing yourself to a language without a guide (like your parents guided you into language) is completely ineffective.

Grammar, vocabulary and pronunciation are equally important if you want to get fluent in both spoken and written communication in a different language.

Re:To the brain, reading computer code is not the same as re... by coldtea on Wednesday December 16, 2020 @06:16AM (#25441301)
>The fact that they don't know the scientific names of the grammar rules doesn't mean that they don't know grammar.

Similarly the fact that they don't study grammar and skip the "hard parts" doesn't mean that they don't pick up/know grammar, so the original argument is moot.

Re:To the brain, reading computer code is not the same as re... by visarga on Wednesday December 16, 2020 @05:08AM (#25440861)
Apparently knowing grammar acts as a filter for bad speech, but it doesn't actually generate speech itself. Learning to speak is based on direct experience, not abstract rules.
Re:To the brain, reading computer code is not the same as re... by ChuckMcM on Tuesday December 15, 2020 @09:05PM (#25438144)
I like that example of "learning a board game." When I read text I "hear" conversations, and when I read code I "see" structures. Definitely different parts of the brain being activated.
Re:To the brain, reading computer code is not the same as re... by datameta on Tuesday December 15, 2020 @09:58PM (#25438531)
I find this mirrors my experience. Although written language does eventually call upon highly visual parts of the mind, the structures and mechanisms I visualize when reading code are more highly dimensional than the initial mentally vocal interpretation of text. A program small enough to hold entirely in my mind that I know well, such as a piece of demo-scene code I'm golfing, is a sort of multifaceted non-visual abstract sculpture with features and values that interconnect in a seamless manner that I can interact with and predict the effect of my modifications on. I highly enjoy being utterly engulfed in the flow of this simultaneously logical and artistic activity.
Re:To the brain, reading computer code is not the same as re... by Cerium on Tuesday December 15, 2020 @10:49PM (#25438832)
That is how I have thought about code as well. I sort of grasp the "shape" of it, and the analogy to a board game is a good one. I think it supports why it is hard to talk about code, if we thought of it as speak-able units we could paraphrase it.
Re:To the brain, reading computer code is not the same as re... by ako on Wednesday December 16, 2020 @01:56AM (#25439841)
This is also why visual low-code programming might actually succeed: it's closer to how you think about code than the actual code. It has the opportunity to visualize the structures you want to see, so you don't have to make that translation yourself.
Re:To the brain, reading computer code is not the same as re... by Frptwenty on Wednesday December 16, 2020 @03:27AM (#25440279)
Visual low-code programming sounds good until you try to express actually non-trivial stuff in it, and you start appreciating text-based flow control again.
Re:To the brain, reading computer code is not the same as re... by ahartmetz on Wednesday December 16, 2020 @07:00AM (#25441584)
My take is that since code and data are highly dimensional "ideas" living in a one-dimensional address space, the two dimensions of visual programming that don't match any of the two are more of a distraction.
Re:To the brain, reading computer code is not the same as re... by yourapostasy on Wednesday December 16, 2020 @07:18AM (#25441693)
For visual low-code programming to align with how I visualize code, it would need to have one modality for when I'm writing, and a much richer, more complex modality for when I'm troubleshooting. There is a lot of emphasis in visual low-code programming on the first but not the second modality. There is a third modality for reading as well, which is very similar to troubleshooting but usually can be mostly a subset of troubleshooting.

YMMV, but the way I reason through while I read/write/troubleshoot code are mentally visualized and mapped in very different ways. When I compare what I visualize with the junior engineers I support, their visualizations tend to stop at a much higher granularity level. I strongly suspect that I engage in techniques that would be extremely familiar with and be on far more elementary level to those who practiced building "memory palaces" [1].

I have tried to teach this to the junior engineers, but the vast majority are simply wired differently it seems, and the few who "get it" do not sufficiently make it a habit to internalize it, much of which at first involves tedious pencil and paper.

I remember as a kid while blundering about a PDP-8 drawing on paper what I thought was going on at first with labeled boxes and lines (most of which was laughably inept and naive), then gradually transferring that to memory. Over many years of practicing that, it eventually became a reflexive habit. For more difficult problems I encounter today, I still sit down with pencil and paper and diagram it out to talk myself through it and build up a mental model.

For me personally, engaging spatial, motor, visual, verbal, and auditory senses together makes up my "visualization" in an iterative process that gradually internalizes into a pure mental model. That's why I prefer to look like a mental patient in the confines of my private office than at a co-working space or coffee shop.

[1] https://en.wikipedia.org/wiki/Method_of_loci

Re:To the brain, reading computer code is not the same as re... by ukj on Wednesday December 16, 2020 @03:23AM (#25440251)
This is unsurprising given that abstract algebra/type theory/category theory are often viewed through the philosophical lens of Srtucturalism.

https://en.wikipedia.org/wiki/Structuralism_(philosophy_of_m...

Re:To the brain, reading computer code is not the same as re... by eyelidlessness on Tuesday December 15, 2020 @08:39PM (#25437988)
This. And the more programming languages you learn (especially across paradigms), the more each new language is more of a tree search of basic fundamentals. Certainly some paradigms fit oddly in others, but even then familiar patterns emerge[1].

[1]: For example it’s occurred to me a few times that early Node interfaces were an opportunity to introduce monad types to idiomatic JS development. Sure, it was callback hell, but basically everything that touched IO had an Option type, just in the form `type Callback<T> = (error: Error, value?: never) => void | (error: null, value: T) => void`

Edit: I’m sincerely disappointed the sibling reply got downvoted and dead, it was a valuable contribution. To resurface, the sibling commenter distinguished the cognitive experience of code versus human prose from the perspective of someone who’s autistic. It’s a distinction I share (diagnosed ADHD, undiagnosed but strongly suspect ASD spectrum).

Edit 2: no longer dead so I'll defer to the sibling comment.

Re:To the brain, reading computer code is not the same as re... by motakraxxer on Wednesday December 16, 2020 @12:14AM (#25439331)
I was originally surprised by the study and your comment, since I generally find no difference between natural languages , math and programming languages. (I am a math major).

However, most of the people I interact with find my exposition methods curious in sense of structure. So, I shared this study with some of my friends, and they agreed with the study too. When I pointed out my surprise to them, they told me that I speak like a computer program in the sense of structure of exposition.

So, I guess I agree with this study in general, and actually would love to know what's going on in my brain.

For what it's worth, I am fluent in 4 natural languages from two different families and I'm learning a fifth language. Also, I'm fluent in multiple programming languages.

Re:To the brain, reading computer code is not the same as re... by csense on Wednesday December 16, 2020 @03:03AM (#25440162)
I have the exact opposite experience. For me, part of the problem is that in math, you have options. If you forget the quadratic formula, you can:

- Re-derive it by completing the square on the general quadratic

- Solve a specific quadratic you're interested in by factoring or graphing

- Try to find zeros with numerical methods

The point is, everything's connected to everything else, so it doesn't matter if you forget any part of it as long as you remember some critical mass.

To be fully fluent in a programming language, you have to memorize two or three dozen keywords and a handful of operators (mostly the same as standard math). To be fluent in a natural language, you have to memorize two or three dozen words a week for years. Not to mention understanding all the insane grammatical stuff.

With human languages, sure it's easy enough to remember that "nec-" means "dead" (especially if you consume fantasy novels / games where necromancy is a school of magic), but you're still totally screwed if you can't remember whether the word you need is "necare" or "necire," "necobitis" or "necabitis" or "necibetas". There's no rhyme or reason to any of it, your knowledge won't help you figure out whether that letter's supposed to be an "o" or an "i", or the difference between past tense and future tense and perfect tense and imperfect tense and tensile strength and gaaah why is this all so complicated!?

It's like if a programming language had 20 different versions of each keyword, and they were all spelled with one or two letters different, usually only the vowels are different. And they all compile, getting the wrong one just creates subtle semantic bugs at runtime. And there's a maze of rules telling you which version of the keyword you use if you're inside a loop body or a function body or a conditional statement body. Oh, and there are six different versions of the "if" keyword, and they're all two letters long, good luck getting the right one of those. And if your code's going to be executing two or more times, all the names of your variables will suddenly be different. And when you refer to a struct outside of the function that created it, all the field names are transformed. And whoever was writing the compiler put ten different special cases in the code for transforming your variable names, just because they could.

Re:To the brain, reading computer code is not the same as re... by laughinghan on Wednesday December 16, 2020 @03:19AM (#25440230)
That is such an interesting and...low-level way to think of it.

To me it feels a little deeper than just there being a "maze of rules". Your earlier mention of "everything's connected to everything else" resonated with me more.

In a sense, the expressive power of programming languages, and mathematical notation, feels very small. I liked the board game metaphor brought up in the top comment: programming languages and mathematical notation merely feel like arrangements of board game pieces (from an infinite box, and the rules of how they can be arranged are "context-free"). They don't have meaning except what we impose (ideally, assisted by comments).

A metaphor I brought up in another comment is that it feels "easy" to systematically translate an arbitrary program into an equivalent diagram, such that the diagram would contain 100% of the operational information in the program, and could be runnable as-is. (Would be cumbersome to input into the computer, ofc.) Whereas the idea of systematically translating an arbitrary natural sentence into a diagram just seems...nonsensical to me. I wouldn't even know where to begin.

Does that resonate with you?

Re:To the brain, reading computer code is not the same as re... by whynaut on Wednesday December 16, 2020 @04:12AM (#25440485)
> Whereas the idea of systematically translating an arbitrary natural sentence into a diagram just seems...nonsensical to me. I wouldn't even know where to begin.

we actually literally did this in high school. It was very informative for me.

Re:To the brain, reading computer code is not the same as re... by motakraxxer on Wednesday December 23, 2020 @06:44AM (#25516632)
This is really an interesting thought. Would it surprise you if I said that for me, it works in an opposite manner? I first think in terms of diagrams and the construct sentences for it, whether it be programming language, natural language or math.
Re:To the brain, reading computer code is not the same as re... by bzbarsky on Wednesday December 16, 2020 @08:21PM (#25451157)
https://en.wikipedia.org/wiki/Sentence_diagram#Reed%E2%80%93... is totally a thing I recall with moderate fondness from high school.

Yes, if you try to apply it to some parts of "Moby Dick" it will be rather painful. :)

Re:To the brain, reading computer code is not the same as re... by bobyfyfy on Wednesday December 16, 2020 @11:14AM (#25444278)
Have you studied syntax? They diagram sentences all the time
Re:To the brain, reading computer code is not the same as re... by laughinghan on Wednesday December 16, 2020 @03:03AM (#25440159)
Wow, that's crazy.

Others here, and presumably your friends, have talked about how they think of programming "visually", but they don't think visually about conversing in natural language.

I thought of a concrete way to describe it: it "feels obvious" to me that any programming language could be "easily" replaced by a systematic diagramming method, with programs translated systematically into equivalent diagrams. If anything, a diagram would be clearer and more readable to me than the same program in plaintext. (Of course, it would be much more cumbersome to input such a diagram into a computer than plaintext.)

Whereas the idea of systematically translating arbitrary natural language sentences into diagrams is...nonsensical to me. I mean I wouldn't even know where to begin.

I'm curious if for you, do you feel like you could easily systematically translate a natural language sentence into a diagram? Or, because you don't think as visually as people like me, translating a program into a diagram is not "obvious" to you at all? Or maybe this distinction just doesn't feel significant to you, one language being diagram-translatable and another being diagram-untranslatable doesn't cause them to feel different, they feel equally language-y to you?

Re:To the brain, reading computer code is not the same as re... by magusdei on Wednesday December 16, 2020 @03:32AM (#25440305)
Context-free grammars were originally invented by linguists for analyzing natural language. You can see examples of phrase structure and dependency diagrams e.g. here: https://en.wikipedia.org/wiki/Dependency_grammar

For what it's worth, I agree with OP, and have a very "language-oriented" thinking style. I certainly don't visualize anything while programming or doing math (except for geometry and the like). My thinking feels like it's more based on constraint solving and seeing analogies between domains.

Re:To the brain, reading computer code is not the same as re... by motakraxxer on Friday December 25, 2020 @05:09AM (#25535519)
I do feel that I could easily translate natural languages into a diagram as well. I am a very visual thinker, but that visual seeps into natural languages as well.
Re:To the brain, reading computer code is not the same as re... by laughinghan on Thursday December 31, 2020 @04:51PM (#25597571)
Whoops, missed the comment window on all the replies to me except for this one!

I clearly completely failed to communicate what I meant about "diagramming" a programming language, as evidenced by all the people pointing out that syntax tree diagrams work fine on natural languages, and indeed were originally created for natural languages, which is totally missing the point.

What I meant was that the semantics of programming languages are so limited and constrained that they could easily be translated into an "executable diagram", such as a control-flow graph for imperative code, or a dataflow graph for functional code. The syntax of natural languages is indeed more-or-less similarly constrained as programming languages, but the semantics of natural languages seems completely nebulous and ill-defined to me.

To use the board game analogy from earlier, you could conceivably learn to play chess entirely in terms of chess notation ("1. e4 e5 2. Nf3 Nc6 3. Bb5 a6"), without ever learning about the 8x8 chessboard or the 16 pieces. Chess notation shares no syntactic structure whatsoever with the "syntax"/diagram drawing rules of a chessboard and pieces, yet their semantics are exactly equivalent.

In the same way, the "syntax"/diagram drawing rules of control-flow graphs has no syntactic structure in common with imperative code, yet exactly equivalent semantics. Could you imagine a diagram system that has no syntactic structure in common with natural language, yet completely captures the semantics?

I cannot begin to imagine that. The semantics of natural language defy description.

Re:To the brain, reading computer code is not the same as re... by godelski on Wednesday December 16, 2020 @12:45AM (#25439500)
I'm curious what's your first language. I'm learning Mandarin and find that it feels much closer to a computer language than English or Latin based. Though I don't think I'd say learning Mandarin (or any language) is anywhere near what it's been like learning computer languages. I find mathematical language different from both as well. They do feel like 3 different parts of my brain. Though math I'm highly visual (not this way in programming or English, but visual in Mandarin).
Re:To the brain, reading computer code is not the same as re... by nmfisher on Wednesday December 16, 2020 @08:04AM (#25442004)
That could be because Mandarin grammar is actually relatively simple, the difficulty is in “naturally” expanding your vocabulary (since characters take an order of magnitude longer to learn).

It wouldn’t surprise me if a lot of it feels like brute forcing syntax and keywords - there’s no way of reasoning through it, you just have to knuckle down and learn it.

It’s also part of the driving force behind my app (link in bio) - it can take a long time (i.e. years) to get comfortable carrying on a conversation, so I want to help people practise in a less intimidating environment.

Re:To the brain, reading computer code is not the same as re... by motakraxxer on Wednesday December 16, 2020 @01:30AM (#25439718)
My first language is Marathi which is an Indo-Aryan language. My other languages are

West Germanic: English

Indo-Aryan: Hindi, Bengali

Dravidian: Kannada

And currently, I'm learning German.

Re:To the brain, reading computer code is not the same as re... by NL807 on Tuesday December 15, 2020 @10:42PM (#25438790)
Similar situation as you. I view programming more like seeing patterns, structures and constructs for solving problems, which is completely divorced from natural language grammar.

The "language" part in programming is really just a vernacular term for describing differences in syntax, and has no parallels with human spoken languages.

Re:To the brain, reading computer code is not the same as re... by gabereiser on Tuesday December 15, 2020 @11:03PM (#25438908)
Whoa, the complex board game analogy is new to me but it rings so true. Like you I’m bilingual. Like you I know many programming languages (dangerous level or above). To equate learning “syntax” of the language as learning a complex board game is such a great analogy.
Re:To the brain, reading computer code is not the same as re... by pdonis on Tuesday December 15, 2020 @10:17PM (#25438643)
> this is completely obvious to me

This was my reaction as well: what, they needed to do a study to figure this out?

Re:To the brain, reading computer code is not the same as re... by vncecartersknee on Tuesday December 15, 2020 @10:33PM (#25438738)
science isn't when you just decide that things are obvious and leave it at that lol. They probably have data and an experimental methodology and stuff now that future authors can build on to try to answer more complex questions.
Re:To the brain, reading computer code is not the same as re... by andreareina on Tuesday December 15, 2020 @11:04PM (#25438910)
On the one hand, the design of Python implies that they think the natural language parts are important. On the other hand, yes we should confirm things that are our intuition says are completely obvious, otherwise when our intuition fails (as it frequently does, see the point about Python) we end up optimizing the wrong thing.
Re:To the brain, reading computer code is not the same as re... by noneeeed on Wednesday December 16, 2020 @05:49AM (#25441116)
As a total monoglot who regrets not learning languages properly when he was a kid, this still seems pretty obvious to me that at least I don't read code in the way I read natural language, or maths.

However it's always good to have intuitions like this confirmed or refuted by actual investigation, and putting them on a more solid footing within the broader context.

My personal experience of reading code has always felt more like looking at a mechanical mechanism, or perhaps solving a paper maze where you see the whole thing at once but can focus on parts as well. It isn't something I look at one line at a time, I read it in structural blocks, almost a breadth-first reading. I see the if/else statement and structure before I see any of the details of each branch. It's a deeply non-linear process of going up and down levels of abstraction where necessary, and ignoring details at lower levels that are irrelevant to the task at hand.

Re:To the brain, reading computer code is not the same as re... by sanedigital on Wednesday December 16, 2020 @06:44AM (#25441483)
No reason to regret it—there's still plenty of time to learn now!
Re:To the brain, reading computer code is not the same as re... by JoeAltmaier on Wednesday December 16, 2020 @09:52AM (#25443166)
Not just writing code; reading code is different too. Often I page thru code, looking around, getting the size and shape of it. I don't read every word; I'm not sure what I am doing but it isn't the same as reading. Absorbing, maybe.
Re:To the brain, reading computer code is not the same as re... by pgt on Wednesday December 16, 2020 @01:02AM (#25439576)
Your comment is insightful and suggests that perhaps we should try to design a programming language that feels more like a natural language.
Re:To the brain, reading computer code is not the same as re... by creata on Wednesday December 16, 2020 @01:05AM (#25439593)
Or perhaps we should accept that programming a computer is more like playing a board game and less like speaking, and optimize languages along those lines.
Re:To the brain, reading computer code is not the same as re... by ZephyrBlu on Wednesday December 16, 2020 @01:04AM (#25439586)
I don't think making a programming language more like natural language would be helpful. It's much harder to learn a natural language than a programming language.
Re:To the brain, reading computer code is not the same as re... by infogulch on Wednesday December 16, 2020 @03:45AM (#25440354)
And also harder for a computer to interpret and execute a natural language.
Re:To the brain, reading computer code is not the same as re... by tremon on Wednesday December 16, 2020 @04:52AM (#25440732)
No, not at all. Natural language is imprecise, ambiguous and heavily contextual in both its structure and semantic meaning. All those qualities are sources of bugs or undefined behaviour in programming.

As others have said in this thread: programming "languages" are not like natural languages for a reason, and conciseness is a big part of that. The two fill a completely different role, and it should be obvious that the brain structures involved are different too.

To illustrate that: the only reason people are surprised that programming languages and natural languages are dissimilar is because our natural language is ambiguous: it calls them both "languages" even though they serve entirely different functions.

Re:To the brain, reading computer code is not the same as re... by datameta on Wednesday December 16, 2020 @12:32PM (#25445435)
This was attempted using COBOL with a varying degree of success depending on who you ask. I myself have not used it but it seems to me the verbosity would be a major drawback for most tasks. Perhaps one can learn to read it quickly but I believe having shorter yet self documenting names for variables, functions, objects, etc leads to being able to store more in our limited human working memory, which is vital for more complex operations. Code structured more like natural language takes longer to compile, and takes up more disk space. Perhaps these are not such drastic drawbacks for the use cases it was developed.
Re:To the brain, reading computer code is not the same as re... by astrange on Wednesday December 16, 2020 @07:24AM (#25441726)
This has failed in the past (AppleScript). Another way to do it would be to make the language “vague” in the same way a poorly formed English sentence can still be understood, but I think this would fail too - the most important thing for a tool is to be predictable, not clever.

Ruby’s syntax does seem to be informed by Japanese word order, so that’s nice.

Re:To the brain, reading computer code is not the same as re... by DonaldFisk on Wednesday December 16, 2020 @04:15AM (#25440503)
Like COBOL?

Basing a computer language on a subset of English was done for several query languages, ranging from SQL to Attempto Controlled English (https://en.wikipedia.org/wiki/Attempto_Controlled_English).

Re:To the brain, reading computer code is not the same as re... by goto11 on Wednesday December 16, 2020 @04:11AM (#25440476)
This have been tried. Languages like Perl and AppleScript was deliberately designed to feel more like natural languages. It turns out this lead to a worse programming language.
Re:To the brain, reading computer code is not the same as re... by Ma8ee on Wednesday December 16, 2020 @04:17AM (#25440510)
They tried that with COBOL and to a certain degree SQL. We would probably do a better job today, but the idea isn’t new.
Re:To the brain, reading computer code is not the same as re... by tug0fwar on Tuesday December 15, 2020 @09:53PM (#25438497)
I agree, this is probably because we never 'speak' (although write) in programming languages trying to convey something. This goes same for 'hearing' (although we read and understand, hopefully). We always use human languages for those purposes, well, except for those times we speak in pseudo-code.
Re:To the brain, reading computer code is not the same as re... by userbinator on Tuesday December 15, 2020 @10:48PM (#25438824)
this is probably because we never 'speak' (although write) in programming languages trying to convey something

Have you told anyone to grep, cat, mount, fsck, or sudo?

I'd say the more experience one has with a programming language, the more reading and writing it feels like a natural language.

Re:To the brain, reading computer code is not the same as re... by NoSorryCannot on Tuesday December 15, 2020 @11:11PM (#25438961)
These are borrowings or coins into a natural language. A word from bash does not mean you are speaking bash any more than saying macaron would mean you are speaking French.
Re:To the brain, reading computer code is not the same as re... by jonplackett on Wednesday December 16, 2020 @04:04AM (#25440429)
As someone who is a lot less proficient in coding languages and speaks a bit of Spanish. It’s still really obvious. Not sure why anyone would think of them as equivalents aside from both being named a ‘language’
Re:To the brain, reading computer code is not the same as re... by kitd on Wednesday December 16, 2020 @02:20AM (#25439945)
I would say, however, that designing software uses similar mental processes to translating text from one language to another.

You take ideas in one form and express them in terms idiomatic to the other.

Re:To the brain, reading computer code is not the same as re... by ahartmetz on Wednesday December 16, 2020 @08:23PM (#25451171)
But for two completely different audiences: One extremely precise and extremely stupid, the other is a computer. Just kidding! The other is a creature like you and me.
Re:To the brain, reading computer code is not the same as re... by m463 on Wednesday December 16, 2020 @02:43AM (#25440062)
I think because the term "language" is used in both places people carry over preconceptions from one to the other.

Sort of like computer viruses and biological viruses.

Re:To the brain, reading computer code is not the same as re... by aksss on Wednesday December 16, 2020 @04:14AM (#25440493)
> board game

Legos with the all the rules of AD&D 2nd Ed.

Re:To the brain, reading computer code is not the same as re... by danishdev on Tuesday December 15, 2020 @08:33PM (#25437950)
I am autistic.. I read code and "interpolate" across lines quite well. On the other hand, finishing one basic written sentence can sometimes be a surprising struggle.
Re:To the brain, reading computer code is not the same as re... by DoreenMichele on Tuesday December 15, 2020 @10:03PM (#25438558)
Human language tends to be pretty fuzzy. Code seems to be quite precise and very pedantic about details.

In human language, you can play with idioms, metaphors, double entendre, etc.

In writing code, you miss one symbol and it breaks.

Re:To the brain, reading computer code is not the same as re... by magusdei on Wednesday December 16, 2020 @03:57AM (#25440399)
You can play in a similar way with code. It's just that other developers will hate you for it.
Re:To the brain, reading computer code is not the same as re... by astrange on Wednesday December 16, 2020 @07:25AM (#25441737)
It was pretty popular when Ruby and JS came on the scene. I think it’s receded now but there are still tools like Homebrew that are worse than what came before, but people switched to them because they were written in Ruby instead of Perl, and somehow that made it cool.