Live data from Hacker News

Italian Ruby

github.com

131–140 of 178 posts

Re: Italian Ruby

#131

Earlier quoted context omitted.

> I am really stoked for the future of programming languages, when localization is just a matter of translating some words. My experience with localised codebases (in my native language) have been horrifying - like it or not terminology is developed in EN, you either get unnatural sounding "borrow" words and the translation is pointless or worse you get people coining new terminology nobody but them understands. Not…

> I dread every time I see Chinese in a codebase (simply because they are a large enough market to split the dev community) They aren't going to split it, the rest of us will adapt. English was arbitrary, so was French and Latin and Greek before it. Probably in the form of some Romaji-like equivalent (ideograms are too high a bar) but we will start to adopt it. The largest economy dictates the lingua franca because t…

It's a pretty amazing coincidence how it just so happens that English is (one of) the most convenient languages to encode into bytes.

Re: Italian Ruby

#132

Earlier quoted context omitted.

> I am really stoked for the future of programming languages, when localization is just a matter of translating some words. My experience with localised codebases (in my native language) have been horrifying - like it or not terminology is developed in EN, you either get unnatural sounding "borrow" words and the translation is pointless or worse you get people coining new terminology nobody but them understands. Not…

> I dread every time I see Chinese in a codebase (simply because they are a large enough market to split the dev community) They aren't going to split it, the rest of us will adapt. English was arbitrary, so was French and Latin and Greek before it. Probably in the form of some Romaji-like equivalent (ideograms are too high a bar) but we will start to adopt it. The largest economy dictates the lingua franca because t…

> English was arbitrary, so was French and Latin and Greek before it.

