I disagree. I think what would make this easier would be if there were a pair of routines to convert between user types and the two flags. I'm guessing that these would look something like this:

```
def compose_user_type(is_editor, is_admin):
    if is_admin: return 'admin'
    if is_editor: return 'editor'
    return 'observer'

def decompose_user_type(user_type):
    is_admin = user_type == 'admin'
    is_editor = user_type != 'observer'
    return is_admin, is_editor
```
(Although I'm not entirely sure since, as you say, the logic that you've currently got for that is a bit obfuscated.)