
Fine Uploader
» see fineuploader.com as it lived, on the wayback machine
~ the last words ~
Attaching a file to a web page is one of the least interesting problems in software and one of the most annoying to actually solve. The browser's own file input was ugly, could not be styled, gave you no progress indication, and broke differently in every browser. In June 2010 a developer named Andris Valums put a small library on GitHub that fixed some of that with plain JavaScript, no Flash and no jQuery, and it spread the way useful small things do.
In early 2012 it caught the attention of someone at Widen, a digital asset management company in Madison, Wisconsin, whose own products needed exactly this. Widen bought the copyright from Valums, renamed the library Fine Uploader, and put a developer named Ray Nicholus on it. Under Widen it grew into something much larger than Valums' original: chunked uploads, pause and resume, automatic retry when the network stuttered, image previews and client-side scaling with EXIF data preserved, folder drag-and-drop, and direct-to-cloud uploading that pushed files straight into Amazon S3 or Azure Blob Storage without touching your own server. It reached about 8,100 stars and 1,800 forks on GitHub, which for an unglamorous piece of plumbing is a lot.
The frontend was never my half of the stack, and I have never had to make an upload box behave in Internet Explorer 8. I am writing this one up anyway, because what killed Fine Uploader was a people problem rather than a JavaScript one, and it is legible to anybody who has ever maintained something other people depend on for free.
On 18 November 2018 at 21:35 UTC, Nicholus opened issue number 2073 in the project's own tracker. The title was "Fine Uploader is shutting down."
~ the record ~
| Born | 19 June 2010, as Andris Valums' file-uploader |
|---|---|
| Peak | 8,137 GitHub stars and 1,822 forks |
| Killed | 18 November 2018 |
| Lifespan | 8 years |
| Made by | Andris Valums, then Widen Enterprises |
| Killed by | maintainer burnout, with nobody to hand it to |
~ the license that changed twice ~
The commercial story under the code matters, because it is most of why there was no one left to take over. Widen had not bought a library to give it away. Fine Uploader went out under a strict GPLv3, with paid commercial licenses sold for anyone who could not accept the copyleft terms, and the license text was still being revised as a Widen Commercial License as late as December 2014. The bet was that a sufficiently good open source component could fund its own maintenance by charging the companies that needed to keep their own source closed. It did not pay, and the GPL terms steadily pushed the open source side of the audience toward competitors with permissive licenses. The switch to MIT began on 13 May 2016, by which point the paid model had already lost the argument.
~ the notice ~
Nicholus gave six numbered reasons and they are worth reading in order, because only two of them are about code. He no longer had any use for an enterprise-class upload library in his own work, and he said plainly that he lacked both the motivation and the free time for a project at that scale. The codebase had already languished for a while before any of this. The first incarnation was almost nine years old and the last major rewrite was five, an eternity in frontend years, and bringing it current was not realistic. There was not enough momentum left to attract anyone willing to maintain it.
The fourth reason is the one people quoted. He wrote that he had grown tired of continuously defending his inactivity against trolls on Twitter and in the issue tracker, that it was draining, and that a small but vocal group expected to impose their goals on a project they had contributed nothing to and were not willing to maintain themselves. Then he locked the issue, noting that he was not soliciting input and had opened it only for transparency. The archived homepage from August 2018 shows this was not sudden: three months before the notice, the front page of fineuploader.com carried the line "Looking for a new maintainer. Please inquire within." The last commit landed on 19 November and every repository in the organization went read-only.
~ what the domain sells now ~
fineuploader.com still returns a working page today, still under the title "Home - Fine Uploader", running a WordPress install stamped with a version number from this year. Read past the title and it is not the project. The navigation offers "Top 10 Fast Payout Casinos Canada", the body text about expert insights has Irish casino links spliced into the middle of a sentence, and the footer sends visitors to a row of domains selling counterfeit banknotes and firearms. Someone bought an expired domain with eight years of developer inbound links and is renting the reputation out.
The code is fine. It sits archived on GitHub exactly as he left it, MIT licensed, forkable by anyone, with the shutdown notice as the first line of the README. The library outlived its own website, and what is standing on the website's grave is worse than nothing.
~ leave a rose ~
an anonymous tribute. one rose per visitor per day.
@}-->-- ... roses left here
~ leave a wreath ~
a rose fades by morning. a wreath stays on this grave for good, with your name on it.
from $1, paid once through stripe. it keeps the graveyard running: the hosting and the nightly digging. adopt it and the headstone reads "maintained in memory by" you. the groundskeeper plants new wreaths at the next tending, usually within a day.
» one email a week: new graves and the anniversaries of the dead. subscribe
other utilities: DigiNotar, iMacros, Microsoft Office Compatibility Pack, Windows on Windows
also died in 2015-2019: もっとTV, MUZU.TV, Instantbird
~ leave a note ~
visitors before you have left these graveside notes. anonymous welcome.