Might be arbitrary but there isn't really a good reason to change. Compared to the past, right now we have way more people than ever before from around the planet being able to communicate in a single language - English might not be everyone's first language, but it is a fine second language (if anything i'm certain that there are way more people speaking English as a second language than there are people speaking it as a first language).

The main point of a language is communication, why spoil that?

(and FWIW my first language isn't English but i have worked in a couple of other countries with other people whose first language also wasn't English - actually it was several different languages - yet thanks to English everyone was able to communicate, which i think is something to be treasured, not try to disrupt... i mean... we're just discussing things here in English after all)

Re: Italian Ruby

#133

Earlier quoted context omitted.

Yeah, localized languages don't work that well on global scale. Side effects may include large number of bubble communities not being able to contribute to one another which leads to fragmentation and friction. What will happen to large open source communities? Will those have only French people working on networking and Russians working on CPUs ? Also large companies won't be able to hire from smaller programmer poo…

They don't have to be for a global scale, though. Learning programming as a kid, it could be easier when the standard library has functions in the native language. Learning if, while etc are easy as they are just tokens. But the hundreds of functions are hard to look up when one's new and cannot easily understand what a function does based on a foreign description.

I was a kid, what the words meant in English didn't matter much (e.g. i was learning Pascal and it took years until i learned what 'procedure' means), they were essentially symbols. They wouldn't really be helpful.

I just had a book in my native language which explained things.

Re: Italian Ruby

#134

There's this absolutely mind bending idea that is - every single function should have a unique identifier. Which is to say: def square(x: Int): Int = x * x should get hashed (and if it has dependencies, they should get hashed in there, too), and your programming language should track the unique identity of this function, and keep a list of names separately from the hashes. This totally solves the localization problem…

Localization of code language is a horrible idea, no matter how nice the intention sounds.

English is as sort of like an international ISO standard to write code in - most people can read it, comment on it, audit it, etc. If people feel, they can write comments in their native language.

The entire reason why we have had such a great open source collaboration on global scale is because everyone is speaking the same code language.

Re: Italian Ruby

#135
At my last job (at a company in California), half of the development team was contracted out of a firm in Russia.

I once asked the Russian developers how they felt about programming in English as opposed to Russian. They all said they strongly prefer programming (both keywords and identifiers) in another language, because it feels more like a "computer language". And there really aren't that many words to memorize, anyway.

Just an interesting perspective in the discussion.

Re: Italian Ruby

#136
post #131

Earlier quoted context omitted.

> I dread every time I see Chinese in a codebase (simply because they are a large enough market to split the dev community) They aren't going to split it, the rest of us will adapt. English was arbitrary, so was French and Latin and Greek before it. Probably in the form of some Romaji-like equivalent (ideograms are too high a bar) but we will start to adopt it. The largest economy dictates the lingua franca because t…

It's a pretty amazing coincidence how it just so happens that English is (one of) the most convenient languages to encode into bytes.

How is that? I don't know about Chinese, but surely Japanese has much better entropy in bytes? As would other languages with more expressive character sets.

Re: Italian Ruby

#137
post #129

There's this absolutely mind bending idea that is - every single function should have a unique identifier. Which is to say: def square(x: Int): Int = x * x should get hashed (and if it has dependencies, they should get hashed in there, too), and your programming language should track the unique identity of this function, and keep a list of names separately from the hashes. This totally solves the localization problem…

So these functions get the same name then: def following_index(i: Int) = i + 1 def item_count_with_free_gift(n: Int) = i + 1

It would be easy enough to have multiple aliases for the same function. They can be named whatever you want, they just have the same identity

Re: Italian Ruby

#138

Earlier quoted context omitted.

> I am really stoked for the future of programming languages, when localization is just a matter of translating some words. My experience with localised codebases (in my native language) have been horrifying - like it or not terminology is developed in EN, you either get unnatural sounding "borrow" words and the translation is pointless or worse you get people coining new terminology nobody but them understands. Not…

> I dread every time I see Chinese in a codebase (simply because they are a large enough market to split the dev community) They aren't going to split it, the rest of us will adapt. English was arbitrary, so was French and Latin and Greek before it. Probably in the form of some Romaji-like equivalent (ideograms are too high a bar) but we will start to adopt it. The largest economy dictates the lingua franca because t…

> They aren't going to split it, the rest of us will adapt

Yup, but there's no real reason to go from one arbitrary language to another (and I'm saying this as someone who struggles to learn languages, and English was definitely not my first).

So it would be a straight set back (overhead of switching), for no real benefit (arbitrary to arbitrary).

Another big issue is the split in resources. Right now, anyone can learn English and get access to most programming resources. You can post your code online and get the majority of the programming community to help around the world. A long time (10 years+) ago, I was heavily involved in forums for a programming language that had a large amount of Chinese developers. They'd post their code, and to help them I'd have to start pattern matching symbols to try to figure out which function was which (or paste it in my IDE and use my IDE's tools to figure it out). It was suboptimal at best. Starting over with all the community building that's been done would be a major (if temporary) set back, in a field that reinvents the wheel way too much as it is.

I realize being able to learn English is a privilege, and requiring it acts as a form of gate keeping. But having everyone on the same natural language provides a fantastic global maximum (at the cost of gate keeping at the local level), and no matter which language it is, someone will have to learn it. Furthermore, asking people who went through the trouble to learn this one, to learn ANOTHER is even worse (if also temporary)

Re: Italian Ruby

#139

There's this absolutely mind bending idea that is - every single function should have a unique identifier. Which is to say: def square(x: Int): Int = x * x should get hashed (and if it has dependencies, they should get hashed in there, too), and your programming language should track the unique identity of this function, and keep a list of names separately from the hashes. This totally solves the localization problem…

localization problem? i believe that is an invented problem. why would anyone write code in his/her native language?

Re: Italian Ruby

#140
post #122

Earlier quoted context omitted.

No, that dictionary has lost all its authority with this, and no, I would not take texts related to IT as reference: those give the worst examples of bad translations. Take a look at this http://www.treccani.it/vocabolario/difetto/ The only use of "per difetto" that existed before a translation of "by default" was ever needed is in the expression "approssimazione per difetto", and the new meaning forcefully attached…

>The only use of "per difetto" that existed before a translation of "by default" was ever needed is in the expression "approssimazione per difetto", No, as said it is used in legal matters, example: https://www.brocardi.it/massimario/59534.html And you go tell this Italian professor: http://www.diit.unict.it/users/alongheu/linguaggi/aa0910/lez... The point is that it is actually correct in Italian, if you think about…

OK you were right, it is correct.

At first sight this (default = difetto) looked like so many careless anglicisms, where a faint similarity in sound and meaning induces someone into believing it is a translation.

And this happens really more than needed in technical texts. My point was that you cannot trust technical people to make good translations, an it is outrageous that a translation is considered correct just because it was written in a book. But this does not apply here.

I am making up my mind that this was instead a delicate and careful intellectual construction that dutifully just failed to convey the meaning.

So be it.

Post reply on HN