Observer/pubsub demo