Forum for discussion of mid, final term and final project

Some more questions on COBrA

Some more questions on COBrA

by ORLANDO LEOMBRUNI -
Number of replies: 4

Hi, I have some more questions regarding the final term project.

1) I've assigned a set price for both single access to a content and premium subscriptions. What happens if an user pays more than the requested price? Should we refund him/her the difference?

2) Does the Catalog retain some money for its services? I.e. if payments occur every V views, the Catalog has to pay V*price to the author or can it retain a portion of the profits?

3) How are profits from the premium subscriptions redistributed to authors? A possible fair way that I've thought is to keep "single access" balance and "subscriptions" balance separated, and when an author is paid for reaching V (single-access) views it also gets paid (1/N)th of the subscription balance (where N is the total number of contents stored in the Catalog). In this way, contents that are viewed more often are also rewarded subscription money more often.

In reply to ORLANDO LEOMBRUNI

Re: Some more questions on COBrA

by ANDREA LISI -
Ciao Orlando, I can give you an advice (if is not too late) as I see it:


1)  For sake of simplicity, I think you can forbid transactions with more value embedded and accepts only transactions with the correct value inserted. Also because refund will cost gas to the user.

2) As far as I understood, the catalog (and so its creator) doens't gain anything from deploying the contract. All the balance has to be divided among the authors during the shut-down of the catalog, as stated in the text (from the office hours I understood this is justified to avoid malicious catalog deployers).
I think the author payment is just a variable that you can define as you want: if an auhtor is payed 100 every 5 views, but getting a content costs 200, the remaining money can last in the Catalog's balance until the shut-down.

3) I don't know how to correctly respond to this but for simplicity I don't have considered two different piles of money to redistribute. Just the current balance.

In reply to ANDREA LISI

Re: Some more questions on COBrA

by DAMIANO DI FRANCESCO MAESA -

The entire economics behind the catalog are somehow questionable, are left as simple as possible not to overcomplicate the assignment. This is why, for example, we decided "For the sake of simplicity, we do not consider Premium Account content fruitions in the view count." Simply because it would have required more complex payment logics. Of course this also means that the payouts are not necessary fair. This said it is nice to see that some student have decided to try to make it fairer anyway.

1) Keep it simple. Either refuse the transaction or accept it anyway and store the value, it's the customers fault if they decide to pay more...

2) The catalog owner CAN NOT be rewarded in any way for its services of deployment (and shutdown) of the catalog contract, and SHOULD NOT have any more power on such contract than any other user. So the extra balance needs to be redistributed upon shutdown (as fair as possible). I agree with the comment form Andrea Lisi on this one.

3) Again, keep it simple (rather than fair). We chose to ignore premium views for this reason, so just ignore them. This said if you want to make it fairer, of course, this is appreciated (and will be noted and discussed at the exam) but try not to complicate it to the point that it cripples everything else.

In reply to DAMIANO DI FRANCESCO MAESA

Re: Some more questions on COBrA

by ORLANDO LEOMBRUNI -

Thanks to both of you for your helpful answers!

Yes, I understood that the primary focus was to keep things simple, but where it was possible (and easy to do anyway) I preferred to make it a little fairer (though clearly not optimal from a business point of view... I think).

For example, I've already implemented both the refunds when the customers pay more than the set price and the "fairer" redistribution of subscription money, should I take them out of the final term or can I leave it this way?