Even if pretty much all popular languages are based on English, you do not have to learn English first. There aren’t that many keywords to begin with and your variables, functions and comments can be any language you want to. The hard parts of learning a language, like grammar, conjugation, pronunciation etc. all aren’t needed.
That being said, English still is the agreed upon language and people probably won’t contribute much to projects in other languages and you can’t read most documentations.
Realistically you will always need to be able to read documentation for:
Your language
Your compiler
Your platform
The APIs you’re calling
All of this will be in English even if your project is in another human language. Yes there will be translation for some of it available but it will be partial, incomplete, dated, etc. you’ll be using English so much anyway and have people from other countries working on the code regardless that you’re adding a needless barrier using a different national language.
I would say the largest loss for a non English speaker is not having the full context of the method and variable names, as well as the comments or API descriptions within the source code. My friends from Mexico all mention English is a requirement on basically any university offering computer science/engineering.
Edit: you can always use google translate, but that will inflate the time required.
Thanks to more and more languages supporting full unicode for symbols this will eventually be a thing of the past, fortunately: we can just switch to functions and variables being named only with one or more descriptive emojis.
Even if pretty much all popular languages are based on English, you do not have to learn English first. There aren’t that many keywords to begin with and your variables, functions and comments can be any language you want to. The hard parts of learning a language, like grammar, conjugation, pronunciation etc. all aren’t needed.
That being said, English still is the agreed upon language and people probably won’t contribute much to projects in other languages and you can’t read most documentations.
Realistically you will always need to be able to read documentation for:
All of this will be in English even if your project is in another human language. Yes there will be translation for some of it available but it will be partial, incomplete, dated, etc. you’ll be using English so much anyway and have people from other countries working on the code regardless that you’re adding a needless barrier using a different national language.
Look at the French government open source codee for instance. The overall website is in French but the actual repos are covered and mostly seem to be in English
I would say the largest loss for a non English speaker is not having the full context of the method and variable names, as well as the comments or API descriptions within the source code. My friends from Mexico all mention English is a requirement on basically any university offering computer science/engineering.
Edit: you can always use google translate, but that will inflate the time required.
Thanks to more and more languages supporting full unicode for symbols this will eventually be a thing of the past, fortunately: we can just switch to functions and variables being named only with one or more descriptive emojis.
Emojis as identifiers? That seems like an outdated solution. We really need gifs for that.