hlx

hlx

I’m wondering if any of you are working in a non-English Elixir codebase and how you deal with it especially if you are not proficient in the language the code is written in (German in this case).

Few months back I started working in a non-English codebase and while I consider myself a pretty okay developer, I struggle a lot because I’m not proficient in the language the code is written in.

Luckily my team consists of fellow developers who are also not proficient in the language and we tend to write comments above the function name in English every time we touch a particular piece of code and have plans to translate (most of) the codebase into English.

I have tried plugins like DeepL or Google Translate inside my editor but it just does not feel right.

Any tips? Please share :wink:

Edit: clarification that it’s an Elixir codebase written in German

Showing Posts 1 to 10

dimitarvp

dimitarvp

What do you mean by non-English codebase? Maybe that function and variable names are written in another living language e.g. Italian / Spanish / French / German?

hlx

hlx OP

Yes, it’s Elixir but everything is written in German.

dimitarvp

dimitarvp

I would give you the normal recommendations of just using Google Translate or pair with German-speaking colleague but I am positive you already thought of that.

So maybe ChatGPT? :thinking:

hst337

hst337

All the companies my friends or I worked in, which had non-English codebase, were a complete garbage. So my tip is to refactor and translate all of it at once or leave the company

Cochonours

Cochonours

That’s a ridiculous take. Plenty of English codebases are garbage too, and if teams working on that codebase don’t understand English this tip can’t be applied anyway.

sbuttgereit

sbuttgereit

I’ve had to do something similar once. I had a gig where I had to migrate the data from one ERP system to another, but the source ERP system code (names, etc) were all in French and I didn’t have access to any technical resources familiar with the source ERP system to call on… and I don’t speak any French at all.

So I did as @dimitarvp has suggested and used online translators. I did three things to get through: 1) I’d take words from the code and translate them; 2) I’d take the English names (I speak English natively) of the concepts I knew should be in an ERP system and translate those into French; 3) I used multiple online translators since different translators might give me different answers (and thoroughness).

Items 1 and 2 above helped where the French words had been abbreviated in some way for brevity and so couldn’t be translated directly from what was in the code.

In the end I got through it and it wasn’t that bad. Mind you I did have that advantage of really knowing the kinds of things that should be there, being able to evaluate if the data matched my assumptions, and I also had an English UI that I could validate against as well.

hst337

hst337

No, it is not. Code is a text which is designed to be understood by machines and humans. If you write your code in your native language, you make it hard to understand for those, who do not speak this language.

I used to work in teams where 100% of devs, users and managers were Russian-speaking, and we still wrote our program in English, because writing transliteration or using Russian terms (even though Russian language has it’s own broad and deep software development vocabulary) in English programming language would result in a mess nobody would understand. Even if we wrote everything in a Cyrillic alphabet and wrapped every dependency into Russian language wrapper, we would still have an ugly fusion of two languages.

I didn’t say that every English codebase is good.

I am sorry, but how do they program in Elixir? Language constructs, documentation, tutorials, libraries, maintainers, conferences: all in English. How do they explain what does the Supervisor or GenServer mean?

I started programming when I was a kid and I didn’t know any English back then, so I learned terms and gave them my own special meaning (I can sometimes pronounce “header” as “heedr”). But when I learned English, it all finally connected together like a huge puzzle. I understood that I had know only like 50% of what actually was meant in the first place.

If you program in Elixir without knowing English, you’re just combining magic words with a hope that this time it works

ken-kost

ken-kost

Such overhead. :tired_face: Did you at least get paid more because of the extra work?

I read online

It’s considered best practice that code is written in English

and I agree with that. It makes sense since programming languages are a special form of language so the underlying base - just language - should be consistent. I can understand why some people would prefer writing in their mother tongue, just wouldn’t consider it “best practice”. :cowboy_hat_face:

sbuttgereit

sbuttgereit

On yeah, the gig was time and materials and it wasn’t unexpected by the client either; they had warned me in advance that they knew a lot of the underlying stuff was all in French.

…and I keep saying “French”… it actually the Québécois variety of Canadian French; not a big difference for what I was doing, but something that needed to be considered when consulting the online translators.

derek-zhou

derek-zhou

In code, broken English is still better than poetry in other languages. A program is a piece of writing that is utilitarian to the extreme; your audience is the world and no one is going to translate for you.

Where Next? Top

Trending in Discussions Top

AstonJ
As the title says, please share what you’ve been up to with Elixir. Whether that’s been learning it, looking into it, making stuff with i...
2977 94592 917
New
cblavier
Hey there, It’s been more than a year since we started using LiveView as our main UI library and building a whole library of UI componen...
New
caslu
I want to open this thread for you all to discuss and help those who really like Ash but are still hesitant to use it in a real project. ...
New
mudasobwa
I am happy to introduce the very α version of the new programming language compiled to BEAM. Welcome Cure. It has literally three kille...
New
heathen
Quite interesting article Google brought me. Didn’t find any mentions about it here. What do you think in general? Would you use togethe...
New
marciol
It would be helpful to have a list of companies worldwide that hire engineers without prior experience in Elixir. Often, it can be quite ...
New
durvia
Anyone running long-lived stateful processes on BEAM? We’re building an AI agent runtime and would love to compare notes. We’re a small ...
New

Other Trending Topics Top

marciok
Hi there! We created Gust: A task orchestrator inspired by Airflow. For those who have never heard about Aiflow, it’s a Python-based wor...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Dmk
Xamal is a deployment tool for Elixir apps that deploys native releases to bare metal servers over SSH. It’s a port of GitHub - basecamp/...
New
Damirados
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve. They are GUI (Emerge) and State management (S...
New
netoum
Corex is an accessible, unstyled UI component library for Phoenix that integrates Zag.js state machines using Vanilla JavaScript and Live...
New
webofbits
Aludel - LLM Evaluation Workbench Aludel is an embeddable Phoenix LiveView dashboard for evaluating and comparing LLM prompts across mult...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews