Learning Event-Driven Programming Best Practices From Web Browsers