One of the most crucial steps in translating Jiki is determining the right terms to consistently use throughout. Generally these are technical terms, or terms used in the Jiki analogies. This is a thread, intended to go on forever, where we can highlight incorrect terms and agree correct variants.
This is the initial set of terms we propose for Serbian. We will keep this list updated as we update it internally.
Terms we translate into Serbian
These are terms where the Serbian is used in prose. The “Clarify” column specifies whether terms get an English version in brackets on their first use, e.g. “petlja (loop)”. Split by theme for readability; every table below follows the same columns.
Values & data types
English
Serbian
Clarify?
Notes
value
vrednost
no
Ordinary word.
number
broj
no
Ordinary word.
true / false
tačno / netačno
no
Not capitalised in prose.
character
karakter
yes
Loanword; established in Serbian beginner CS material (Petlja).
integer
ceo broj
yes
Also “celobrojni tip” for the type name specifically.
float / decimal
broj sa pokretnim zarezom
yes
Or “realni tip” when the type name (not the value) is meant.
array / list
niz
yes
First use: “niz (array)”. The established CS term; see also “chain” under Jiki physical metaphors for the teaching metaphor used alongside it.
dictionary
mapa
yes
element
element
yes
“element niza” = array element.
index
indeks
no
Transparent cognate; stands alone.
data type
tip podataka
no
Transparent compound once introduced.
Functions & control flow
English
Serbian
Clarify?
Notes
if statement
if naredba
yes
First use: “if naredba (if statement)”. Keep if in backticks/inline code as the real keyword; “grananje” (branching) is the natural word to use in prose when talking about the general concept of conditional branching, not the specific statement.
condition
uslov
no
Ordinary word; stands alone.
comparison
poređenje
no
Ordinary word; stands alone.
expression
izraz
no
operator
operator
no
Loanword, fully naturalized.
statement (executable)
naredba
yes
The imperative sense: a line of code that does something and gets executed.
statement (logical claim)
iskaz
no
The proposition sense: a claim that is true or false. Keep distinct from “naredba” above; pick by meaning, not by the English word.
function
funkcija
yes
The keywordfunction in code stays English; the concept in prose is “funkcija”.
to call (a function)
pozvati (funkciju)
no
to define (a function)
definisati
no
input (to a function)
ulaz
yes
First use: “ulaz (input)”.
output
izlaz
yes
First use: “izlaz (output)”.
to return (a value)
vratiti (vrednost)
no
return value
povratna vrednost
no
parameter
parametar
yes
The declaration-site name.
argument
argument
yes
The call-site value; used somewhat interchangeably with “parametar” in casual Serbian dev speech, but keep them distinct per the glossary discipline.
pure function
čista funkcija
no
Transparent compound once “funkcija” is clarified.
Loops, state & program flow
English
Serbian
Clarify?
Notes
keyword
ključna reč
yes
Transparent compound, but still worth clarifying once.
variable
promenljiva
yes
Feminine gender; “nova promenljiva”, “promenljiva je definisana”.
assignment
dodela (vrednosti)
yes
to assign
dodeliti
no
code block
blok (koda)
yes
“blok” is itself a loanword; “telo funkcije” for the function-body sense specifically.
error
greška
no
exception
izuzetak
yes
Distinct from the general “greška”; the catchable-error-object sense.
nested
ugnežden(i)
no
Native metaphor (from “gnezdo” = nest), already the standard term, e.g. “ugnežđene petlje” (nested loops).
iteration
iteracija
yes
Loanword.
to run / execute (code)
izvršiti / pokrenuti (kod)
no
loop
petlja
yes
First use: “petlja (loop)”. Also the name of Serbia’s national CS-education platform (Petlja.org), so it’s well-established and iconic, not just a textbook coinage.
for loop
for petlja
yes
Keep for in backticks (real keyword) + “petlja”.
while loop
while petlja
yes
As above.
for-of loop
for-of petlja
yes
As above.
loop body
telo petlje
no
break (loop control)
prekid (petlje)
no
The keyword break itself always stays English in code; this is the prose concept.
increment
uvećanje
no
Native, transparent (“increase”); “inkrement” is also used in more academic registers but “uvećanje” reads better for a beginner audience.
modulo / remainder operator
ostatak (deljenja)
no
“The remainder of division”; transparent, no clarify needed.
concatenation / to concatenate
spajanje (nizova)
yes
First use: “spajanje (concatenation)”.
toggle
preklopiti
no
To flip a value between two states.
state / stateful
stanje
no
scope
doseg
yes
First use: “doseg (scope)”. Keep distinct from “blok” (code block) above.
class
klasa
yes
Loanword.
method
metod
yes
Masculine (“metod”, not “metoda”); some Serbian sources use the feminine “metoda” instead, but pick “metod” and use it consistently.
property
svojstvo
no
Ordinary Serbian word for a characteristic/attribute; stands alone.
object
objekat
yes
Loanword, fully naturalized; masculine.
encapsulation
enkapsulacija
yes
Standard OOP loanword. Real Serbian course material sometimes frames the concept with a “cocooned data” image (“učaurena podaci”, from “čaura” = cocoon/casing); that’s a nice explanatory aside but “enkapsulacija” is the term to use consistently.
Tooling & engineering
English
Serbian
Clarify?
Notes
workflow
radni tok
yes
First use: “radni tok (workflow)”. The software-engineering sense (a sequence of dev tasks), distinct from “curriculum” below.
auth: authentication
autentifikacija
yes
Verifying identity.
auth: authorization
autorizacija
yes
Verifying permissions; keep distinct from authentication above.
deploy
deploj
yes
First use: “deploj (postaviti u produkciju)”. Colloquially verbed as “deplojovati” in Serbian dev speech; low-confidence, worth a native developer’s sanity check.
tool / tooling
alat
no
Ordinary, transparent word.
module
modul
yes
Loanword.
algorithm
algoritam
yes
Long-established loanword, but still worth clarifying for a first-time beginner reader.
edge case
granični slučaj
no
Transparent native compound (“border/edge case”).
backwards compatibility
unazadna kompatibilnost
yes
First use: “unazadna kompatibilnost (backwards compatibility)”.
Platform & curriculum vocabulary
English
Serbian
Clarify?
Notes
feature (platform capability)
mogućnost
no
Deliberately not “funkcija” — that word is reserved for the CS “function” concept; using it for “feature” too would create exactly the kind of collision global/terms.md warns about.
lesson
lekcija
no
exercise
vežba
no
scenario
scenario
no
curriculum
kurikulum
yes
First use: “kurikulum (curriculum)”. Distinct from “radni tok” (workflow) above; this is the curriculum-structure sense.
level
nivo
no
milestone
prekretnica
no
Native, transparent (“turning point”).
pathway
putanja
yes
Keep distinct from “staza” (track) below; both mean “path” but are assigned to different concepts.
bootcamp
bootkamp
yes
Phonetically adapted loanword.
syllabus
silabus
yes
Established loanword in Serbian academic usage.
mentor / mentoring
mentor / mentorstvo
no
Established loanword, fully naturalized.
track (curriculum path)
staza
yes
Keep distinct from “putanja” (pathway) above.
tutorial
tutorijal
yes
Loanword.
solution (learner’s submission)
rešenje
no
Ordinary word.
canvas (graphics exercises)
platno
yes
First use: “platno (canvas)”. The drawing-surface sense specifically.
foot-gun
opasna prečica
no
Descriptive phrase, not a fixed idiom; no clean one-word Serbian equivalent was found. Flagged for native-speaker review; Serbian does have the idiom “pucati sebi u nogu” (to shoot yourself in the foot) which may be worth workshopping into a punchier term later.
Terms we keep in English
These stay in English in prose. Give the Serbian gloss once on first use in a document.
Term
Serbian gloss (first use only)
Notes
string
“niska”
Practitioner Serbian material (Petlja) uses “string” directly in prose; “niska” is the more academic/purist term, used only as the one-time gloss.
Boolean
“logička vrednost”
On first appearance, explain it means “logička vrednost”, then use “Boolean”.
API
explain the concept in Serbian, not just the acronym
Not a word a beginner knows; first use must explain what an API does (“skup pravila koja omogućavaju da dva programa međusobno komuniciraju”), not just gloss the letters.
framework
“radni okvir”
First use: explain it means “radni okvir” (working framework); may then use either “radni okvir” or “framework” (Serbian technical writing sometimes phonetically respells this as “frejmvork”, but plain English “framework” is also fine).
CLI
“komandna linija”
First use: explain CLI as “komandna linija” (command line), then use “CLI” or “komandna linija” interchangeably.
component
“komponenta”
First use: “component (komponenta)”. Use “komponenta” freely after that; it’s fully naturalized Serbian tech vocabulary.
JavaScript, Python, React
(no gloss)
Product/language names.
Debug, Test
(no gloss)
As keywords/technical tokens.
Code, Bug, Frontend, Backend
(no gloss)
Variable and function names
(no gloss)
Never translated.
CLI commands (npm install, git commit)
(no gloss)
The commands themselves are never translated.
Jikiscript / programming keywords (repeat, function, if, for, …)
(no gloss)
Always English, including inside prose. Translate only the surrounding explanation.
Jiki teaching metaphors
Load-bearing teaching terms. Use exactly the agreed rendering; never substitute dry technical language.
English metaphor
Serbian rendering
Notes
box (value container)
kutija
Directly attested, independently, in two real Serbian CS-education sources with phrasing remarkably close to Jiki’s own (“a value is thrown out of the box and a new one written into it”). High confidence.
chain (array metaphor)
lanac
Used as the explanatory teaching image (a chain of linked boxes) alongside the technical term “niz” for array, the same way Hungarian keeps both “lánc” (chain, metaphor) and “tömb” (array, technical term).
input slot
ulazni otvor
Constructed from “ulaz” (input, agreed term above) + “otvor” (an opening/slot). No existing Serbian precedent found; flagged for a native-speaker check on first real use.
return chute
izlazni žleb
Constructed from “izlaz” (output, agreed term above) + “žleb” (a groove/chute). No existing Serbian precedent found; flagged for a native-speaker check on first real use.
machine (function metaphor)
mašina
Plausible and low-risk (vending/factory-machine imagery is culturally universal), but unattested in existing Serbian CS-education material; flagged for a native-speaker check on first real use.
shelves (storage)
police (sing. polica)
Directly attested: a real Serbian CS lesson diagram is captioned “variables in an array are like boxes on a shelf” (“kutije na polici”). High confidence.
whiteboard (a function’s internal notes)
tabla
Plain, low-risk word for whiteboard/blackboard; unattested as a Jiki-specific metaphor but no reason to expect it not to work.
Please use this thread to discuss any changes or additions you think should be made. Please do NOT use LLMs to generate suggestions and only use your own personal knowledge.