alonmower
The TLDR of his theory is that life originated in alkaline hydrothermal vents on the ocean floor, where natural energy gradients could have driven primitive metabolic reactions before the development of DNA.
Book goes into a lot of layperson-accessible detail.
I think it really depends. I agree that the prototypical pop something up in your face that forces you to interact with it and blocks your usage of the product make your product harder to use.
But stateful experiences don't inherently suffer from this problem. Checklists, embedded cards, context specific empty states, e.g. can all make products easier to use, and don't get in users' ways. And what someone should be shown should look different if they're in an empty product they need to setup, vs an experienced user that's very familiar with the product. Not treating these distinctly means you're compromising the experience for someone.
I do agree that keeping track of journey state in analytics tools, and getting that data to go to market teams are crucial too, but they won't make your product easier to use.
A playbook for building better onboarding
Most React components offered by products aren’t usable
Figma's product growth platform, the responsive content system
How to open source code from a private monorepo
How to open source code from a private monorepo
Building a modern gRPC-powered microservice using Node.js, TypeScript, & Connect
State machines for in-product user journeys
How to build a modern gRPC-powered microservice with Node, TypeScript, & Connect
Why persisting incremental user states is hard
How to persist incremental user state with client-server state machines
Interview: A deep dive into how Airtable built their new onboarding
I wrote up some longer thoughts on why their approach breaks down https://blog.dopt.com/dopt-vs-other-tools
Dopt: Tools to design/run user state machines with an in-product headless CMS
Building embedded tips into your product
Why the existing product onboarding tools don't cut it
We do have an interactive example gallery that we're building out for the reason you call out, would love any feedback you have on them: https://www.dopt.com/examples
Project Description: We’re building a tool to design and run user state machines (we call these ‘flows’). It’s comprised of a shared canvas for modeling and versioning user flows, SDKs for instantiating those flows per user, and a platform to persist user flow state that handles migrating users between versions on the fly.
The SDK gives you hooks to manage state for each node (we call these ‘blocks’) and Dopt handles any side effects, transitioning all dependent blocks for you. Reactivity is also built in: those side effects on the user state graph, along with any others (e.g. updates to user properties or API invocations) are propagated in real time to the SDK.
We started Dopt because we’ve seen teams struggle when trying to build experiences that are contextual to what a user/workspace has done (e.g. product onboarding and education flows). Doing so requires modeling user state graphs in the DB, migrating the schema/data across versions of the graph, tying in product state to state outside of the product, and lots of back and forth with product and design.
What do you want to be tested: We're looking for more folks building with Dopt during our private beta. We're giving the product away for free during this period and cutting discounts for folks that build with us now once we go GA.
Contact: [email protected] (or you can sign up for the beta on the website and reply letting us know you found us on Hacker News to skip the line)
Dopt – State machines and their influence on our SDKs
They do have lots of cash though, so you can probably negotiate strong salaries.