I think I've discovered a reasonable explanation why the current transaction fees are perceived by some of us here as too high.
We are generally BTS holders and the reason we hold our BTS is because we feel they are actually worth much more than their current market value.
So we perceive spending 20 BTS (and now even 40 BTS) as a significant expense because we take into account the expected future value of BTS.
In other words, in the not-so-far future 40 BTS might be worth much more in terms of fiat than it is now so it feels very expensive. It feels like the we are forced to sacrifice part of our core investment just to make a transaction.
But a non BTS-holder won't necessarily feel this way.
Does it make sense?
EDIT: So my point is that we need to differentiate between the point of view of BTS holders and BTS users.
We, as BTS holders, are likely to be biased because we value our BTS much higher than the outside world.
For an outsider $0.20 might be no big deal but for an insider 40 BTS is a big deal (especially if you are not a whale and every 40 BTS spent now is perceived by you as having e.g. 0.1% of your investment gone).
So let's make this pricing decision rationally, i.e. by doing a market research among people who have never heard of BTS. Because this is the actual pool of our future users.
I think the fear of rising fees due to rising BTS value over time is just part of the problem. It seems the bigger issue is the reality that some demographics are simply going to have lower average transaction sizes. With a flat fee that means they will be charged higher rates to move funds. That's too arbitrary, and it means we'll lose some users that would have been profitable for the network, even if they may not have been as profitable as others. And we'll lose some businesses whose model depends on a lower than average transaction amount. Do we really want to lose some users, let alone businesses that would otherwise build on top of Bitshares? Aren't we're trying to achieve network effect?
So what's the answer? We just need to use a percentage-based fee. This way the fee is automatically dynamic and we don't have to keep changing it. I think we should seriously consider that. Of course, we'd have to set a minimum fee to discourage spam. And we should probably have a maximum fee too. I think these parameters can be set at levels that would be sensitive to the different demographics, but without substantially changing the overall income to the network or the referrer/registrar. Personally I don't see any reason why we shouldn't set the minimum as low as possible, just low enough to ensure the network doesn't get spammed and doesn't lose money on the lower end transfers.
As for stealth transfers, we should definitely charge more (these may have to be a flat fee?). And we should charge more for trades. Although fees for setting and canceling orders should be set just low enough to prevent spam. And to encourage liquidity providers, a maker/taker pricing model would be sensible.