Saving My Company’s 860 Custom Emojis with AI
My company, ParkHub, recently underwent the financial portion of a merger with a similarly sized company called JustPark. There’s a ton of headache when it comes to merging two companies, not the least of which is smooshing together the communications systems like gmail and Slack.
To be clear, this is not a guide of any significance for merging two multi-million dollar companies. It’s simply a fun little project showing how you can use AI to knock out tedious tasks MUCH faster.
The Problem
ParkHub’s Slack is to be merged into JustPark’s Slack. Unfortunately, when slacks are merged, the custom emoji’s are not preserved and ported over. In my seven years at ParkHub we have made 860 emojis.
It’s silly, but these emoji’s are honestly kind of important in the company culture. We have a full shrine of emojis dedicated to our former CTO. We have completely illegible screenshots of slack messages where one of our developers said something memorably silly. We have the answer to life, the universe, and everything, neatly explained in a few pixels. We have Tom Hanks! It would have been very sad to lose all this.
So I decided to enlist my robo-intern, Chat-GPT.
Onboarding my Robo-Intern
Chat GPT’s work performance did not meet expectations at first. I did a simple copy past of the above screen for all 860 emojis and pasted them into a text file. I uploaded .txt file and asked it to export a csv with the URLs to the .png, .jpg, and .gif files for me. It struggled…
It took five tries of prompting it to get the right result. I had to feed it some snippets of the .txt file with some training prompts to let it fix its own algorithm.
The self-checking system in GPT-4o is incredible. When I finally gave it an easier training set like this, it responded 5+ times, each time checking it’s answer against the data set and tweaking its solution!
Here was my last prompt to get the right answer:
still nothing in the csv. Can you try with this sample bit of text first?

**:0_:**
October 25th, 2022
H Lowe

**:100percent:**
December 5th, 2019
Dan

**:1579024502624:**
January 23rd, 2023
W Jones

**:1up:**
September 10th, 2021
ɡɹɛɡ

**:1_:**
December 14th, 2023
Robo Intern, please click these 860 links and download them into a file…
Now that I had all the links I could
- click each link, download the file, and rename it
- write a script to do this
- ask my robo intern to write a script to do this.
I chose the latter:
#!/bin/bash
# Define the CSV file
CSV_FILE="full_emoji_data.csv"
# Output directory for downloaded files
OUTPUT_DIR="emojis"
mkdir -p "$OUTPUT_DIR"
# Read the CSV file line by line (skip the header)
tail -n +2 "$CSV_FILE" | while IFS=, read -r Label URL EmojiName Date Uploader; do
# Clean the label for safe file naming
CLEAN_LABEL=$(echo "$Label" | tr -d '"' | sed 's/[^a-zA-Z0-9_-]//g')
# Determine the file extension (e.g., png, jpg, gif)
EXTENSION=$(echo "$URL" | grep -oE '\.[a-zA-Z0-9]+$' | tr -d '.')
# Download the file if URL and Label are not empty
if [[ -n "$URL" && -n "$CLEAN_LABEL" ]]; then
curl -s "$URL" -o "$OUTPUT_DIR/$CLEAN_LABEL.$EXTENSION"
echo "Downloaded: $CLEAN_LABEL.$EXTENSION"
else
echo "Skipping entry: Label or URL missing"
fi
done
echo "Download complete. Files are in the '$OUTPUT_DIR' directory."
The script wasn’t perfect since it downloaded an extra version of each file, but it got the job done!
Success!
I now have a copy of all of our company’s emojis on my computer and know that that part of our company culture will survive the merger. If you’re new to using AI tools like ChatGPT or Claude, I highly recommend you take some time to learn how to use them and understand their limitations/imperfections! Your robo-interns may save you some serious time.