I was using the tab-state as a sort of short-term working memory and I don't think it was doing me any favours, particularly in terms of focus.
Now when I'm working on a project, I keep a list of relevant URLs in a text file (i.e. bookmarks but checked into source control).
I also use two browser windows, a regular one for "stateful" browsing, and a private-mode one for "stateless" browsing. Quick queries and exploratory research happens in the "stateless" session, with the understanding that I can close any of these tabs (or nuke the whole session) at any time without losing anything important. If I do come across something important, it gets noted down elsewhere.
and a session for my own stuff / firefox with --profile with custom proxy settings to tunnel via a socks around customers corp mitm proxy
That being said, I spent my free computer time working on a server runtime(nodejs) + extension kombo (big thanks to talented folks helping with this project!) which can sync your tabs based on the context you are in - lets say /work/customer-foo/dev/task1234 would index all your tabs for task 1234, but that path is actually linked to bitmap indexes, /work/customer-foo would show you all links for customer foo, if you'd create /work/dev it would show you all tabs that are indexes for work AND dev
anyhow sorry for spam, good to see people are struggling with the same UX problems I've been :)
Its meant to sync your browser tabs (chrome/firefox) to a self-hosted virtual "directory" tree powered by lmdb and roaring bitmap indexes. In retrospect, we should have used rxdb or pouchdb from day one (keeping the bitmaps) but eventually we get there.
Workflow
- Create a new context path based on the task you are working on(universe://travel/2024/03/barcelona for example)
- Depending on your configuration, your browser stores your current tabs and closes them, you then start your airbnb journey adding new tabs to the context path
- Your significant other may even open the same context and work on it with you(as in, add additional ones, if auto-sync is enabled close yours etc)
Server component is under a rewrite atm, my amateurism at play! You can do stupid things with a 2 user user-base (like a full api + backend + module rewrite started simultaneously, breaking existing functionality beyond repair) but with the new tools available these days (cursor, claude 3.7), the most important limiting factor for an idea becomes .. well, time!