The observer pattern ready for the browser