Glossary for Serbian

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 keyword function 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.