Re: [tvcontrol-api] Management of underlying resources

I agree that an API which encourages apps to retry when something 
fails is not a good design choice.

This is an issue that caused much debate in other organisations I've 
worked with.  There usually seems to end up being two schools of 
thought:

1. Have resources be explicitly locked and unlocked.  This causes 
problems when another app locks a resource and doesn't release it, but
 does make the expected behaviour clear, as you mention.
2. Take the approach that the last page/app to request a resource 
pre-empts others, because that's probably the page that the user is 
currently interacting with.  While it solves the problem of apps not 
unlocking a resource (i.e. in step 3, the call to 
`setCurrentChannel()` would implicitly set the source as well), it can
 lead to apps having resources taken away from them and having to 
handle that gracefully.

I don't think either approach is perfect, and there are valid reasons 
for choosing both approaches.  I'm not sure there is a "right" answer 
to this - it's more about choosing the one that fits best with the 
philosophy of the other Web APIs.  

-- 
GitHub Notification of comment by stevem-tw
Please view or discuss this issue at 
https://github.com/w3c/tvcontrol-api/issues/3#issuecomment-244337953 
using your GitHub account

Received on Friday, 2 September 2016 10:14:54 UTC