I like work video messages
According to my Slack, I've sent 477 messages with demo videos since joining Zoo last March; about three quarters of a video per day. I know they have their limitations, but at this point in my career with this small-but-global team, I have survived on exchanged demo videos.
A video accompanied by a concise written description is, in my opinion, the most effective ephemeral work communication format at the moment. I've been able to ask for help in in-progress work, report bugs, avoid meetings, and demonstrate my understanding of features I'm working through. A video is worth between 30,000 and 60,000 words per second, depending on the frame rate.
Here's a feature demo:
Here's a little issue report during a code review:
I have the Slack video button to thank for a lot of this. It's such a nice little feature! Being to take up to 5 minutes of video right alongside my message, with an optional face cam in the lower right corner if I feel like it. I have an OBS setup that is decent, but I haven't found anything that beats a Slack for a quick no-nonsense video (if you're not using your Linux machine, RIP).
The other half of my setup is a small shell script to compress my last-downloaded video. This makes it easy for me to capture a video with Slack, download it, then run my compress_last
command to prep it to attach to a GitHub pull request for a demo or to an issue for a hard-to-articulate point about CAD UX. Here are my scripts in case you find them useful; they wrap ffmpeg
of course:
# The generic command can run my default compression
# on a passed-in path to a video file
compress() {
FILENAME=$(basename $1)
FILENAME_NO_EXT=$(echo $FILENAME | cut -d '.' -f 1)
OUTPUT_FILE="$FILENAME_NO_EXT"-compressed.mp4
echo "Compressing $1 into $OUTPUT_FILE"
ffmpeg -i $1 -vcodec h264 -c:a libopus -movflags +faststart $OUTPUT_FILE
}
# This function makes it easier for me to quickly
# compress my last-downloaded file with `cd ~/Downloads && compress_last && cd -`
compress_last() {
LAST_FILE=$(ls -t | head -n 1)
compress $LAST_FILE
}
# A function to convert any video file type to mp4.
# I don't use it much, but one neat thing is
# it maintains the same creation date as the original
2mp4() {
echo "Converting $1 to mp4"
FILENAME=$(basename $1)
FILENAME_NO_EXT=$(echo $FILENAME | cut -d '.' -f 1)
OUTPUT_FILE="${2:-$FILENAME_NO_EXT}".mp4
ffmpeg -i $1 -movflags use_metadata_tags -vcodec h264 -acodec mp2 \
$OUTPUT_FILE
# Copy creation date
# Based on https://unix.stackexchange.com/a/492338
exiftool -tagsFromFile $1 $OUTPUT_FILE -overwrite_original
CREATE_DATE=$(exiftool -s3 -CreateDate -d "%Y%m%d%H%M" "$1")
echo $CREATE_DATE
touch -t $CREATE_DATE $OUTPUT_FILE
}
Whatever your work setup is in Slack or something else, I'm just writing this to say I think it's worth spending a short time to curate a way to effortlessly create videos alongside your work communications. I think you communicate many things at once with little videos like this, leading to a dense format. Plus in a remote team, it helps to see or hear glimmers of each other's humanity, even if it's just how each other moves a mouse around the screen while showing you some gnarly bug.