The default symbol name when assigning data in a new DataSHIELD session is "D".
If something goes wrong during assignment, the log in still occurs. Although the user gets an error they might not notice. They then try and do an operation like ds.asNumeric("D$cens", "CENS.num") but receive the error:
Error in D$cens : object of type 'closure' is not subsettable\n"
This causes confusion, and it happens because there is a function D().
Perhaps we should consider a different default name? Definitely not T or F. Maybe R? or DS?
I appreciate this produces a lot of work in documentation where "D" is hardcoded in already, so we might not want to do it.