Video is tough stuff

Posted: March 8, 2019
Streaming video is super-impressive from a tech perspective.

The data-harvesting, time-stealing core of YouTube disturbs me; it's positively pestiferous in its social effect. Even so I stand in awe of the engineering skills that make it work, especially after trying to get video working on this site.

You see, video is not difficult to deliver over http. I can upload a video file and display it with no problem, but only in the most primitive way. As it turns out, there is a lot to think about -- encoding the files (FFmpeg has so many options that one could make a career of mastering it alone), storage concerns (you have to make at least three different files in your encoding process -- that adds up fast in terms of gigs needed for storage, and you really need to set up a whole new server just to serve the files if you're doing it correctly) queuing up and processing the tasks (Redis is incredibly powerful), bandwidth (if 2000 people watch a .5 GB stream, there goes your monthly allotment) and a bunch of other little things. All that says nothing of the front end of streaming the right file at the right size in the right format for the device of the user requesting the stream.

Long and short of it: they have built a technological marvel at YouTube. Granted, they've had hundreds of engineers on it for a decade, but it's still danged impressive when you crack open the hood to see how it works and start tinkering with it.

I just wish YouTube weren't such a time suck and that it didn't track us like tagged animals. Nothing is perfect, I guess.