On point 2: socket programming hasn't caught up to the same level of performance as Flash had. Try sending or receiving gigabits per second with WebSockets. In my own tests last year on reasonably modern hardware with a 10Gbps Intel NIC, Chrome was the worst performer (around 3Gbps before the CPU was completely saturated), and Edge was the best at around 5.5Gbps. I didn't compare with Flash last year to be fair, but historically it was much better. A native app on the same hardware was generating 10Gbps over the network at <20% CPU usage.