The team's machine is assuming a default encoding when opening the CSV in an editor, then on save is replacing non-ASCII characters with ?
placeholders.
Explanation: Emojis are 2 4-bit characters... 2*4 = 8 bits, that's why it's UTF-8, meaning Unicode Text Format 8-bit. It's a newer format, machines will often assume ASCII characters (a-zA-Z0-9!@#$%^&*()_+
, etc.)
Here is the Excel program on my machine defaulting to an ASCII format when opening a CSV:
Since I'm not opening the CSV file in a text editor defaulting to UTF-8 support, the program will have an algorithm to replace sequences of bits it doesn't understand. In the case of emojis, like the smiley face 😀, what the machine sees is actually the tear-jerking sequence of bits as follows: \U0001f604
, which is actually two blocks of sequences (that make up the UTF-8 character). If I were to open the text file in a program that expects UTF-8 characters by default, like Visual Studio Code, it would