I made a comment on this SO question some days ago:

Are you trying to just overwrite the data at the beginning of the file or insert new data without losing the data that is already there?

Some of the answers had the word prepend (eg: "To prepend data: ...").

Looking for a translation of prepend to Portuguese (pt-BR), I find it as "anteceder" or "preceder".

I think the word "anteceder" in Portuguese, is most related to time (eg: "something will happens before that time"), and "preceder" is most related to a kind of priority or to describe a grammar rule, but not to files (or data in this case) on a computer system.

On Babylon, I found the translation of prepend as "acrescentar ao começo", which sounds like append to the beginning and it also showed me the definition in English: add something at the beginning (slang, the opposite of append)", which makes sense ("the opposite of append").

In a technical context, must I use the word prepend for a better understanding or if I write "insert in the beginning" or "add new data to the beginning" is it OK for an English reader?

  • 1
    "insert in the beginning" sounds wrong, I would use "insert at the beginning" if you wished to use that phrasing. That would be correct but would sound a little stilted.
    – Vality
    Feb 27, 2016 at 4:34

4 Answers 4


Prepend refers to "attach/insert before" (at the beginning), while append refers to "attach/insert after" (at the end).

The translations you describe seem to be more focussed on time, which sounds more like they are a better fit to the word "precede" (e.g. the main course precedes desert).

Whether you choose to use the single word or the phrase, it is a decision you must make while balancing being concise/precise with your language at the risk of miscommunicating (not everyone will fully understand the term), versus being more verbose but more easily understood.

As noted in other answers/comments, append/prepend are commonly used within computer science/software development (common in code libraries) but not necessarily in everyday speech, indicating that your audience will influence your decision too.

  • Thank you! Just for clarification: at SO or some computer forum, for example, where posts are fast and informal, use prepend is better and precise (as noted in others extremely helpful answers/comments). But in case, say, if I'm writing a technical text within computer science's area (e.g. an academic article or even a formal e-mail to a Dr. or PhD) maybe it's better (more formal and/or polite) if I write the more verbose form. Am I right with this interpretation?
    – Gomiero
    Feb 28, 2016 at 4:31

You can use "prepend" in such cases, but it's not usually preferred. It sounds a bit pretentious (except in some technical contexts), and the word is not widely prevalent (same). (It doesn't even show up in Firefox's spell checker.) Your plainer versions are preferable unless you really need to be as brief as possible.

A note on prepositions, though: "insert at the beginning" is better than "in", since "at" carries a connotation of a precise spot, rather than "in"'s general area.

I couldn't resist the slight alliteration of using "pre-" words….

  • 4
    While "prepend" may not be all that common in ordinary conversational English, it is rather common in computer programming. Feb 26, 2016 at 23:52
  • 3
    It doesn't sound pretentious to me in a programming context. It sounds normal.
    – user230
    Feb 27, 2016 at 0:11
  • 1
    @NathanTuggy: English is not a language in which there is an "only acceptable term" for anything.
    – Kevin
    Feb 27, 2016 at 6:58
  • 1
    @Kevin: Fair enough. That's mostly my point; there's no requirement to use "prepend", and I'd argue it's not even necessarily the best choice, except in certain cases (like method names, but see the DOM for alternate choices there). But it's certainly not wrong to use it in a context where it can plausibly be understood. Feb 27, 2016 at 7:00
  • 1
    @NathanTuggy: There is never a requirement to use anything. However, OP does seem to be asking primarily about technical contexts, which your answer addresses as an afterthought.
    – Kevin
    Feb 27, 2016 at 7:03

In a technical context, I must use the word prepend for a better understand or if I write "insert in the beginning" or "add new data to the beginning" is ok for an English reader?

(Note: "I must use the word prepend for a better understand?" => "Must I use the word prepend to be better understood?")

Since the file system has no concept of "prepending" at a mechanical level (the way a linked list in memory might), it isn't a complete fit. But it could certainly work.

To avoid using it, then beginning is a somewhat vague word. "The beginning of a file" could refer to an entire header section--not necessarily before the very first byte.

The term "head" is used to precisely mean the very absolute front of something. So you'd likely hear "insert data at the head of the file" over "insert data at the beginning of the file", because it is less ambiguous.


In a technical context, I'd definitely go with append/prepend. It's pretty well known what they do, and it's much shorter/clearer to read. Actually, most programming libraries have append/prepend functions. See for example:


Maybe in a learning-to-code or beginner type of text it might be easier for the reader to understand "add to the beginning", but in an advanced computer science text definitely would sound unnecessarily "dumb down", and in my opinion, weird.

  • See comments on my answer; the API name is shorter, following the general rule that character counts in names are important, but the actual description heavily uses alternate phrasings to get across important details. Feb 27, 2016 at 3:45
  • I'd disagree with the: "the general rule that character counts in names are important,". Maybe with older programming languages but with newer ones that's not the case. Preciseness nowadays is more important. (they didn't go with .addToTheBeggining() because that's what .prepend() means) And regarding the alternative phrasing, is what most dictionaries do to describe a word. That doesn't mean that the word lacks meaning.
    – jpablobr
    Feb 27, 2016 at 4:11
  • i is better than indexerOfCurrentLoop; prepend is better than insertElementBeforeOtherElement, whether or not you're limited to six characters, and whether or not you have auto-complete. But that's getting pretty far off track. Feb 27, 2016 at 4:15
  • That's just your opinion. Not "the general rule". And it isn't off track since it justifies "prepend" being a well-understood word. And I agree with what others are saying in your answer: It doesn't sound pretentious.
    – jpablobr
    Feb 27, 2016 at 4:21

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .