Sort:  

We could do it for less if we knew we were going to get paid on a time-worked basis rather than a performance basis, because then we wouldn't have any real risk. But whenever we take on the risk of the task taking longer than we estimated and we're getting paid the same fixed amount and even the possible risk of non-payment because of unexpected challenges, we have to charge more to offset that risk.

After thinking about it more, combined with paying close attention to the reaction of the community (seemingly majority positive), I'd suggest keeping the community informed of progress throughout the procedure, if you're given the go-ahead.

Some seem to be hyped up as if the knight in shining armor has come to save the day. 2-3 months of silence is deafening after the warm and fuzzy feelings wear off. You seem to be quite confident your reputation within this community wouldn't be ruined over this, which is probably a good sign. These folks have been riding the rollercoaster for far too long though; growing attached to new ideas, getting excited, Santa's coming! Then Santa doesn't show up, and the store runs out of pitchforks within a day. I think it would be wise to take the steps required to be able to keep that sort of reaction at bay. If there's a problem, they should know about it, instead of finding out about it, the hard way.

Sounds like a good idea. The best way I can think of to do that would be to report major milestones like implementation of the generic mechanism for moving state data out of memory to disk, then later the memory savings and performance test results as we begin the processing of testing movements of different types of data to disk storage.