:date: 2018-03-01
=======================
Thursday, March 1, 2018
=======================
Don't rely on Facebook
======================
I wanted to see a friend on Facebook. But they don't let me. They
logged me out "to help make Facebook more secure" and entered the
"Security check" procedure which says that a code was sent to my phone
number and that I should please enter that code in their web form when
it has arrived. Only that this code doesn't arrive.
So I clicked on their link `I'm having trouble with this step
`__ which explains me
"Why do I need to confirm my mobile phone number to get back into my
account?" I knew all this and agreed to it, I did confirm my phone
number months ago and everything was ok.
I guess that they are having a temporary technical problem and that
the security check will work as expected after some time. But this is
not the first time within a few months that got locked out from
Facebook unexpectedly and without any visible reason.
Tonis working like an artist
============================
As an employer and team manager I am still at my beginnings,
discovering questions like *How to motivate your employees?* or *How
to turn their energy into value for the company in an efficient but
sustainable way?*
Long before Tonis found us, I wrote on our company website: "We
believe that writing good software is an *art*, and that software
developers should work and get paid like *artists*."
And indeed. There are days when Tonis has more urgent things to do
than working on Lino. For example giving an interview. Here you can
see him with his fiancée Siiri and their daughter Nora in a three
minutes portrait recorded by DelfiTV for the EV100 festivities:
.. raw:: html
(`Siiri Kumari ja Tonis Piip: Eesti-Ameerika segapaar, kes kasvatavad
peaministri järeltulijat
`_)
Nice to watch even without knowing Estonian.
Filtering notifications
=======================
Mathieu gave feedback ticket :ticket:`2333` and confiirmed my
suggestion. So the individual choices of
:class:`lino.modlib.notify.MessageTypes` get a new attribute
`required_roles`, and :meth:`emit_message
` checks check these against
every candidate recipient's `user_type.role`. This was trivial to
implement and is a beautiful confirmation for Lino's role-based
permission system. Great!
It's not finished, though. We now must now reorganize things a bit
because assigning the required roles to the message types is now of
course more complex. Every plugin can potentially define custom
message types, and applications can add custom requirements to
existing message types. That's for tomorrow...