TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Ask HN: Remember if a user has completed a first-use feature tour?

12 pointsby aenalmost 12 years ago
Example: http:&#x2F;&#x2F;www.ebizroi.com&#x2F;Portals&#x2F;176237&#x2F;images&#x2F;new-facebook-share-message.jpg<p>By cookie? But he&#x27;ll be prompted to do it again when he logs in from another device. Database? Overkill? What&#x27;s a good design? Caveats? Any other ideas?

4 comments

jufemaizalmost 12 years ago
Alternative option for DB is to not remember each feature tour completion, but rather have feature tour table and store last feature tour completion and just show the ones since then?
onion2kalmost 12 years ago
Think of the value as a user preference along the lines of &quot;Do you want to see the product tour? [Yes|No]&quot;. How would you store any similar user-set preference?<p>In Usable Requirements (<a href="http:&#x2F;&#x2F;www.usablehq.com" rel="nofollow">http:&#x2F;&#x2F;www.usablehq.com</a>) we use an untracked JSON object as part of the user document for preferences (this is in MongoDB). This means we don&#x27;t have to keep a schema up to date - the front end can essentially put anything in that object (subject to some validation obviously). Consequently the front end code has to be tremendously defensive as values may or may not be there, but that&#x27;s a good thing anyway.
davismwflalmost 12 years ago
My question would be, user or visitor? If user than I equal that to a logged in or known person and therefore I would store it in a cache of some sort that is also persisted for those times you have to reload.<p>If for a visitor, meaning you have no clue who they are then I&#x27;d store a cookie, and give them the option to skip out of the tour if they have already seen it.
评论 #5919088 未加载
gumballheadalmost 12 years ago
redis (with persistence) or a serialized user config field in a database. It&#x27;s not overkill, because you&#x27;ll likely wind up needing to store more user-specifc data in the future.