Popcorn Time Should Become a Browser programming

I am not a lawyer. This is not legal advice.

Popcorn Time-style video streaming apps seem to be vulnerable to legal action by rightsholders.

For example, the popcorntime.sh domain was recently suspended, and the operator of a site which merely provided information about how to obtain and use Popcorn Time was sentenced to prison.

Although given that Popcorn Time's servers do not themselves host infringing content this may seem a bit unfair, it is simply the reality of the world we live in.

It is interesting to note, however, that although web browsers can be used in exactly the same way as Popcorn Time, namely searching for and viewing copyrighted movies, the developers of web browsers have thus far not faced successful legal challenges.

I believe that there are two major factors that differentiate Popcorn Time from web browsers, and contribute to Popcorn Time's legal vulnerability:

  1. Upon opening a web browser, the user must supply the URL of the site they wish to visit. Compare this to Popcorn Time, where upon opening the application for the first time, the user is immediately presented with a selection of unlicensed Hollywood movies to download.

    This difference greatly weakens Popcorn Time's claims against contributory copyright infringement. The developers of Popcorn Time cannot credibly claim to be ignorant to the types of movies that their users are downloading, whereas a web browser developer can credibly claim that the choice of website to visit is always left to the end user.

  2. Web browsers have substantial non-infringing uses. "Substantial non-infringing use" is jargon for a legal test used in the United States which protects the creator or purveyor of a piece of technology from liability for its use in infringement by users if that technology has "substantial non-infringing uses". For the canonical example, see Sony Corp. of America v. Universal City Studios, Inc..

Whereas a web browser provider can rightly claim that there are many websites, and it's possible an infringing one might slip in, there would be no way of knowing, the popcorn time developers cannot claim the same. There is a single, fixed Popcorn Time backend, run by the Popcorn Time team, serving the same search results to every user.

Fortunately, even given the above, I believe that Popcorn Time could implement a small number of strategic changes that would allow it to withstand future legal aggression:

These changes would be simple, have a minimal impact on the current (quite excellent!) user experience, and leverage interaction flows, i.e. a URL bar, that users already understand.

Additionally, the Popcorn Time team should create an official default search backend which focuses exclusively on free, non-infringing, user-created content.

These steps would, I believe, nicely protect the developers and distributors of Popcorn Time from further legal challenges:

In short, Popcorn Time should become a browser, and then all those lawyers and their handlers can go pound sand.


Unix Utilities in Rust for Great Success programming

I've often been asked for suggestions for an appropriate first project in Rust, and I think that writing a version of a unix utility is a great choice, for a bunch of reasons!

I think whether you start with the book or a project like this depends on the learner.

I much prefer to jump in and struggle mightily, so I started with a project like this (what eventually became just), but I think a lot of people might prefer to start with the book, or at least parts of the book.


New Rustacean Resources programming

Delinearization programming

Programs first crawled from the murky oceans as simple lists of instructions that executed in sequence. From these humble beginnings they have since evolved an astonishing number of ways of delinearizing.

In fact, most programming paradigms simply amount to different ways to transform a linear source file into a program with nonlinear behavior.

Some examples: