This is an old and subjectively funny project I've worked on for quite a lot of time but decided to put on hold for the moment.
Here is a document about it so it wasn't entirely made in vain.
The project was done in French so expect some French language here.
When crowdfunding started to be a thing I was interested in the ways a variable budget could have an impact on a project.
For instance, I imagined someone making a project about a lizard and asking for funds on a crowdfunding site with a very low objective and a long ladder of many additional steps above the objective.
If the project received a total of :
- 10$ it would just be a haiku about a lizard
- 100$ it would be a song about the lizard
- 1000$ a movie
- ...etc up to an actual lizard-themed amusement park for improbably high values.
But more specifically I was interested in how a user could have an impact on the final project by choosing a reward, for instance choosing a specific item that would appear at some point as a prop in a movie (and that would be a sufficient reward in itself, no need to send goodies).
A contributor-generated movie
I also thought it was a very interesting exercise as a creator to make a movie only using contributor suggestions.
For instance if people only contributed by giving budget specifically for fruits and explosives, it would surely not make the same movie than extras and medieval costumes.
So the scenario had to be written afterwards.
I discussed this project a lot with my friend Florent and started to make a list of all the possible rewards.
One of the problems we encountered soon was that even for a small movie, most things (camera, actors, lights, computers, etc) cost a lot of money and it didn't feel right to ask for that much money as single rewards.
One solution would have been to use several rewards as a common pool for different aspects of the movie. We were initially going to do it that way but at some point I changed my mind about it, mainly because I wanted each contribution to be clearly identifiable on screen "i.e. give 5$ to have a banana appear somewhere in the movie" rather than a vague "give 5$ for the use of computers, whatever that means".
We were also considering many more "abstract" values to appear in the rewards (give money to increase the number of pixels, colors, etc). But I choose to remove all those things because I wanted to keep it pragmatic.
At the end I decided to make a list of things we already own as a starting point (some basic hardware, ourselves as potential unprofessional actors, etc) that didn't need anybody to pay for. Apart from this starter, everything else that we would use in the movie would have to come from the funding.
Technical details
We wrote a big table with hundreds of potential rewards, including props, make-up, salaries for various per-hour jobs (acting, post-process work, animal training, etc).
I tried to be as precise as possible about the price so the money for the reward would exactly be what would typically cost to buy/pay the item/work.
Most of the time I had to check the prices on some online supermarket site.
Then we had to choose a crowdfunding site. At that point Kickstarter was not available in France and some friends were developing their own "free" crowdfunding system so we were initially planning to use it but for some reason it didn't make it.
Later Kickstarter was available in France and I started to manually enter each reward. That was taking an awfully long time especially because it's a somehow modern website with slow animated menus and slightly buggy too, so I had to find another way.
I made a software to automate my mouse and keyboard in order to automatically read the table and fill the Kickstarter forms.
You can see a small demo of this thing here (with french comments) :
By the way that's an interesting case of an algorithm that has to be sequentially run (move the mouse at that point, wait, check the color of a given pixel, click, etc) but not at runtime-speed (the software has to wait for some given time or some input between each "instruction").
In one hand it's very convenient to see the "meta" process line by line in a traditional imperative fashion, but on the other hand there has to be some underlying logic to handle the delays and values given to the instructions (where to move the mouse, what to type etc).
It might be similar to what is sometimes called "co-routine" in other languages (this is java here and I can't "interrupt" the program) but here I choose to create an array of "Action" objects with possible outcomes specified with arbitrary strings, fill it entirely when the program starts then pop the actions out one by one (I could do this because I never had to dynamically change the content or order of the actions).
That is one typical case of a problem that I encounter now and then and I'd be interested to hear more about other possible solutions to it.
Also I'm always surprised as how inconvenient it is to automate the use of special keys with ambiguous enumerator names or combinations of keys (shift, ctrl, etc).
Running the script
So, one day I started the software and sat elsewhere while it was filling the Kickstarter page.
I came back a few hours later and noticed a very strange behaviour. Also the website didn't seem to complain and let the new rewards be added, it seemed that the number of rewards wasn't getting any bigger ; new rewards were just replacing old ones.
I came to the conclusion that the number of different rewards was limited to 100, which kinda breaks the whole project, although I didn't find anything clear about it.
What now?
What are my options?
I could still try to do it based on a limited set of possible items.
I've been also thinking about allowing users to just pick anything in some supermarket website and send us the reference along with the corresponding money for it. I'm not sure how to technically do this in an easy way though...
As I said in the beginning I've decided to stop working on it (temporarily or forever?).
I still like this project a lot (by "project" I mean the whole process, not necessarily the potential final movie)...
But I also know that nobody cares about these weird things that I do and I don't actually expect anybody to pay for any reward...
Additionally Florent and me are both involved in many other time-consuming things and I'm afraid neither of us has currently enough time to handle this the right way.
Also what would I do with all those fruits and medieval costumes once the movie is over ?