September 16, 2016
Meeting with edX chief scientist: @Piotr Mitros (Deactivated)
Using UUID is typically not a good technique. Leads to a lot of bugs. Can we use deterministic unique IDs instead?
A SHA/MD5 hash of unique information (e.g. generating machine IP, time stamp, name, and possibly content).
Something semantic (e.g. notification-18.72.1.45-email-pmitros-98451)
Handling aggregation
You have __ new messages
"Due this week" email – summarize and combine all deadlines into something nice
Should not couple channels and delivery
We want to build XBlocks without knowing what (future) delivery channels the deployment may support
We want to be able to add channels to an edX deploy without breaking existing XBlocks
xBlock configuration
finding all types of notifications in the xBlock
the user policy UI can aggregate all the notification types from all xBlocks in the course - so users can configure xBlock-specific notifications
Websockets have limited support in django (as of when last looked)
Look at ejabberd for a messaging layer
Erlang high speed notification framework. Started as a chat system, but ended up working in many other places due to ridiculous scaling