All of the examples provided have been proven to not be effective in the real world. The first popup with the wall of text - most users will close out of within a few seconds. Constantly floating tool tips - users close those out and try to learn on their own.
The problem with onboarding that every startup faces is that it's an afterthought. They build the product and realize that users just don't get it when they're dropped in. Then they hack little tooltips and tutorials on top of the product to teach people how to use it.
Onboarding needs to be constantly thought about in the brainstorming/wireframing stage, not when the product is already built.
This is exactly how it is unfortunately, been there several times myself. Testing early on with real users is really important, it's always a great surprise how blind you've become during the development and can't just see the problems until it's too late. Hacking together little tooltips does not fix anything, trendy slides with a skip button = skip, wall of text with a close button = close. Many games does onboarding very well, learn while you do meaningful actions is the best way but this also really hard to do and often seen as unnecessary step which just takes time from developing "real" features. As you said onboarding has to be in the core of the product and it should hold users hand as long as possible, nothing is more horrible than a user who feels stupid because he can not understand what to do next.
$99. You're joking right?
Better than that: Intro.js
Thanks for submitting this Ty!
I agree, there's very little on how best on onboard users in a clear, effective manner.