A Facebook Bug story that is a lesson for any developer

Eduardo Soares
HackerNoon.com
4 min readJul 15, 2017

--

TLDR: A Facebook bug can cause a video to be deleted from a page that you manage without you doing anything wrong. You lose the video and the respective post it had, all likes, reactions, and shares linked to it. Facebook support doesn’t do anything to restore it.

Facebook really likes to push content, or at least it seems to. The last big thing that Facebook likes to promote is video. Video is like moving pictures, and if a “picture is worth a thousand words”, a video is probably worth even more!

The last effort to promote video by Facebook was to add them to a page cover section. When it is well executed it can look great.

Example of facebook cover image with a video

I manage a Facebook page with a few thousand of likes and an important video pushed a week ago. So I decided to try this new feature.

The process is quite straight forward click to change the cover, select existing video, position it, select the thumbnail and… publish! Well, except after that last click this happens:

Ups, it seems that Facebook can’t upload a video that is already in the video gallery?

What? What went wrong? The video was already on Facebook posted as public, it had no reason for anything to go wrong. But it failed, miserably, with a misleading error message. This video was on my gallery, I didn’t upload anything. So why did an upload fail?

As with any software, you are going to probably just try again the process (like the error box suggests) to see if the output is different. Except when you go to select the video, it’s not there anymore!

Tada! GONE! Deleted!

All the likes, shares, views, money in ads that you invested? Gone to waste!

Your video is removed by some mysterious bug that you don’t really recorded because content you’re not expecting it.

What can you do now?

  1. Contact support?

Well good luck finding any meaningful way to get a meaningful answer. You can try business support, and I did, but they were unable to help get the video back with the excuse that was user fault!

“They analyzed it and found that the post was deleted by a user. Unfortunately we are unable to restore it, once a user deletes content it becomes a permanent deletion.”

2. Publish the video again! But all the “reactions”, shares, comments, and views that you got even with money invested, are now missing.

What this teaches to a software developer

Learn to value people’s content. Even if people explicitly delete a piece of content, give them an option to undo the action just made.

Remember the trash can?

Mobile developers probably already learned this. Give easy access to powerful features, like a swipe to delete/archive, but with a quick way to revert it in the case of an action made by mistake:

A prime example of what mobile does that should be more common: a quick and easy UNDO button

Lessons that I hope if someone from Facebook or any other platform would take from this text:

  • No error should delete people content;
  • Even if people explicitly delete content, there should have a way to recover it (there was been a trash folder in every computer for decades…);
  • Be quick to accept your mistakes even if you can’t fix them.

This last point is probably for me, as a user, the most important. From all interaction with the support team I got zero acknowledgement that they saw the video that I made replicating the issue, or was an already known issue. They didn’t apologise for the bug, only for the inconvenience, which is not the same…

A couple of extra notes:

  • I replicated this bug four times in a different Facebook account, with two different pages, with two different videos. The screenshots with the error and the missing video was from one of those experiments.
  • For those who would read this and think, “He is just making this up in order to Facebook support flips some switch and return the content that he accidently deleted” I can provide a video replicating the described issue. (I also have the HTTP request that server responded with an HTTP status code 500.)

--

--