Segment has totally nailed it. It just doesn't make sense to do this yourself anymore.
Here's some of the things I used to have to build for clients before Segment.
- Native, rich event collection libraries for Web, iOS, and Android.
- Asynchronous tracking that doesn't slow down page loads, is gentle on mobile links.
- No crashes. Ever. This gets its own bullet.
- Reliable & low-latency event collection servers. Cache controls, CORS. Dealing with spoofing, bot nets.
- Sensible schema for warehousing, synchronization/ETL.
Now I just set up Segment.